@charset "UTF-8";
/****************************************************
 * Stylesheet
 *
 * 1.リセット
 * 2.共通設定
 * 3.レイアウト設定
 * 4.テンプレートスタイル
 * 5.コンテンツスタイル
 * 6.装飾
 * 7.印刷用調整
 * 
 ****************************************************/
/****************************************************
 * 1.リセット
 ****************************************************/
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  color: #000;
  background: #FFF;
  line-height: 1.5;
}

*, *::before, *::after {
  box-sizing: border-box;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, input, textarea, p, blockquote, th, td, figure {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img, svg {
  border: 0;
}

address, caption, cite, dfn, em, strong, th {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

abbr {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select, button {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  background: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
}

input[type=submit], input[type=button], input[type=reset] {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
}

textarea {
  resize: vertical;
}

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

img, svg {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

a, a:focus, a:hover {
  text-decoration: none;
  color: inherit;
  outline: none;
}

/****************************************************
 * 2.共通
 ****************************************************/
html {
  background-color: transparent;
  background-image: none;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-size: 10px;
  font-weight: 400;
  font-style: normal;
  color: #363636;
  scroll-behavior: smooth;
  scroll-padding-top: 8.8rem;
}
@media only screen and (max-width: 1099px) {
  html {
    font-size: 9px;
  }
}
@media only screen and (max-width: 900px) {
  html {
    scroll-padding-top: 6.4rem;
  }
}
@media only screen and (max-width: 780px) {
  html {
    height: 100%;
    font-size: 10px;
  }
}

body {
  font-size: 1.6rem;
  background-color: #FCFCFC;
}
@media only screen and (max-width: 780px) {
  body {
    font-size: 1.5rem;
    -webkit-text-size-adjust: 100%;
  }
}

a {
  color: #363636;
}
a[href^="tel:"] {
  cursor: default;
}
a[href^="tel:"]:hover {
  text-decoration: none;
}

@media only screen and (max-width: 900px) {
  .pc {
    display: none !important;
  }
}

@media only screen and (max-width: 1279px) {
  .pc2 {
    display: none !important;
  }
}

@media only screen and (max-width: 780px) {
  .pc_tb {
    display: none !important;
  }
}

@media only screen and (min-width: 901px) {
  .tb_sp {
    display: none !important;
  }
}

@media only screen and (min-width: 781px) {
  .sp {
    display: none !important;
  }
}

.inner {
  width: 90%;
  max-width: 1080px;
  margin: 0 auto;
}

.btn01 {
  padding: 1em;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: center;
  color: #ffffff !important;
  background-color: #B79B58;
  background-image: url("../img/icon_arrow01.png");
  background-repeat: no-repeat;
  background-position: calc(100% - 1em) center;
  display: inline-block;
}
@media only screen and (min-width: 781px) {
  .btn01 {
    width: 29.5rem;
    background-size: 2.4rem auto;
    transition: background-color 0.3s;
  }
  .btn01:hover {
    background-color: #A27429;
  }
}
@media only screen and (max-width: 780px) {
  .btn01 {
    width: 27.6rem;
    background-size: 2.25rem auto;
  }
}

.midashi01 {
  margin-bottom: 3em;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .midashi01 {
    margin-bottom: 2em;
    font-size: 1.4rem;
  }
}
.midashi01 span {
  margin-right: 0.5em;
  font-size: 2em;
  letter-spacing: 0.05em;
  font-family: "Poppins", sans-serif;
  text-transform: uppercase;
  color: #B79B58;
  display: inline-block;
  vertical-align: -0.15em;
}
@media only screen and (max-width: 780px) {
  .midashi01 span {
    font-size: 2.14em;
  }
}
.midashi01.l2 span {
  margin: 0;
  display: block;
}
.midashi01.center {
  text-align: center;
}
.midashi01.center span {
  margin: 0;
  display: block;
}

/*cta*/
.cta_block {
  padding: 5.6rem 0;
  background-image: url("../img/cta_bg.jpg");
  background-size: cover;
  background-position: center center;
}
@media only screen and (max-width: 780px) {
  .cta_block {
    padding: 3rem 0;
  }
}
.cta_block .inner {
  padding: 4rem 2rem;
  text-align: center;
  background-color: #ffffff;
}
@media only screen and (max-width: 780px) {
  .cta_block .inner {
    padding: 2rem;
  }
}
.cta_block .inner h2 {
  margin-bottom: 0.77em;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 780px) {
  .cta_block .inner h2 {
    font-size: 1.8rem;
  }
}
.cta_block .inner h2 span {
  font-family: "Poppins", sans-serif;
  font-size: 1.36em;
  letter-spacing: 0.05em;
  color: #B79B58;
  display: block;
}
.cta_block .inner p {
  margin-bottom: 2em;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .cta_block .inner p {
    font-size: 1.4rem;
    text-align: left;
  }
}
@media only screen and (min-width: 781px) {
  .cta_block .inner .btn > a {
    width: 50%;
    height: 11.2rem;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
@media only screen and (max-width: 780px) {
  .cta_block .inner .btn > a {
    padding: 2rem 1rem;
    display: block;
  }
}
.cta_block .inner .btn .mail {
  font-size: 1.5rem;
  font-weight: 500;
  color: #ffffff;
  background-color: #B79B58;
}
@media only screen and (min-width: 781px) {
  .cta_block .inner .btn .mail {
    transition: background-color 0.3s;
  }
  .cta_block .inner .btn .mail:hover {
    background-color: #A27429;
  }
}
.cta_block .inner .btn .mail > span:before {
  width: 4rem;
  height: 4rem;
  margin-right: 0.5em;
  content: "";
  background-image: url("../img/icon_mail01.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.8em;
}
@media only screen and (max-width: 780px) {
  .cta_block .inner .btn .mail > span:before {
    width: 2.5rem;
    height: 2.5rem;
    vertical-align: -0.45em;
  }
}
.cta_block .inner .btn .mail > span:after {
  width: 3rem;
  height: 3rem;
  margin-left: 0.5em;
  content: "";
  background-image: url("../img/icon_arrow01.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.6em;
}
@media only screen and (max-width: 780px) {
  .cta_block .inner .btn .mail > span:after {
    width: 2.5rem;
    height: 2.5rem;
    vertical-align: -0.45em;
  }
}

/* フェードイン */
.fadeIn {
  opacity: 0;
  transition: opacity 0.9s ease-out 0.1s;
}
.fadeIn.view {
  opacity: 1;
}

/*フォームベース*/
.wpcf7-text, .input-text {
  width: 100%;
  padding: 1.14em;
  background-color: #F8F8F8;
}
.wpcf7-text::-moz-placeholder, .input-text::-moz-placeholder {
  color: #C1C1C1;
}
.wpcf7-text::placeholder, .input-text::placeholder {
  color: #C1C1C1;
}

.wpcf7-textarea, .input-textarea {
  width: 100%;
  height: 16em;
  padding: 1.14em;
  background-color: #F8F8F8;
}
.wpcf7-textarea::-moz-placeholder, .input-textarea::-moz-placeholder {
  color: #C1C1C1;
}
.wpcf7-textarea::placeholder, .input-textarea::placeholder {
  color: #C1C1C1;
}

.wpcf7-select, .input-select {
  width: 100%;
  padding: 1.14em;
  background-color: #F8F8F8;
  background-image: url("../img/form_select_icon.png");
  background-repeat: no-repeat;
  background-position: calc(100% - 1rem) center;
  background-size: 2rem auto;
  border-radius: 0.4rem;
}

.wpcf7-radio, .radio_group {
  margin-bottom: -1em;
  display: block;
  letter-spacing: -0.4em;
}
.wpcf7-radio > *, .radio_group > * {
  display: inline-block;
  letter-spacing: normal;
}
.wpcf7-radio > *, .radio_group > * {
  margin-right: 1em !important;
  margin-bottom: 1em !important;
}
.wpcf7-radio label input, .radio_group label input {
  visibility: hidden;
  position: absolute;
  left: -9999999px;
}
.wpcf7-radio label input:checked + span:after, .radio_group label input:checked + span:after {
  content: "";
}
.wpcf7-radio label input + span, .radio_group label input + span {
  padding-left: 4rem;
  display: inline-block;
  position: relative;
}
.wpcf7-radio label input + span:before, .radio_group label input + span:before {
  width: 2.4rem;
  height: 2.4rem;
  content: "";
  background-color: #ffffff;
  border: solid 1px #C1C1C1;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
}
.wpcf7-radio label input + span:after, .radio_group label input + span:after {
  width: 1.4rem;
  height: 1.4rem;
  content: none;
  background-color: #000000;
  border-radius: 50%;
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
}

.wpcf7-checkbox, .wpcf7-acceptance, .check_group {
  margin-bottom: -1em;
  display: block;
  letter-spacing: -0.4em;
}
.wpcf7-checkbox > *, .wpcf7-acceptance > *, .check_group > * {
  display: inline-block;
  letter-spacing: normal;
}
.wpcf7-checkbox > *, .wpcf7-acceptance > *, .check_group > * {
  margin-right: 1em !important;
  margin-bottom: 1em !important;
}
.wpcf7-checkbox label input, .wpcf7-acceptance label input, .check_group label input {
  visibility: hidden;
  position: absolute;
  left: -9999999px;
}
.wpcf7-checkbox label input:checked + span:after, .wpcf7-acceptance label input:checked + span:after, .check_group label input:checked + span:after {
  content: "";
}
.wpcf7-checkbox label input + span, .wpcf7-acceptance label input + span, .check_group label input + span {
  padding-left: 4rem;
  display: inline-block;
  position: relative;
}
.wpcf7-checkbox label input + span:before, .wpcf7-acceptance label input + span:before, .check_group label input + span:before {
  width: 2.4rem;
  height: 2.4rem;
  content: "";
  background-color: #ffffff;
  border: solid 1px #C1C1C1;
  position: absolute;
  top: 0;
  left: 0;
}
.wpcf7-checkbox label input + span:after, .wpcf7-acceptance label input + span:after, .check_group label input + span:after {
  width: 1.6rem;
  height: 1rem;
  content: none;
  border-left: solid 0.2rem #000000;
  border-bottom: solid 0.2rem #000000;
  position: absolute;
  top: 0.4rem;
  left: 0.4rem;
  transform: rotate(-45deg);
}

.wpcf7-spinner {
  display: none !important;
}

/*ページネーション*/
.pagination {
  text-align: center;
  letter-spacing: -0.4em;
}
.pagination > * {
  display: inline-block;
  letter-spacing: normal;
}
.pagination > * {
  width: 4.3rem;
  height: 4.3rem;
  margin: 0 0.4rem;
  font-family: "Poppins", sans-serif;
  line-height: 4.3rem;
  text-align: center;
  color: #ffffff !important;
  background-color: #C1C1C1;
  vertical-align: top;
}
@media only screen and (max-width: 780px) {
  .pagination > * {
    width: 3.6rem;
    height: 3.6rem;
    margin: 0.4rem !important;
    line-height: 3.6rem;
  }
}
.pagination .current {
  color: #ffffff;
  background-color: #B79B58;
}
.pagination .dots {
  line-height: 3.2rem;
}
.pagination .prev, .pagination .next {
  background: none;
  background-image: url("../img/icon_arrow02.png");
  background-size: cover;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
}
.pagination .prev {
  margin-right: 2rem;
  transform: scaleX(-1);
}
.pagination .next {
  margin-left: 2rem;
}
.pagination a:hover {
  opacity: 0.6;
}

/*ページャー*/
.post-navigation {
  display: flex;
}
@media only screen and (min-width: 781px) {
  .post-navigation {
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (max-width: 780px) {
  .post-navigation {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 780px) {
  .post-navigation .nav-list {
    width: 100%;
    padding-top: 2rem;
    text-align: center;
    order: 3;
  }
}
.post-navigation .nav-list .btn01 {
  width: 32rem;
}
@media only screen and (max-width: 780px) {
  .post-navigation .nav-list .btn01 {
    width: 25.6rem;
  }
}
@media only screen and (max-width: 780px) {
  .post-navigation .nav-previous, .post-navigation .nav-next {
    width: 50%;
  }
}
.post-navigation .nav-previous a, .post-navigation .nav-next a {
  font-size: 1.5rem;
  font-weight: 700;
}
@media only screen and (min-width: 781px) {
  .post-navigation .nav-previous a:hover, .post-navigation .nav-next a:hover {
    color: #B79B58;
  }
}
@media only screen and (max-width: 780px) {
  .post-navigation .nav-previous a, .post-navigation .nav-next a {
    font-size: 1.3rem;
  }
}
.post-navigation .nav-previous a:before, .post-navigation .nav-previous a:after, .post-navigation .nav-next a:before, .post-navigation .nav-next a:after {
  width: 4.3rem;
  height: 4.3rem;
  background-image: url("../img/icon_arrow02.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -1em;
}
@media only screen and (max-width: 780px) {
  .post-navigation .nav-previous a:before, .post-navigation .nav-previous a:after, .post-navigation .nav-next a:before, .post-navigation .nav-next a:after {
    width: 3.6rem;
    height: 3.6rem;
  }
}
@media only screen and (max-width: 780px) {
  .post-navigation .nav-previous {
    order: 1;
  }
}
.post-navigation .nav-previous a:before {
  margin-right: 1rem;
  content: "";
  transform: scale(-1, 1);
}
@media only screen and (max-width: 780px) {
  .post-navigation .nav-next {
    text-align: right;
    order: 2;
  }
}
.post-navigation .nav-next a:after {
  margin-left: 1rem;
  content: "";
}

/* ブロックエディタ用基本CSS */
.editor-area:after {
  content: "";
  display: block;
  clear: both;
}
.editor-area > *:last-child {
  margin-bottom: 0 !important;
}
.editor-area p {
  margin-bottom: 1.5em;
}
.editor-area h3 {
  margin-bottom: 0.8em;
  padding-left: 1.2rem;
  font-size: 1.5em;
  font-weight: 700;
  border-left: solid 0.8rem #B79B58;
}
.editor-area h4 {
  margin-bottom: 0.7em;
  font-size: 1.25em;
  font-weight: 700;
}
.editor-area h5 {
  margin-bottom: 0.6em;
  font-size: 1em;
  font-weight: 700;
}
.editor-area ul, .editor-area ol {
  margin-bottom: 1.5em;
  padding-left: 1.5em;
}
.editor-area ul {
  list-style: disc;
}
.editor-area ol {
  list-style: decimal;
}
.editor-area ul li, .editor-area ol li {
  margin-bottom: 0.5em;
}
.editor-area .alignleft {
  max-width: 50%;
  float: left;
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}
.editor-area .alignright {
  max-width: 50%;
  float: right;
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}
.editor-area .aligncenter {
  margin-bottom: 1.5em;
}
.editor-area .aligncenter img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.editor-area blockquote {
  border-left: 0.25em solid #A7A7A7;
  padding-left: 1.5em;
  margin-left: 0;
  font-style: italic;
  color: #A7A7A7;
}
.editor-area table {
  width: 100%;
  margin-bottom: 1.5em;
  border-collapse: collapse;
}
.editor-area table td, .editor-area table th {
  border: 1px solid #C1C1C1;
  padding: 0.5em;
  background-color: #ffffff;
}
.editor-area table th {
  color: #ffffff;
  background-color: #B79B58;
}
.editor-area .wp-block-columns {
  display: flex;
  margin-bottom: 1.5em;
}
.editor-area .wp-block-column {
  flex-grow: 1;
  margin-left: 0.625em;
  margin-right: 0.625em;
}
.editor-area .wp-block-media-text {
  display: grid;
}
.editor-area a {
  color: #A27429;
  text-decoration: underline;
  word-break: break-all;
}
.editor-area strong, .editor-area b {
  font-weight: bold;
}
.editor-area em, .editor-area i {
  font-style: italic;
}
.editor-area .wp-block-spacer {
  clear: both;
}

/****************************************************
 * 3.レイアウト設定
 ****************************************************/
.container {
  width: 100%;
  padding-top: 8.8rem;
  overflow: hidden;
}
@media only screen and (max-width: 900px) {
  .container {
    padding-top: 6.4rem;
  }
}

/****************************************************
 * 4.テンプレートスタイル
 ****************************************************/
/*ヘッダーブロック*/
#header {
  width: 100%;
  height: 8.8rem;
  background-color: #363636;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 900px) {
  #header {
    height: 6.4rem;
  }
}
#header .logo {
  width: 30rem;
  padding-left: 2rem;
}
@media only screen and (max-width: 900px) {
  #header .logo {
    width: 20rem;
    padding-left: 1.2rem;
  }
}
#header .logo a {
  display: block;
}
@media only screen and (max-width: 900px) {
  #header .header_right .sp_menu_btn {
    width: 6.4rem;
    height: 6.4rem;
    background-image: url("../img/sp_menu_open.png");
    background-size: cover;
  }
  #header .header_right .sp_menu_btn.open {
    background-image: url("../img/sp_menu_close.png");
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right .menu {
    display: flex !important;
    align-items: center;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right .menu {
    width: 88.7%;
    height: calc(100vh - 6.4rem);
    background-color: #B79B58;
    position: absolute;
    top: 100%;
    right: 0;
    display: none;
  }
  #header .header_right .menu:after {
    width: 12.7%;
    height: 100%;
    content: "";
    background-color: #000000;
    opacity: 0.8;
    position: absolute;
    top: 0;
    right: 100%;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right .menu nav ul {
    letter-spacing: -0.4em;
  }
  #header .header_right .menu nav ul > * {
    display: inline-block;
    letter-spacing: normal;
  }
}
#header .header_right .menu nav ul li {
  font-weight: 500;
}
@media only screen and (min-width: 901px) {
  #header .header_right .menu nav ul li {
    padding: 2.4rem;
    vertical-align: middle;
    position: relative;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1099px) {
  #header .header_right .menu nav ul li {
    padding: 0 1.4rem;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right .menu nav ul li:after {
    width: 1px;
    height: 1em;
    margin-top: -0.5em;
    content: "";
    background-color: #ffffff;
    position: absolute;
    top: 50%;
    left: 100%;
    transform: skewX(-30deg);
  }
  #header .header_right .menu nav ul li:last-child:after {
    content: none;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right .menu nav ul li {
    border-bottom: solid 1px #D9C99F;
  }
}
#header .header_right .menu nav ul li a {
  color: #ffffff;
}
@media only screen and (max-width: 900px) {
  #header .header_right .menu nav ul li a {
    padding: 1.17em 1.4em;
    font-size: 1.7rem;
    display: block;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right .menu nav ul li a {
    transition: color 0.3s;
  }
  #header .header_right .menu nav ul li a:hover {
    color: #B59F6C;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right .menu .contact {
    margin-top: 4.4rem;
  }
}
#header .header_right .menu .contact a {
  font-weight: 500;
  text-align: center;
  display: block;
}
@media only screen and (min-width: 901px) {
  #header .header_right .menu .contact a {
    width: 24rem;
    height: 8.8rem;
    font-size: 1.8rem;
    line-height: 8.8rem;
    color: #ffffff;
    background-color: #B59F6C;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1099px) {
  #header .header_right .menu .contact a {
    width: 20rem;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right .menu .contact a {
    width: 28.2rem;
    height: 7.3rem;
    margin: 0 auto;
    font-size: 1.7rem;
    line-height: 7.3rem;
    letter-spacing: 0.05em;
    background-color: #ffffff;
    border-radius: 0.4rem;
    box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.16);
  }
}
#header .header_right .menu .contact a:before {
  width: 4rem;
  height: 4rem;
  margin-right: 0.5em;
  content: "";
  background-image: url("../img/icon_mail01.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.7em;
}
@media only screen and (max-width: 900px) {
  #header .header_right .menu .contact a:before {
    width: 2.5rem;
    height: 2.5rem;
    background-image: url("../img/icon_mail02.png");
    vertical-align: -0.3em;
  }
}
#header .header_right .menu .contact a:after {
  width: 3rem;
  height: 3rem;
  margin-left: 0.5em;
  content: "";
  background-image: url("../img/icon_arrow01.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.5em;
}
@media only screen and (max-width: 900px) {
  #header .header_right .menu .contact a:after {
    width: 2.5rem;
    height: 2.5rem;
    background-image: url("../img/icon_arrow03.png");
    vertical-align: -0.3em;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right .menu .contact a {
    transition: background-color 0.3s;
  }
  #header .header_right .menu .contact a:hover {
    background-color: #A27429;
  }
}

/*フッターブロック*/
#footer {
  padding-top: 6.4rem;
  color: #ffffff;
  background-color: #363636;
}
@media only screen and (max-width: 780px) {
  #footer {
    padding-top: 6rem;
  }
}
#footer .pagetop {
  width: 6.4rem;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 90;
  display: none;
}
@media only screen and (max-width: 780px) {
  #footer .pagetop {
    width: 5.6rem;
    bottom: 6rem;
  }
}
@media only screen and (min-width: 781px) {
  #footer .inner {
    padding-bottom: 5rem;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
}
@media only screen and (max-width: 780px) {
  #footer .inner {
    padding-bottom: 3.6rem;
  }
}
@media only screen and (min-width: 781px) {
  #footer .navi {
    display: flex;
  }
}
@media only screen and (max-width: 780px) {
  #footer .navi {
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 781px) {
  #footer .navi dl + dl {
    margin-left: 10rem;
  }
}
@media only screen and (max-width: 780px) {
  #footer .navi dl + dl {
    margin-top: 4.5rem;
  }
}
#footer .navi dl dt {
  margin-bottom: 1.25em;
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem;
  font-weight: 600;
}
@media only screen and (max-width: 780px) {
  #footer .navi dl dt {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    font-size: 2.2rem;
    border-bottom: solid 1px #4D4D4D;
  }
}
#footer .navi dl dd {
  margin-bottom: 1em;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 780px) {
  #footer .navi dl dd {
    margin-bottom: 2rem;
    font-size: 1.7rem;
  }
}
#footer .navi dl dd a {
  color: #ffffff;
}
@media only screen and (min-width: 781px) {
  #footer .navi dl dd a {
    transition: color 0.3s;
  }
  #footer .navi dl dd a:hover {
    color: #B59F6C;
  }
}
@media only screen and (max-width: 780px) {
  #footer .navi dl dd a {
    display: block;
  }
}
#footer .footer_content .logo {
  width: 30rem;
  margin-bottom: 2.4rem;
}
@media only screen and (max-width: 780px) {
  #footer .footer_content .logo {
    width: 20rem;
    margin: 0 auto 1.5rem auto;
  }
}
#footer .footer_content address {
  margin-bottom: 1.5em;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.42;
}
@media only screen and (max-width: 780px) {
  #footer .footer_content address {
    margin-bottom: 2rem;
    font-size: 1.3rem;
    font-weight: 500;
    text-align: center;
  }
}
#footer .footer_content .contact a {
  font-weight: 500;
}
@media only screen and (min-width: 781px) {
  #footer .footer_content .contact a {
    margin-left: -0.75rem;
    padding: 0.75rem;
    font-size: 1.5rem;
    color: #ffffff;
    border: solid 1px transparent;
    display: inline-block;
    transition: border-color 0.3s;
  }
  #footer .footer_content .contact a:hover {
    border-color: #ffffff;
  }
}
@media only screen and (max-width: 780px) {
  #footer .footer_content .contact a {
    width: 27.6rem;
    height: 4.6rem;
    margin: 0 auto;
    font-size: 1.5rem;
    line-height: 4.6rem;
    text-align: center;
    letter-spacing: 0.05em;
    color: #363636 !important;
    background-color: #ffffff;
    display: block;
    position: relative;
  }
}
#footer .footer_content .contact a:before {
  width: 3rem;
  height: 3rem;
  margin-right: 0.5em;
  content: "";
  background-image: url("../img/icon_mail01.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.5em;
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .contact a:before {
    width: 2.5rem;
    height: 2.5rem;
    background-image: url("../img/icon_mail03.png");
    vertical-align: -0.4em;
  }
}
#footer .footer_content .contact a:after {
  width: 3rem;
  height: 3rem;
  margin-left: 0.5em;
  content: "";
  background-image: url("../img/icon_arrow01.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.6em;
}
@media only screen and (max-width: 780px) {
  #footer .footer_content .contact a:after {
    width: 2.5rem;
    height: 2.5rem;
    margin-top: -1.25rem;
    background-image: url("../img/icon_arrow03.png");
    position: absolute;
    top: 50%;
    right: 2rem;
  }
}
#footer .copyright {
  padding: 1.33em 0;
  font-size: 1.2rem;
  text-align: center;
  background-color: #2C2C2C;
}
@media only screen and (max-width: 780px) {
  #footer .copyright {
    padding-bottom: 12rem;
  }
}

.sp_fix_contact {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 90;
}
@media only screen and (max-width: 780px) {
  .sp_fix_contact a {
    padding: 1.45rem 0;
    font-size: 1.9rem;
    font-weight: 500;
    text-align: center;
    color: #ffffff;
    background-color: #B79B58;
    display: block;
  }
  .sp_fix_contact a > span:before {
    width: 3.15rem;
    height: 3.15rem;
    margin-right: 0.5em;
    content: "";
    background-image: url("../img/icon_mail01.png");
    background-size: cover;
    display: inline-block;
    vertical-align: -0.45em;
  }
  .sp_fix_contact a > span:after {
    width: 3.15rem;
    height: 3.15rem;
    margin-left: 0.5em;
    content: "";
    background-image: url("../img/icon_arrow01.png");
    background-size: cover;
    display: inline-block;
    vertical-align: -0.45em;
  }
}

/****************************************************
 * 5.コンテンツスタイル
 ****************************************************/
/*TOPページ*/
.p-top__mv {
  background-size: cover;
  background-position: center center;
}
@media only screen and (min-width: 781px) {
  .p-top__mv {
    background-image: url("../img/top/mv.jpg");
  }
}
@media only screen and (max-width: 780px) {
  .p-top__mv {
    background-image: url("../img/top/mv_sp.jpg");
  }
}
.p-top__mv .inner {
  position: relative;
}
@media only screen and (min-width: 781px) {
  .p-top__mv .inner {
    height: 81.2rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top__mv .inner {
    height: 48.6rem;
  }
}
.p-top__mv .text {
  width: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.p-top__mv .text h1 {
  margin-bottom: 0.7em;
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.33;
}
@media only screen and (max-width: 780px) {
  .p-top__mv .text h1 {
    margin-bottom: 0.6em;
    font-size: 2rem;
  }
}
.p-top__mv .text p {
  margin-bottom: 3.5em;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
@media only screen and (max-width: 780px) {
  .p-top__mv .text p {
    margin-bottom: 2.6em;
    font-size: 1.4rem;
  }
}
.p-top__service {
  padding: 8rem 0 10rem 0;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 780px) {
  .p-top__service {
    padding: 4.4rem 0 5rem 0;
  }
}
.p-top__service:after {
  width: 100%;
  height: 32rem;
  content: "";
  background-color: #F4F3F2;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
@media only screen and (max-width: 780px) {
  .p-top__service:after {
    height: 68%;
  }
}
.p-top__service .inner {
  max-width: 1600px;
}
.p-top__service .inner .in {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
@media only screen and (max-width: 780px) {
  .p-top__service .midashi01 {
    margin-bottom: 1.5em;
  }
}
@media only screen and (min-width: 781px) {
  .p-top__service ul {
    display: flex;
  }
}
@media only screen and (min-width: 781px) {
  .p-top__service ul li {
    width: 50%;
    height: 44rem;
  }
}
.p-top__service ul li a {
  width: 100%;
  height: 100%;
  color: #ffffff;
  display: block;
  overflow: hidden;
  position: relative;
}
.p-top__service ul li a > img,
.p-top__service ul li a > video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.p-top__service ul li a .text {
  width: 100%;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 1;
}
@media only screen and (min-width: 781px) {
  .p-top__service ul li a .text {
    padding: 0 2em;
  }
}
@media only screen and (max-width: 780px) {
  .p-top__service ul li a .text {
    padding: 0 2.4rem;
  }
}
.p-top__service ul li a .text h3 {
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 780px) {
  .p-top__service ul li a .text h3 {
    font-size: 2rem;
  }
}
.p-top__service ul li a .text h3:after {
  width: 3em;
  height: 0.2rem;
  margin: 1em auto;
  content: "";
  background-color: #ffffff;
  display: block;
}
.p-top__service ul li a .text p {
  margin-bottom: 2.5em;
  line-height: 2.06;
}
@media only screen and (max-width: 780px) {
  .p-top__service ul li a .text p {
    margin-bottom: 1.5em;
    font-size: 1.4rem;
    line-height: 1.78;
    text-align: left;
  }
}
.p-top__service ul li a .text .link {
  font-family: "Poppins", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top__service ul li a .text .link {
    font-size: 1.6rem;
  }
}
.p-top__service ul li a .text .link:after {
  width: 1.8em;
  height: 1.8em;
  margin-left: 0.5em;
  content: "";
  background-image: url("../img/icon_arrow01.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.5em;
}
@media only screen and (min-width: 781px) {
  .p-top__service ul li a img {
    transition: transform 0.3s;
  }
  .p-top__service ul li a:hover img {
    transform: scale(1.1);
  }
}
.p-top__company {
  padding-bottom: 11.2rem;
  background-color: #F4F3F2;
}
@media only screen and (max-width: 780px) {
  .p-top__company {
    padding-bottom: 4.8rem;
  }
}
.p-top__company .inner {
  max-width: 1200px;
  position: relative;
}
@media only screen and (min-width: 781px) {
  .p-top__company .img {
    width: 46.6%;
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media only screen and (max-width: 780px) {
  .p-top__company .img {
    width: 90%;
    margin: 0 auto 2.4rem auto;
  }
}
@media only screen and (min-width: 781px) {
  .p-top__company .text {
    width: 50%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top__company .text {
    width: 90%;
    margin: 0 auto;
  }
}
.p-top__company .text h3 {
  margin-bottom: 0.96em;
  font-size: 2.6rem;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 780px) {
  .p-top__company .text h3 {
    margin-bottom: 0.78em;
    font-size: 2.1rem;
    line-height: 1.3;
  }
}
.p-top__company .text p {
  margin-bottom: 2.5em;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media only screen and (max-width: 780px) {
  .p-top__company .text p {
    margin-bottom: 1.9em;
    line-height: 1.86;
  }
}
@media only screen and (max-width: 780px) {
  .p-top__company .text .btn {
    text-align: center;
  }
}
.p-top__realease {
  padding: 9.6rem 0 7.2rem 0;
}
@media only screen and (max-width: 780px) {
  .p-top__realease {
    padding: 5rem 0 8rem 0;
  }
}
.p-top__realease .inner {
  max-width: 1200px;
}
@media only screen and (min-width: 781px) {
  .p-top__realease .inner {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 781px) {
  .p-top__realease .midashi01 {
    width: 29.3rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top__realease .realease_list {
    width: calc(100% - 29.3rem);
    padding-top: 1.5rem;
  }
}
.p-top__realease .realease_list ul {
  border-top: solid 1px #D5D5D5;
}
.p-top__realease .realease_list ul li {
  padding: 2.2rem 3rem;
  border-bottom: solid 1px #D5D5D5;
}
@media only screen and (max-width: 780px) {
  .p-top__realease .realease_list ul li {
    padding: 1.5rem;
  }
}
.p-top__realease .realease_list ul li a .meta {
  margin-bottom: 0.3em;
  letter-spacing: -0.4em;
  color: #A7A7A7;
}
.p-top__realease .realease_list ul li a .meta > * {
  display: inline-block;
  letter-spacing: normal;
}
.p-top__realease .realease_list ul li a .meta .date {
  margin-right: 2em;
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
}
.p-top__realease .realease_list ul li a .meta .cate {
  letter-spacing: -0.4em;
  font-size: 1.2rem;
}
.p-top__realease .realease_list ul li a .meta .cate > * {
  display: inline-block;
  letter-spacing: normal;
}
.p-top__realease .realease_list ul li a .meta .cate span {
  margin-right: 1em;
  letter-spacing: 0.04em;
}
.p-top__realease .realease_list ul li a .meta .cate span:before {
  width: 0.4em;
  height: 0.4em;
  margin-right: 0.75em;
  content: "";
  background-color: #A7A7A7;
  display: inline-block;
  vertical-align: 0.2em;
}
.p-top__realease .realease_list ul li a p {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 781px) {
  .p-top__realease .realease_list ul li a:hover p {
    color: #A27429;
  }
}
.p-top__realease .btn {
  width: 100%;
  margin-top: 5.6rem;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top__realease .btn {
    margin-top: 3.6rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top__contact {
    padding: 10rem 0 24rem 0;
    background-image: url("../img/top/bg01.jpg");
    background-size: cover;
    background-position: center top;
  }
}
@media only screen and (max-width: 780px) {
  .p-top__contact {
    padding-bottom: 5rem;
  }
}
.p-top__contact .inner {
  max-width: 1000px;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .inner {
    width: 100%;
  }
}
.p-top__contact .form_area {
  padding: 8rem 0;
  background-color: #ffffff;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area {
    padding: 2.8rem 0 3.8rem 0;
  }
}
.p-top__contact .form_area .input_field_area {
  width: 90%;
  max-width: 75rem;
  margin: 0 auto 4rem auto;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .input_field_area {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top__contact .form_area .input_field_area.table .input_field {
    width: 100%;
    margin-bottom: 0;
    display: table;
  }
  .p-top__contact .form_area .input_field_area.table .input_field > * {
    display: table-cell;
  }
  .p-top__contact .form_area .input_field_area.table .input_field .input_label {
    width: 30%;
    margin-bottom: 0;
    padding: 1.6em 0;
    vertical-align: top;
  }
  .p-top__contact .form_area .input_field_area.table .input_field .input_area {
    padding: 1em 0;
    vertical-align: top;
  }
}
.p-top__contact .form_area .input_field_area .input_field {
  margin-bottom: 2.5em;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .input_field_area .input_field {
    margin-bottom: 1.4em;
  }
}
.p-top__contact .form_area .input_field_area .input_field .input_label {
  margin-bottom: 0.75em;
  font-weight: 500;
}
.p-top__contact .form_area .input_field_area .input_field .input_label span {
  margin-left: 1em;
  font-size: 0.8em;
  color: #A27429;
  display: inline-block;
  vertical-align: 0.1em;
}
.p-top__contact .form_area .input_field_area .input_field .input_area {
  font-size: 1.4rem;
}
.p-top__contact .form_area .privacy {
  width: 90%;
  max-width: 75rem;
  margin: 0 auto 3.2rem auto;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .privacy {
    margin-bottom: 2.5rem;
  }
}
.p-top__contact .form_area .privacy .box {
  height: 22rem;
  margin-bottom: 2.4rem;
  padding: 2em;
  border: solid 1px #D5D5D5;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .privacy .box {
    padding: 1em;
  }
}
.p-top__contact .form_area .privacy .box .scroll {
  width: 100%;
  height: 100%;
  padding-right: 1em;
  overflow: auto;
}
.p-top__contact .form_area .privacy .box h3 {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  font-weight: 700;
  border-bottom: solid 1px #D5D5D5;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .privacy .box h3 {
    font-size: 1.4rem;
  }
}
.p-top__contact .form_area .privacy .box h4 {
  margin-bottom: 0.5em;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .privacy .box h4 {
    font-size: 1.2rem;
  }
}
.p-top__contact .form_area .privacy .box p {
  margin-bottom: 2em;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .privacy .box p {
    font-size: 1.1rem;
  }
}
.p-top__contact .form_area .privacy .check {
  text-align: center;
}
.p-top__contact .form_area .submit {
  text-align: center;
}
.p-top__contact .form_area .submit input[type=submit] {
  padding: 1em;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: center;
  color: #ffffff !important;
  background-color: #B79B58;
  background-image: url("../img/icon_arrow01.png");
  background-repeat: no-repeat;
  background-position: calc(100% - 1em) center;
  display: inline-block;
}
@media only screen and (min-width: 781px) {
  .p-top__contact .form_area .submit input[type=submit] {
    width: 29.5rem;
    background-size: 2.4rem auto;
    transition: background-color 0.3s;
  }
  .p-top__contact .form_area .submit input[type=submit]:hover {
    background-color: #A27429;
  }
}
@media only screen and (max-width: 780px) {
  .p-top__contact .form_area .submit input[type=submit] {
    width: 27.6rem;
    background-size: 2.25rem auto;
  }
}
.p-top__contact .form_area .submit input[type=submit]:disabled {
  opacity: 0.3 !important;
}

/*下層ページ*/
.pagetitle {
  margin-bottom: 2.4rem;
  padding: 8.6rem 0;
  background-image: url("../img/pagetitle_bg.jpg");
  background-size: cover;
  background-position: center center;
}
@media only screen and (max-width: 780px) {
  .pagetitle {
    margin-bottom: 2rem;
    padding: 4.4rem 0;
  }
}
.pagetitle .inner {
  max-width: 1200px;
}
.pagetitle h1 {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 780px) {
  .pagetitle h1 {
    font-size: 1.3rem;
  }
}
.pagetitle h1 span {
  margin-right: 0.5em;
  font-size: 3.3em;
  font-family: "Poppins", sans-serif;
  text-transform: uppercase;
  color: #ffffff;
  display: inline-block;
  vertical-align: -0.15em;
}

.pankuzu {
  margin-bottom: 11rem;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 780px) {
  .pankuzu {
    margin-bottom: 5rem;
  }
}
.pankuzu .inner {
  max-width: 1200px;
  letter-spacing: -0.4em;
}
.pankuzu .inner > * {
  display: inline-block;
  letter-spacing: normal;
}
.pankuzu a:after {
  width: 1.3em;
  height: 1.3em;
  margin: 0 1em;
  content: "";
  background-image: url("../img/icon_arrow04.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.2em;
}
.pankuzu span {
  color: #D1D1D1;
}

.p-service__overview {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 780px) {
  .p-service__overview {
    padding-bottom: 5rem;
  }
}
.p-service__overview .inner {
  max-width: 1200px;
  position: relative;
}
@media only screen and (min-width: 781px) {
  .p-service__overview .img {
    width: 46.6%;
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media only screen and (max-width: 780px) {
  .p-service__overview .img {
    margin-bottom: 2.4rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-service__overview .text {
    width: 50%;
  }
}
.p-service__overview .text p {
  letter-spacing: 0.05em;
  line-height: 1.8;
}
@media only screen and (max-width: 780px) {
  .p-service__overview .text p {
    line-height: 1.86;
  }
}
.p-service__detail {
  margin-bottom: 11.2rem;
  padding: 10rem 0;
  background-color: #F4F3F2;
}
@media only screen and (max-width: 780px) {
  .p-service__detail {
    margin-bottom: 5rem;
    padding: 5rem 0;
  }
}
.p-service__detail .inner {
  max-width: 1200px;
}
.p-service__detail section {
  padding: 8rem;
  background-color: #ffffff;
  border: solid 1px #D5D5D5;
}
@media only screen and (max-width: 780px) {
  .p-service__detail section {
    padding: 4rem 2rem;
  }
}
.p-service__detail section + section {
  margin-top: 3.2rem;
}
@media only screen and (max-width: 780px) {
  .p-service__detail section + section {
    margin-top: 2rem;
  }
}
.p-service__detail section h2 {
  margin-bottom: 1em;
  padding-left: 1em;
  font-size: 2.6rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  background-image: url("../img/service/midashi_icon01.png");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 0.3rem 100%;
}
@media only screen and (max-width: 780px) {
  .p-service__detail section h2 {
    font-size: 2rem;
  }
}
.p-service__detail section h2 span {
  font-family: "Poppins", sans-serif;
  font-size: 0.6em;
  letter-spacing: 0.05em;
  color: #B79B58;
  display: block;
}
.p-service__detail section p {
  letter-spacing: 0.05em;
  line-height: 1.75;
}
@media only screen and (max-width: 780px) {
  .p-service__detail section p {
    line-height: 1.5;
  }
}
.p-service__detail section ul {
  margin-top: 4rem;
  display: flex;
  flex-wrap: wrap;
}
.p-service__detail section ul li {
  background-color: #FAFAFA;
  position: relative;
}
.p-service__detail section ul li:before {
  width: 2.4rem;
  height: 2.4rem;
  content: "";
  background-image: url("../img/icon_check01.png");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 780px) {
  .p-service__detail section ul li:before {
    width: 1.5rem;
    height: 1.5rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-service__detail section ul li {
    width: 32%;
    margin: 0 2% 2% 0;
    padding: 2.4rem 2.4rem 2.4rem 4rem;
    display: flex;
    align-items: center;
  }
  .p-service__detail section ul li:nth-child(3n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 780px) {
  .p-service__detail section ul li {
    width: 48%;
    margin: 0 4% 4% 0;
    padding: 1rem;
  }
  .p-service__detail section ul li:nth-child(2n) {
    margin-right: 0;
  }
}
@media only screen and (min-width: 781px) {
  .p-service__detail section ul li .fig {
    width: 6rem;
    margin-right: 3rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-service__detail section ul li .fig {
    width: 5rem;
    margin: 0 auto;
  }
}
.p-service__detail section ul li p {
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: normal;
}
@media only screen and (min-width: 781px) {
  .p-service__detail section ul li p {
    width: calc(100% - 9rem);
  }
}
@media only screen and (max-width: 780px) {
  .p-service__detail section ul li p {
    font-size: 1.4rem;
  }
}

.p-release__list {
  margin-bottom: 10rem;
}
@media only screen and (max-width: 780px) {
  .p-release__list {
    margin-bottom: 5rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-release__list .inner:after {
    content: "";
    display: block;
    clear: both;
  }
}
@media only screen and (min-width: 781px) {
  .p-release__list .inner .left {
    width: calc(100% - 19rem);
    padding-right: 3rem;
    border-right: solid 1px #C1C1C1;
    float: left;
  }
}
@media only screen and (min-width: 781px) {
  .p-release__list .inner .right {
    width: 16rem;
    float: right;
  }
}
@media only screen and (max-width: 780px) {
  .p-release__list .inner .right {
    margin-bottom: 3rem;
  }
}
.p-release__list .release_list li {
  padding: 2.5rem 3rem;
  border-bottom: solid 1px #D5D5D5;
}
@media only screen and (max-width: 780px) {
  .p-release__list .release_list li {
    padding: 1.5rem;
  }
}
.p-release__list .release_list li a .meta {
  margin-bottom: 0.3em;
  letter-spacing: -0.4em;
  color: #A7A7A7;
}
.p-release__list .release_list li a .meta > * {
  display: inline-block;
  letter-spacing: normal;
}
.p-release__list .release_list li a .meta .date {
  margin-right: 2em;
  font-family: "Poppins", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
}
.p-release__list .release_list li a .meta .cate {
  letter-spacing: -0.4em;
  font-size: 1.2rem;
}
.p-release__list .release_list li a .meta .cate > * {
  display: inline-block;
  letter-spacing: normal;
}
.p-release__list .release_list li a .meta .cate span {
  letter-spacing: 0.04em;
  margin-right: 1em;
}
.p-release__list .release_list li a .meta .cate span:before {
  width: 0.4em;
  height: 0.4em;
  margin-right: 0.75em;
  content: "";
  background-color: #A7A7A7;
  display: inline-block;
  vertical-align: 0.2em;
}
.p-release__list .release_list li a p {
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 781px) {
  .p-release__list .release_list li a:hover p {
    color: #A27429;
  }
}
@media only screen and (max-width: 780px) {
  .p-release__list .cate_list {
    text-align: center;
    letter-spacing: -0.4em;
  }
  .p-release__list .cate_list > * {
    display: inline-block;
    letter-spacing: normal;
  }
}
@media only screen and (max-width: 780px) {
  .p-release__list .cate_list .cat-item {
    margin: 0 1em 1em 1em;
    text-align: left;
  }
}
.p-release__list .cate_list .cat-item + .cat-item {
  margin-top: 1em;
}
.p-release__list .cate_list .cat-item a {
  font-weight: 700;
  letter-spacing: 0.07em;
  color: #B79B58;
  display: block;
  transition: all 0.3s;
}
@media only screen and (max-width: 780px) {
  .p-release__list .cate_list .cat-item a {
    font-size: 1.4rem;
  }
}
.p-release__list .cate_list .cat-item a:after {
  width: 3rem;
  height: 3rem;
  margin-left: 2rem;
  content: "";
  background-image: url("../img/icon_arrow02.png");
  background-size: cover;
  display: inline-block;
  vertical-align: -0.6em;
  transition: all 0.3s;
}
@media only screen and (max-width: 780px) {
  .p-release__list .cate_list .cat-item a:after {
    width: 2rem;
    height: 2rem;
    margin-left: 1rem;
    vertical-align: -0.3em;
  }
}
@media only screen and (min-width: 901px) {
  .p-release__list .cate_list .cat-item a:hover:after {
    margin-left: 3rem;
  }
}
.p-release__list .pagination {
  padding-top: 8rem;
  clear: both;
}
@media only screen and (max-width: 780px) {
  .p-release__list .pagination {
    padding-top: 4rem;
  }
}
.p-release__post {
  margin-bottom: 10rem;
}
@media only screen and (max-width: 780px) {
  .p-release__post {
    margin-bottom: 5rem;
  }
}
.p-release__post .headding {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 780px) {
  .p-release__post .headding {
    margin-bottom: 3rem;
  }
}
.p-release__post .headding h2 {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.06em;
  border-bottom: solid 1px #C1C1C1;
}
.p-release__post .headding .meta {
  letter-spacing: -0.4em;
}
.p-release__post .headding .meta > * {
  display: inline-block;
  letter-spacing: normal;
}
.p-release__post .headding .meta .date {
  margin-right: 2em;
  font-family: "Poppins", sans-serif;
  font-size: 2.1rem;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media only screen and (max-width: 780px) {
  .p-release__post .headding .meta .date {
    font-size: 1.6rem;
  }
}
.p-release__post .headding .meta .cate {
  margin-right: 1em;
  font-size: 1.4rem;
  text-align: center;
  color: #A7A7A7;
}
.p-release__post .headding .meta .cate:before {
  width: 0.4em;
  height: 0.4em;
  margin-right: 0.5em;
  content: "";
  background-color: #A7A7A7;
  display: inline-block;
  vertical-align: 0.2em;
}
@media only screen and (max-width: 780px) {
  .p-release__post .headding .meta .cate {
    font-size: 1.3rem;
  }
}
.p-release__post .post-navigation {
  margin-top: 8rem;
  padding-top: 8rem;
  border-top: solid 1px #C1C1C1;
}
@media only screen and (max-width: 780px) {
  .p-release__post .post-navigation {
    margin-top: 4rem;
    padding-top: 4rem;
  }
}

/****************************************************
 * 6.装飾
 ****************************************************/
.underline {
  text-decoration: underline;
}

.bold {
  font-weight: 700;
}

/****************************************************
 * 7.印刷用調整
 ****************************************************/
@media print {
  @page {
    /* A4縦サイズ */
    size: 210mm 297mm;
  }
  html {
    font-size: 10pt !important;
  }
  body {
    margin: 0 !important;
    padding: 0 !important;
  }
  * {
    -webkit-print-color-adjust: exact;
  }
  .container {
    padding: 0 !important;
  }
  #header {
    position: static !important;
  }
  img {
    display: block !important;
  }
}