@charset "UTF-8";
html, 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, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav 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;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

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

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

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

input, select {
  vertical-align: middle;
}

/* =========================================================== */
/*  Reset Form                                                 */
/* =========================================================== */
input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

* {
  box-sizing: border-box;
  font-weight: normal;
}

html {
  height: 100%;
  font-size: 0.96rem;
}

@media screen and (max-width: 768px) {
  html {
    font-size: 0.96rem;
  }
}

body {
  line-height: 1.6;
  letter-spacing: .05em;
  color: #333;
  font-family: "Roboto", "YakuHanJP", "Noto Sans JP", sans-serif;
  overflow-wrap: break-word;
  font-feature-settings: "palt";
  text-align: justify;
  text-justify: inter-ideograph;
}

_::-webkit-full-page-media, _:future, :root body {
  font-feature-settings: "pkna";
}

em {
  font-style: normal;
  font-weight: bold;
}

sub {
  vertical-align: baseline;
  font-size: 0.8256rem;
}

li {
  list-style: none;
}

table, th, td {
  vertical-align: top;
}

img {
  line-height: 1;
  vertical-align: bottom;
}

svg {
  fill: currentColor;
}

a {
  color: #333;
  transition: 0.6s;
  word-break: break-all;
  display: inline-block;
}

a img {
  border: 0;
}

a:link, a:active, a:visited {
  text-decoration: none;
}

a:hover, label:hover,
input[type="submit"]:hover,
button:hover {
  opacity: 0.6;
  transition: 0.6s;
}

.js-fadeIn {
  opacity: 0;
  transition: 0.6s;
}

.js-fadeIn.is-active {
  opacity: 1;
  transition: 0.6s;
}

.js-pgh-fade-move {
  opacity: 0;
  display: inline-block;
  transform: scale(1.25) translate(8px, 4px);
}

.js-pgh-fade-move:nth-child(1) {
  transition: opacity 1.2s ease 0.1s, transform 1.2s ease 0.2s;
}

.js-pgh-fade-move:nth-child(2) {
  transition: opacity 1.2s ease 0.2s, transform 1.2s ease 0.25s;
}

.js-pgh-fade-move:nth-child(3) {
  transition: opacity 1.2s ease 0.25s, transform 1.2s ease 0.3s;
}

.js-pgh-fade-move:nth-child(4) {
  transition: opacity 1.2s ease 0.3s, transform 1.2s ease 0.35s;
}

.js-pgh-fade-move:nth-child(5) {
  transition: opacity 1.2s ease 0.35s, transform 1.2s ease 0.4s;
}

.js-pgh-fade-move:nth-child(6) {
  transition: opacity 1.2s ease 0.4s, transform 1.2s ease 0.45s;
}

.js-pgh-fade-move:nth-child(7) {
  transition: opacity 1.2s ease 0.45s, transform 1.2s ease 0.5s;
}

.js-pgh-fade-move:nth-child(8) {
  transition: opacity 1.2s ease 0.5s, transform 1.2s ease 0.55s;
}

.js-pgh-fade-move:nth-child(9) {
  transition: opacity 1.2s ease 0.55s, transform 1.2s ease 0.6s;
}

.js-pgh-fade-move:nth-child(10) {
  transition: opacity 1.2s ease 0.6s, transform 1.2s ease 0.65s;
}

.js-pgh-fade-move:nth-child(11) {
  transition: opacity 1.2s ease 0.65s, transform 1.2s ease 0.7s;
}

.js-pgh-fade-move:nth-child(12) {
  transition: opacity 1.2s ease 0.7s, transform 1.2s ease 0.75s;
}

.js-pgh-fade-move:nth-child(13) {
  transition: opacity 1.2s ease 0.75s, transform 1.2s ease 0.8s;
}

.js-pgh-fade-move:nth-child(14) {
  transition: opacity 1.2s ease 0.8s, transform 1.2s ease 0.85s;
}

.js-pgh-fade-move:nth-child(15) {
  transition: opacity 1.2s ease 0.85s, transform 1.2s ease 0.9s;
}

.js-pgh-fade-move:nth-child(16) {
  transition: opacity 1.2s ease 0.9s, transform 1.2s ease 0.95s;
}

.js-pgh-fade-move:nth-child(17) {
  transition: opacity 1.2s ease 0.95s, transform 1.2s ease 1s;
}

.js-pgh-fade-move:nth-child(18) {
  transition: opacity 1.2s ease 1.0s, transform 1.2s ease 1.05s;
}

.js-pgh-fade-move:nth-child(19) {
  transition: opacity 1.2s ease 1.05s, transform 1.2s ease 1.1s;
}

.js-pgh-fade-move:nth-child(20) {
  transition: opacity 1.2s ease 1.1s, transform 1.2s ease 1.15s;
}

.js-pgh-fade-move:nth-child(21) {
  transition: opacity 1.2s ease 1.15s, transform 1.2s ease 1.2s;
}

.js-pgh-fade-move:nth-child(22) {
  transition: opacity 1.2s ease 1.2s, transform 1.2s ease 1.25s;
}

.js-pgh-fade.is-active {
  opacity: 1;
}

.js-pgh-fade.is-active .js-pgh-fade-move {
  opacity: 1;
  transform: scale(1) translate(0);
}

.c-read {
  text-align: center;
  font-size: 1.152rem;
  line-height: 1.8;
}

.c-read em {
  font-size: 1.3824rem;
  color: #00aad4;
}

.c-flow-01 {
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
  .c-flow-01 {
    display: flex;
    justify-content: space-between;
  }
}

.c-flow-01-step {
  width: 5rem;
  padding: 1rem 1.2rem;
  border-radius: .5em;
  background-color: #00aad4;
  font-size: 1.3824rem;
  text-align: center;
  color: #fff;
}

.c-flow-01-step span {
  display: block;
  font-size: 0.71002rem;
}

@media screen and (max-width: 768px) {
  .c-flow-01-step {
    margin: 0 auto 2rem;
  }
}

@media screen and (min-width: 768px) {
  .c-flow-01-cont {
    padding: .5em 0;
    width: calc(100% - 8rem);
  }
}

.c-flow-01 [class*='ttl'] {
  color: #00aad4;
}

.post-01 {
  margin-bottom: 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.post-01-item {
  overflow: hidden;
  border-radius: 4px;
}

.post-01-item .img {
  display: block;
  overflow: hidden;
}

.post-01-item .img img {
  display: block;
  transition-property: transform;
  transition-duration: 0.6s;
}

.post-01-item:hover .img img {
  transform: scale(1.05);
  transition-property: transform;
  transition-duration: 0.6s;
}

@media screen and (min-width: 768px) {
  .post-01-item {
    width: 23%;
  }
}

@media screen and (max-width: 768px) {
  .post-01-item {
    width: 48%;
  }
}

.post-01-item .img {
  overflow: hidden;
  position: relative;
}

@media screen and (min-width: 768px) {
  .post-01-item .img {
    width: 100%;
    height: 160px;
  }
}

@media screen and (max-width: 768px) {
  .post-01-item .img {
    width: 100%;
    height: 120px;
  }
}

.post-01-item .img img {
  position: absolute;
  width: 100%;
  max-width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .post-01-item .txt {
    padding: .8em .7em;
  }
}

@media screen and (max-width: 768px) {
  .post-01-item .txt {
    padding: .8em 0 1em;
  }
}

.post-01-item .txt .ttl {
  font-size: .9rem;
}

.post-01-item .txt .date {
  font-size: .8rem;
  margin-bottom: .2rem;
  color: #999;
}

.post-01 a {
  text-decoration: none !important;
  background-color: #fff;
}

.post-01 a:hover {
  box-shadow: 0 0 0.6em rgba(0, 0, 0, 0.4);
  opacity: 1;
}

.post-01 a:hover .img img {
  transform: translate(-50%, -50%) scale(1.1);
}

.grid {
  display: flex;
  justify-content: space-between;
}

[class*="grid-"] {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

[class*="grid-"] img {
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .grid-0 {
    justify-content: flex-start;
  }
}

@media screen and (min-width: 768px) and (min-width: 1100px) {
  .grid-0 > div, .grid-0 > li {
    width: 19.5%;
    margin-left: 0.6%;
  }
  .grid-0 > div:nth-child(5n+1), .grid-0 > li:nth-child(4n+1) {
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) and (min-width: 900px) and (max-width: 1100px) {
  .grid-0 > div, .grid-0 > li {
    width: 24.5%;
    margin-left: 0.666%;
  }
  .grid-0 > div:nth-child(4n+1), .grid-0 > li:nth-child(4n+1) {
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) and (min-width: 700px) and (max-width: 900px) {
  .grid-0 > div, .grid-0 > li {
    width: 33%;
    margin-left: 0.5%;
  }
  .grid-0 > div:nth-child(3n+1), .grid-0 > li:nth-child(3n+1) {
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) and (min-width: 768px) and (max-width: 700px) {
  .grid-0 > div, .grid-0 > li {
    width: 49.5%;
    margin-left: 0.5%;
  }
  .grid-0 > div:nth-child(2n+1), .grid-0 > li:nth-child(2n+1) {
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .grid-2 > div, .grid-2 > li {
    width: 46%;
  }
  .grid-2-1 > div:nth-of-type(1) {
    width: 62%;
  }
  .grid-2-1 > div:nth-of-type(2) {
    width: 34%;
  }
  .grid-3 > div, .grid-3 > li {
    width: 32%;
  }
  .grid-4 > div, .grid-4 > li {
    width: 23%;
  }
  .grid-5 > div, .grid-5 > li {
    width: 18%;
  }
  [class*="grid"].--r {
    flex-direction: row-reverse;
  }
}

@media screen and (max-width: 768px) {
  .grid img {
    max-width: 100%;
  }
  [class*="grid-"] > div, [class*="grid-"] > li {
    width: 49%;
    margin-left: 1%;
  }
  [class*="grid-"] > div:nth-child(2n+1), [class*="grid-"] > li:nth-child(2n+1) {
    margin-left: 0;
  }
  .grid.--bk, [class*="grid-"].--bk {
    display: block;
  }
  .grid.--bk > div, .grid.--bk > li, [class*="grid-"].--bk > div, [class*="grid-"].--bk > li {
    width: 100%;
    margin-left: 0;
  }
}

.list-office {
  display: flex;
  justify-content: space-between;
}

.list-office li {
  padding: .2em .8em;
  border-radius: .2em;
  background-color: #e6e3d9;
  text-align: center;
}

.list-office li:not(:last-child) {
  margin-right: .5em;
}

.list-d01 > li {
  position: relative;
  padding-left: 1em;
}

.list-d01 > li:before {
  position: absolute;
  left: 0;
  content: "-";
  margin-left: .16em;
}

.list-a01 > li {
  position: relative;
  padding-left: 1em;
}

.list-a01 > li:before {
  position: absolute;
  left: 0;
  content: "※";
  margin-top: .16em;
  font-size: 90%;
}

.sidebar-inner ul > li,
.list-l01 > li {
  margin-bottom: .8em;
  padding: 0 .1em .8em;
  border-bottom: 1px dotted #aaa17f;
}

.sidebar-inner ul > li > a,
.list-l01 > li > a {
  text-decoration: none;
}

/* 1 */
.list-n01 {
  counter-reset: li;
}

.list-n01 > li {
  position: relative;
  display: block;
  padding-left: 1.2em;
}

.list-n01 > li:before {
  position: absolute;
  left: -.8em;
  content: counter(li);
  counter-increment: li;
  margin: .1em 0 0 .8em;
  font-size: 90%;
}

/* （1） */
.list-n02 {
  counter-reset: li;
}

.list-n02 > li {
  position: relative;
  display: block;
  padding-left: 2em;
}

.list-n02 > li:before {
  position: absolute;
  left: -1em;
  content: "（" counter(li) "）";
  counter-increment: li;
  margin: .2em 0 0 .5em;
  font-size: 80%;
}

/* a */
.list-n03 {
  margin-left: 1.6em;
}

.list-n03 > li {
  list-style-type: lower-latin;
}

/* ア */
.list-n04 {
  margin-left: 1.6em;
}

.list-n04 > li {
  list-style-type: katakana;
}

/* インライン */
.list-i01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 0.8256rem;
}

.list-i01 > li:not(:last-child) {
  margin-right: .5em;
  padding-right: .5em;
  border-right: 1px solid #aaa17f;
}

/* 右端に＞ */
.list-r01 > li, .gnav-inner-menu .menu-gnav-sub-sp-container .menu > li {
  border-bottom: 1px solid #aaa17f;
  margin-bottom: .25em;
}

.list-r01 > li > a, .gnav-inner-menu .menu-gnav-sub-sp-container .menu > li > a {
  display: block;
  position: relative;
  padding: 1.5em 2em 1.5em .5em;
}

.list-r01 > li > a:after, .gnav-inner-menu .menu-gnav-sub-sp-container .menu > li > a:after {
  position: absolute;
  top: 50%;
  right: 1%;
  transform: translateY(-50%) scaleX(50%);
  content: "＞";
  font-size: 0.71002rem;
}

.wrap-inner, .wrap-inner-ov {
  padding: 0 calc(50% - 550px);
}

@media screen and (max-width: 1100px) {
  .wrap-inner {
    padding: 0 6%;
  }
}

@media screen and (max-width: 1100px) {
  .wrap-inner-ov {
    width: 100%;
  }
}

.wrap-inner2 {
  width: 1100px;
  margin: 0 auto;
}

@media screen and (max-width: 1100px) {
  .wrap-inner2 {
    width: 88%;
  }
}

.wrap-inner-s {
  width: 680px;
  margin: 0 auto 4rem;
}

@media screen and (max-width: 1100px) {
  .wrap-inner-s {
    width: 88%;
  }
}

@media screen and (min-width: 768px) {
  main .wrap-inner,
  main .wrap-inner-ov {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}

@media screen and (max-width: 768px) {
  main .wrap-inner,
  main .wrap-inner-ov {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.parallax-window {
  min-height: 800px;
  background: transparent;
}

.parallax-slider {
  top: 0;
  left: 0;
}

.mw_wp_form .horizontal-item + .horizontal-item {
  margin: 0;
}

.mwform-radio-field {
  display: block;
  margin: .2em 0 !important;
}

input, textarea, select {
  padding: .5em;
  border: 1px solid #ccc;
  border-radius: .2em;
}

@media screen and (max-width: 768px) {
  input[type='text'], textarea {
    width: 100% !important;
  }
}

input[type='radio'] {
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  cursor: pointer;
}

input[type='radio']::before {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  content: '';
  border: 3px solid #fff;
  border-radius: 50%;
}

input[type='radio']:checked {
  background-color: #00aad4;
}

label {
  cursor: pointer;
}

.ttl-01 {
  font-size: 2.4em;
  margin-bottom: .8em;
  letter-spacing: .15em;
  text-align: center;
  background-size: auto 100%;
}

@media screen and (max-width: 768px) {
  .ttl-01 {
    font-size: 1.8em;
    margin-bottom: 1em;
  }
}

.ttl-02 {
  font-size: 1.6em;
  margin-bottom: 1em;
  letter-spacing: .05em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .ttl-02 {
    font-size: 1.6em;
  }
}

.ttl-03 {
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
}

.ttl-04 {
  margin-bottom: 1em;
  font-size: 1.152rem;
  font-weight: bold;
}

.ttl-05 {
  margin-bottom: 1em;
  font-weight: bold;
}

.ttl-06 {
  position: relative;
  margin-bottom: 1em;
  font-size: 1.2em;
  font-weight: bold;
  color: #00aad4;
}

.ttl-06 p {
  display: inline-block;
  padding-right: .5em;
  background-color: #fff;
}

.ttl-06.pgh-c p {
  padding-left: .5em;
}

.ttl-06::before {
  position: absolute;
  width: 100%;
  height: 4px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background-color: #d9f2f9;
  content: '';
  z-index: -1;
}

[class*='ttl'] .num {
  margin: 0 auto .8em;
  padding: .25em 0;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  background-color: #00aad4;
  font-size: 2rem;
  color: #fff;
}

[class*='ttl'] span {
  display: block;
  margin-top: .5em;
  font-size: 0.8256rem;
  color: #00aad4;
}

.ttl-popural,
.sidebar-ttl {
  position: relative;
  padding-left: 1.4em;
  margin-bottom: .8em;
  font-size: 1.152rem;
  font-weight: bold;
}

.ttl-popural:before,
.sidebar-ttl:before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1.2em;
  height: 1.2em;
  background: url(img/ico-popular.svg) 0 0 no-repeat;
  content: '';
}

.img-c {
  overflow: hidden;
  display: block;
  margin: 0 auto 1em;
  max-width: 100%;
}

.img-r {
  overflow: hidden;
  display: block;
  margin: 0 0 1em 1em;
  float: right;
  max-width: 100%;
}

.img-l {
  overflow: hidden;
  display: block;
  margin: 0 1em 1em 0;
  float: left;
  max-width: 100%;
}

.img-d {
  overflow: hidden;
  display: block;
  border-radius: .5rem;
  max-width: 100%;
}

[class*='img-'] img {
  max-width: 100%;
}

.pgh-01 {
  margin-bottom: 1em;
}

.pgh-02 {
  margin-bottom: 2em;
}

.pgh-c {
  text-align: center;
}

.pgh-r {
  text-align: right;
}

.pgh-l {
  text-align: left;
}

.pgh-att {
  color: #f33;
}

.pgh-em {
  color: #00aad4;
}

.pgh-str {
  color: #00aad4;
  font-weight: bold;
}

/*
.pgh-circle span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5em;
  height: 5em;
  margin: 0 auto 2em;
  padding-top: .3em;
  border-radius: 50%;
  line-height: 1.4;
  font-size: $pgh-str2;
  text-align: center;
  color: #fff;
  background-color: $c-sub1;
  border: 1px solid #fff;
}
*/
.pgh-circle {
  position: relative;
  margin: 0 auto 2em;
  font-size: 1.3824rem;
  text-align: center;
  letter-spacing: .15em;
  color: #554400;
}

.pgh-circle::before {
  position: absolute;
  width: 2em;
  height: 2em;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #d9f2f9;
  border-radius: 50%;
  content: '';
  z-index: -1;
}

.pgh-tel {
  position: relative;
  padding-top: .1em;
  padding-left: 1.2em;
  min-height: 1.2em;
  font-weight: bold;
  line-height: 1;
}

.pgh-tel::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1.2em;
  height: 1.2em;
  background: url(img/ico-tel.png) 0 0 no-repeat;
  background-size: auto 100%;
  content: '';
}

.pgh-form-req, .wpforms-container .wpforms-required-label,
.pgh-form-any {
  margin: 0 .8em;
  padding: .3em .8em;
  border-radius: .4em;
  line-height: 1;
  font-size: 0.71002rem;
}

.pgh-form-req, .wpforms-container .wpforms-required-label {
  background-color: #fcc;
  color: #f33;
}

.pgh-form-any {
  background-color: #eee;
}

.img-circle > p {
  overflow: hidden;
  width: 250px;
  height: 250px;
  border-radius: 50%;
  background-color: #fff;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .img-circle > p {
    margin: 0 auto;
  }
}

.img-circle img {
  height: 100%;
  max-width: 100%;
}

.img-circle.y-yukiko img {
  margin: 0;
  margin-top: -10px;
  height: auto;
  width: 100%;
  max-width: initial;
}

.tbl-01 {
  max-width: 100%;
  margin: 0 auto;
  border-bottom: 1px solid #7fd4e9;
}

.tbl-01 th, .tbl-01 td {
  padding: .8em 1.2em;
  vertical-align: middle;
  border-top: 1px solid #7fd4e9;
}

.tbl-01 th {
  font-weight: bold;
  text-align: left;
  vertical-align: top;
  background-color: #d9f2f9;
}

@media screen and (max-width: 768px) {
  .tbl-01 {
    width: 100%;
  }
  .tbl-01.bk th, .tbl-01.bk td {
    display: block;
    border: none !important;
  }
  .tbl-01.bk th {
    border-top: 1px solid #7fd4e9 !important;
  }
}

.tbl-02 {
  max-width: 100%;
  margin: 0 auto;
  border-bottom: 1px solid #7fd4e9;
}

.tbl-02 th, .tbl-02 td {
  padding: 0 1.2em .8em;
  vertical-align: middle;
}

.tbl-02 th {
  font-weight: bold;
  text-align: left;
  vertical-align: top;
}

.tbl-02 .ttl th:first-child {
  background-color: #d9f2f9;
}

.tbl-02 .ttl th, .tbl-02 .ttl td {
  padding-top: .8em;
  border-top: 1px solid #7fd4e9;
}

@media screen and (max-width: 768px) {
  .tbl-02 {
    width: 100%;
  }
  .tbl-02 th, .tbl-02 td {
    display: block;
    border: none !important;
  }
  .tbl-02 th {
    padding-bottom: 0;
  }
  .tbl-02 .ttl th:first-child {
    padding-bottom: .8em;
    border-top: 1px solid #7fd4e9 !important;
  }
}

.tbl-form {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .tbl-form td {
    padding-top: 2em;
  }
}

@media screen and (max-width: 768px) {
  .tbl-form td {
    padding-top: 1em;
  }
}

.tbl-form th {
  text-align: right;
}

@media screen and (min-width: 768px) {
  .tbl-form th {
    padding-top: 2em;
    padding-right: 2em;
  }
}

@media screen and (max-width: 768px) {
  .tbl-form th {
    padding-top: 2em;
  }
}

@media screen and (max-width: 768px) {
  .tbl-form {
    max-width: 100%;
  }
  .tbl-form th, .tbl-form td {
    display: block;
    text-align: left;
  }
}

.wpcf7-radio .wpcf7-list-item {
  display: block;
  margin-top: .25em;
}

.wpcf7-radio .wpcf7-list-item.first {
  margin-top: 0;
}

.wpcf7-previous,
.wpcf7-submit {
  padding: .75em 2.5em;
  border-radius: 500px;
  font-size: 1.1em;
  cursor: pointer;
  transition: .3s;
}

.wpcf7-submit {
  border: 1px solid #554400;
  background-color: #554400;
  color: #fff;
}

.wpcf7-submit:hover {
  background-color: transparent;
  color: #554400;
}

.wpcf7-previous {
  border: 1px solid #554400;
  background-color: transparent;
  color: #554400;
}

.wpcf7-previous:hover {
  background-color: #554400;
  color: #fff;
}

.wpcf7-btn-area p {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  margin-top: 2em;
}

@media screen and (max-width: 768px) {
  .wpcf7-btn-area p {
    flex-direction: column-reverse;
  }
  .wpcf7-btn-area p input {
    width: 60%;
  }
}

@media screen and (min-width: 768px) {
  .wpforms-container {
    width: 380px !important;
    max-width: 100%;
  }
}

.wpforms-container input[type='text'], .wpforms-container input[type='number'], .wpforms-container input[type='email'] {
  max-width: 100%;
}

.wpforms-container input[type='radio'] {
  margin-top: 0 !important;
  border: 1px solid #ccc !important;
}

.wpforms-container input[type='radio']:checked:after {
  background-color: #00aad4 !important;
}

.wpforms-container .wpforms-submit-container {
  text-align: center;
}

.wpforms-container .wpforms-submit-container button {
  padding: 1.2em 2.4em !important;
  height: auto !important;
  border-radius: 500px !important;
  background-color: #00aad4 !important;
}

.wpforms-container .wpforms-required-label {
  /*
    position: relative;
    display: inline-block;
    text-indent: -9999px;
    &::after {
      content: '必須';
      display: inline-block;
      background-color: #fcc;
      color: #f33;
      margin: 0 .8em;
      padding: .3em .8em;
      border-radius: .4em;
      line-height: 1;
      font-size: 0.71002rem;
    }
      */
}

.btn-01, .btn-02 {
  position: relative;
  display: inline-block;
  padding: .8em 2em .8em 2.8em;
  border-radius: 500px;
  border: 1px solid #554400;
  background-color: #554400;
  text-align: center;
  text-decoration: none !important;
  color: #fff !important;
  cursor: pointer;
}

.btn-01:after, .btn-02:after {
  top: 50%;
  margin-left: .5em;
  transform: translateY(-50%);
  content: '＞';
  font-size: 0.71002rem;
}

.btn-01:hover, .btn-02:hover {
  opacity: 1;
  background-color: #fff;
  color: #554400 !important;
}

.btn-02 {
  background-color: #00aad4;
  border: 1px solid #00aad4;
}

.btn-02:hover {
  color: #00aad4 !important;
}

.btn-area {
  text-align: center;
  margin-top: 2rem;
}

.btn-area2 {
  display: flex;
  justify-content: center;
  gap: .5em;
}

[class*='box-p'], [class*='box-l'] {
  padding: 2em;
  border-radius: .8em;
}

.box-p00 {
  background-color: #fff;
}

.box-p01 {
  background-color: #eee;
}

.box-p02 {
  background-color: #d9f2f9;
}

.box-p03 {
  background-color: #e6e3d9;
}

.box-l01 {
  border: 2px solid #00aad4;
}

.box-map {
  position: relative;
  margin: 2rem auto;
  height: 354px;
}

.box-map iframe {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 auto;
  max-width: 100%;
}

/* Youtube 動画埋め込み用 */
.box-mov {
  width: 100%;
  aspect-ratio: 16 / 9;
}

.box-mov iframe {
  width: 100%;
  height: 100%;
  vertical-align: bottom;
}

.box-step-01 {
  position: relative;
  padding: 1.6em;
  border-radius: .8em;
  background-color: #d9f2f9;
}

.box-step-01:not(:last-child) {
  margin-bottom: 3rem;
}

.box-step-01:not(:last-child):before {
  position: absolute;
  bottom: -2rem;
  left: 50%;
  transform: translateX(-50%);
  border-top: 2rem solid #d9f2f9;
  border-right: 2rem solid transparent;
  border-left: 2rem solid transparent;
  content: '';
}

.box-calendar-ttl, .box-calendar-head, .box-calendar-list {
  width: 100%;
  padding: .5em;
}

.box-calendar-ttl > li:nth-child(7n+1), .box-calendar-head > li:nth-child(7n+1), .box-calendar-list > li:nth-child(7n+1) {
  color: #f00;
}

.box-calendar-ttl > li:nth-child(7n), .box-calendar-head > li:nth-child(7n), .box-calendar-list > li:nth-child(7n) {
  color: #00f;
}

.box-calendar-ttl {
  text-align: center;
}

.box-calendar-head {
  display: flex;
  justify-content: space-between;
}

.box-calendar-head > li {
  width: calc(100% / 7);
  text-align: center;
}

.box-calendar-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.box-calendar-list > li {
  width: calc(100% / 7);
  text-align: center;
}

.box-calendar-list > li.off {
  color: #999;
}

.box-calendar-list > li.holiday {
  color: #f00;
}

.modal {
  display: none;
}

.modal.is-open {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  display: flex;
  z-index: 15;
}

@media screen and (min-width: 1100px) {
  .is-pc, .is-pt {
    display: block !important;
  }
  .is-sp, .is-st, .is-tb {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .is-pt, .is-tb, .is-st {
    display: block !important;
  }
  .is-pc, .is-sp {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .is-sp, .is-st {
    display: block !important;
  }
  .is-pc, .is-pt, .is-tb {
    display: none !important;
  }
}

th.is-pc, td.is-pc {
  display: table-cell !important;
}

th.is-sp, td.is-sp {
  display: none !important;
}

@media screen and (max-width: 768px) {
  th.is-pc, td.is-pc {
    display: none !important;
  }
  th.is-sp, td.is-sp {
    display: table-cell !important;
  }
}

.wp-pagenavi {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .wp-pagenavi {
    margin-top: 2rem;
  }
}

.wp-pagenavi a, .wp-pagenavi span {
  margin: 0 .25em;
  border: none;
  text-decoration: none !important;
}

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

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

.rtoc-mokuji-content #rtoc-mokuji-title {
  font-size: 1.2em !important;
  transition: .4s;
  padding-top: 28px;
}

.rtoc-mokuji-content #rtoc-mokuji-title.is_close {
  padding: 10px 20px;
  transition: .4s;
}

.rtoc-mokuji-content #rtoc-mokuji-title.is_close .rtoc_open_close {
  left: calc(100% - 48px) !important;
}

.slider {
  overflow: hidden;
}

.slider li a, .slider li img {
  width: 100%;
}

.slider .slick-dots {
  position: absolute;
  bottom: 0;
  height: 32px;
  z-index: 5;
  transform: scale(1.2);
  transform-origin: top center;
  background-color: #fff;
}

.slider .slick-dots button:before {
  content: "●";
}

.slider .slick-next,
.slider .slick-prev {
  height: 100%;
  width: 50px;
  opacity: 0;
  transition: 0.6s;
  transform-origin: center;
  z-index: 7;
}

.slider .slick-next {
  right: -50px;
  background: url(img/slick-l.png) center left no-repeat;
}

.slider .slick-prev {
  left: -50px;
  background: url(img/slick-r.png) center left no-repeat;
}

.slider.is-focus .slick-next {
  right: 0;
  opacity: 0.8;
  transition: 0.6s;
}

.slider.is-focus .slick-prev {
  left: 0;
  opacity: 0.8;
  transition: 0.6s;
}

.slider.is-focus .slick-prev:before {
  display: none;
}

.slider.is-focus .slick-next:before {
  display: none;
}

@media screen and (max-width: 768px) {
  .slider .slick-next,
  .slider .slick-prev {
    width: 8%;
    background-size: 100%;
  }
  .slider .slick-next {
    right: -8%;
  }
  .slider .slick-prev {
    left: -8%;
  }
}

.slider-02 .slider .slick-slide {
  margin: .5em;
}

.l-contents .tagcloud {
  display: flex;
  flex-wrap: wrap;
}

.l-contents .tagcloud a {
  padding: .2em .5em;
  border-radius: .2em;
  background-color: #00aad4;
  color: #fff;
  text-decoration: none;
  font-size: .8em !important;
  margin: 0 .5em .5em 0;
}

.tag-list {
  display: flex;
  flex-wrap: wrap;
}

.tag-list a {
  border-radius: .2em;
  color: #00aad4;
  text-decoration: none !important;
  margin: 0 .8em .5em 0;
}

.entry-ttl {
  font-size: 1.3824rem;
  font-weight: bold;
}

.entry-date {
  font-size: 0.8256rem;
  color: #999;
}

.entry-cont {
  margin-top: 1.2em;
  padding-top: 1.2em;
  border-top: 4px solid #00aad4;
  /*
    h2, h3, h4, h5 { margin: 2em 0 1em; font-weight: bold; }
    h2 span, h3 span, h4 span, h5 span { font-weight: bold; }
    h2 { font-size: 1.6em; color: $c-main; }
    h3 { font-size: 1.4em; color:$c-main3; }
    h4 { font-size: 1.2em; }
    h5 { font-size: 1.0em; }
    */
}

.entry-cont-ttl-01, .entry-cont-ttl-02, .entry-cont-ttl-03, .entry-cont-ttl-04 {
  margin: 2em 0 1em;
  font-weight: bold;
}

.entry-cont-ttl-01 span,
.entry-cont-ttl-02 span,
.entry-cont-ttl-03 span,
.entry-cont-ttl-04 span {
  font-weight: bold;
}

.entry-cont-ttl-01 {
  font-size: 1.6em;
  /* color: $c-main; */
}

.entry-cont-ttl-02 {
  font-size: 1.4em;
  /* color:$c-main3; */
}

.entry-cont-ttl-03 {
  font-size: 1.2em;
}

.entry-cont-ttl-04 {
  font-size: 1.0em;
}

.entry-cont h2, .entry-cont h3, .entry-cont h4, .entry-cont h5 {
  margin: 2em 0 1em;
  font-weight: bold;
}

.entry-cont h2 span, .entry-cont h3 span, .entry-cont h4 span, .entry-cont h5 span,
.entry-cont h2 strong, .entry-cont h3 strong, .entry-cont h4 strong, .entry-cont h5 strong {
  font-weight: bold;
}

.entry-cont h2 {
  font-size: 1.6em;
}

.entry-cont h3 {
  font-size: 1.4em;
}

.entry-cont h4 {
  font-size: 1.2em;
}

.entry-cont h5 {
  font-size: 1.0em;
}

.entry-cont p {
  margin-bottom: 1em;
}

.entry-cont img {
  max-width: 100%;
}

.entry-eyechatch {
  margin-bottom: 2rem;
  text-align: center;
}

.entry-eyechatch img {
  max-width: 100%;
}

.entry-list {
  margin-top: 1rem;
}

.entry-list-item {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px dotted #aaa17f;
}

@media screen and (min-width: 768px) {
  .entry-list-item {
    display: flex;
  }
  .entry-list-item-date {
    margin-right: 1em;
  }
}

.entry-list-thumbnail {
  display: flex;
  flex-wrap: wrap;
}

.entry-list-thumbnail a {
  display: block;
  text-decoration: none !important;
  background-color: #fff;
}

.entry-list-thumbnail a:hover {
  opacity: 1;
}

.entry-list-thumbnail a:hover .img img {
  transform: translate(-50%, -50%) scale(1.1);
}

.entry-list-thumbnail-item {
  border-radius: 4px;
  overflow: hidden;
  transition-duration: 0.6s;
  margin-bottom: 2em;
}

.entry-list-thumbnail-item .img {
  display: block;
  overflow: hidden;
}

.entry-list-thumbnail-item .img img {
  display: block;
  transition-property: transform;
  transition-duration: 0.6s;
}

.entry-list-thumbnail-item:hover .img img {
  transform: scale(1.05);
  transition-property: transform;
  transition-duration: 0.6s;
}

@media screen and (min-width: 1100px) {
  .entry-list-thumbnail-item {
    width: 32%;
  }
  .entry-list-thumbnail-item:not(:nth-of-type(3n)) {
    margin-right: 2%;
  }
}

@media screen and (max-width: 1100px) {
  .entry-list-thumbnail-item {
    width: 48%;
  }
  .entry-list-thumbnail-item:not(:nth-of-type(2n)) {
    margin-right: 4%;
  }
}

.entry-list-thumbnail-item .img {
  overflow: hidden;
  position: relative;
}

@media screen and (min-width: 768px) {
  .entry-list-thumbnail-item .img {
    width: 100%;
    height: 160px;
  }
}

@media screen and (max-width: 768px) {
  .entry-list-thumbnail-item .img {
    width: 100%;
    height: 120px;
  }
}

.entry-list-thumbnail-item .img img {
  position: absolute;
  width: 100%;
  max-width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .entry-list-thumbnail-item-txt {
    padding: .8em .7em;
  }
}

@media screen and (max-width: 768px) {
  .entry-list-thumbnail-item-txt {
    padding: .8em 0 1em;
  }
}

.entry-list-thumbnail-item-txt-ttl {
  font-size: .9rem;
}

.entry-list-thumbnail-item-txt-date {
  font-size: .8rem;
  margin-bottom: .2rem;
  color: #999;
}

.entry-list-thumbnail-item:hover {
  box-shadow: 0 0 0.6em rgba(0, 0, 0, 0.4);
  transition-duration: 0.6s;
}

.l-ft-bnr ul {
  margin-top: 40px;
}

.l-ft-bnr a {
  display: block;
}

@media screen and (min-width: 768px) {
  .l-ft-bnr ul {
    display: flex;
    justify-content: center;
  }
  .l-ft-bnr li {
    margin: 0 1em;
  }
}

@media screen and (max-width: 768px) {
  .l-ft-bnr {
    text-align: center;
  }
  .l-ft-bnr li {
    margin: 1em 0;
  }
}

.l-footer {
  background-color: #e6e3d9;
  margin-top: 2rem;
  font-size: 0.8256rem;
}

@media screen and (min-width: 768px) {
  .l-footer {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
  }
}

@media screen and (max-width: 768px) {
  .l-footer {
    padding-top: 1.2rem;
    padding-bottom: 2rem;
  }
}

.l-footer .inner {
  padding-bottom: 2em;
}

@media screen and (min-width: 768px) {
  .l-footer .inner ul {
    display: flex;
    justify-content: center;
  }
  .l-footer .inner ul li {
    margin: 1em;
  }
}

@media screen and (max-width: 768px) {
  .l-footer .inner {
    text-align: center;
  }
  .l-footer .inner ul:first-child {
    margin-bottom: 2em;
  }
  .l-footer .inner li {
    margin: 1em 0;
  }
}

.l-footer address {
  margin-bottom: 2em;
  text-align: center;
  font-style: normal;
}

.l-footer address p + p {
  margin-top: 1em;
}

.l-footer .copyright {
  text-align: center;
}

.l-header {
  position: relative;
  box-shadow: 0 0.2em 0.5em rgba(0, 0, 0, 0.1);
  z-index: 10;
}

@media screen and (max-width: 768px) {
  .l-header {
    position: sticky;
    width: 100%;
    top: -1px;
    left: 0;
    z-index: 10000;
    background: #fff;
  }
}

@media screen and (min-width: 1100px) {
  .l-header img {
    height: 120px;
    margin-bottom: 1.6em;
  }
}

@media screen and (max-width: 1100px) {
  .l-header img {
    height: 75px;
  }
}

.l-header-lead {
  font-size: 0.71002rem;
  color: #aaa17f;
}

@media screen and (min-width: 1100px) {
  .l-header-lead {
    padding-bottom: 1.2em;
    text-align: right;
  }
}

@media screen and (max-width: 1100px) {
  .l-header-lead {
    padding: 2em 18% 2em 5%;
    background-color: #fff;
  }
}

.l-header-lead2 {
  font-size: 0.71002rem;
  color: #554400;
}

@media screen and (min-width: 1100px) {
  .l-header-lead2 {
    position: absolute;
    top: 16%;
    left: calc(50% - 550px);
  }
}

@media screen and (max-width: 1100px) {
  .l-header-lead2 {
    padding: .5em;
    background-color: #e6e3d9;
    text-align: center;
  }
}

.l-header-cont {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  font-size: 0.71002rem;
}

@media screen and (min-width: 1100px) {
  .l-header-cont {
    padding-top: 1.6em;
  }
}

@media screen and (max-width: 1100px) {
  .l-header-cont {
    align-items: center;
    padding-top: 1.2em;
    padding-bottom: 1.6em;
  }
}

.l-header-contact {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}

@media screen and (min-width: 1100px) {
  .l-header-contact {
    margin-bottom: 1.8em;
  }
}

@media screen and (max-width: 1100px) {
  .l-header-contact {
    background-color: #fff;
    padding: 1em 18% 2em 5%;
    align-items: flex-start;
    flex-direction: column-reverse;
  }
}

@media screen and (min-width: 1100px) {
  .l-header-contact .list-office {
    margin-right: 2em;
  }
}

@media screen and (max-width: 1100px) {
  .l-header-contact .list-office {
    flex-direction: column;
    justify-content: center;
    margin-top: 2em;
  }
  .l-header-contact .list-office li {
    width: 100%;
    margin-bottom: .5em;
  }
}

.l-header-contact .pgh-tel {
  margin-top: .2em;
  font-size: 2.08em;
  color: #554400;
}

@media screen and (min-width: 1100px) {
  .gnav {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
    width: calc(100% - 280px);
    height: 100%;
    z-index: 1;
  }
}

@media screen and (max-width: 1100px) {
  .gnav {
    display: none;
    position: fixed;
    overflow: scroll;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #d9f2f9;
    z-index: 999;
  }
  .gnav-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: scroll;
  }
}

.gnav-inner-menu .menu-gnav-container {
  position: relative;
}

@media screen and (max-width: 1100px) {
  .gnav-inner-menu .menu-gnav-container {
    margin: 20px 0;
  }
}

@media screen and (min-width: 1100px) {
  .gnav-inner-menu .menu-gnav-container .menu {
    display: flex;
    justify-content: space-between;
    font-size: 0.8256rem;
    font-weight: bold;
  }
  .gnav-inner-menu .menu-gnav-container .menu > .menu-item > a {
    display: block;
    padding: .8em 1em;
    border-bottom: 4px solid #fff;
  }
  .gnav-inner-menu .menu-gnav-container .menu > .menu-item .sub-menu {
    opacity: 0;
    z-index: -10;
    pointer-events: none;
    position: absolute;
    top: 3.5em;
    left: 0;
    width: 100%;
    padding: 1.6em;
    background-color: #fff;
    box-shadow: 0 0.2em 0.2em rgba(0, 0, 0, 0.05);
    transition: 0.6s;
  }
  .gnav-inner-menu .menu-gnav-container .menu > .menu-item .sub-menu > li {
    position: relative;
    margin: .5em 0;
    padding-left: 1em;
  }
  .gnav-inner-menu .menu-gnav-container .menu > .menu-item .sub-menu > li:before {
    position: absolute;
    background-color: #00aad4;
    top: .6em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    overflow: hidden;
    content: '';
  }
  .gnav-inner-menu .menu-gnav-container .menu > .menu-item:hover .sub-menu {
    opacity: 1;
    z-index: 10;
    pointer-events: auto;
    transition: 0.6s;
  }
  .gnav-inner-menu .menu-gnav-container .menu > .menu-item:hover > a {
    opacity: 1;
    color: #00aad4;
    border-bottom: 4px solid #00aad4;
  }
}

@media screen and (max-width: 1100px) {
  .gnav-inner-menu .menu-gnav-container .menu {
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 1.6em;
    position: relative;
  }
  .gnav-inner-menu .menu-gnav-container .menu a {
    width: 100%;
    padding: 1em 5%;
  }
  .gnav-inner-menu .menu-gnav-container .menu .sub-menu {
    display: none;
    font-size: .8em;
    background-color: rgba(255, 255, 255, 0.4);
    padding: 10px 5% 10px 7.5%;
  }
  .gnav-inner-menu .menu-gnav-container .menu > li > a:has(+ .sub-menu) {
    position: relative;
  }
  .gnav-inner-menu .menu-gnav-container .menu > li > a:has(+ .sub-menu)::after {
    position: absolute;
    top: 50%;
    right: 8%;
    translate: 0 -50%;
    rotate: 90deg;
    transform-origin: center;
    display: block;
    width: 1em;
    height: 1em;
    content: '';
    background-image: url("data:image/svg+xml;utf8,<svg width='10' height='16' viewBox='0 0 10 16' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M0.231804 0.359841C0.585368 -0.0644363 1.21593 -0.12176 1.64021 0.231804L9.64021 6.89847C9.8682 7.08847 10 7.36991 10 7.66669C10 7.96347 9.8682 8.24492 9.64021 8.43491L1.64021 15.1016C1.21593 15.4551 0.585368 15.3978 0.231804 14.9735C-0.12176 14.5493 -0.0644363 13.9187 0.359841 13.5651L7.43798 7.66669L0.359841 1.76825C-0.0644363 1.41468 -0.12176 0.784117 0.231804 0.359841Z' fill='%23554400'/></svg>");
    background-size: 100% 100%;
    transition: .4s;
  }
  .gnav-inner-menu .menu-gnav-container .menu > li > a.is-open:has(+ .sub-menu)::after {
    rotate: -90deg;
  }
}

.gnav-inner-menu .menu-gnav-sub-sp-container {
  position: relative;
  margin-bottom: 3rem;
  background-color: #fff;
  border-radius: .5em;
  padding: 10px 5% 24px;
  margin: 0 8% 30px;
}

@media screen and (min-width: 1100px) {
  .gnav-inner-menu .menu-gnav-sub-sp-container {
    display: none;
  }
}

.gnav-inner-menu .menu-gnav-sub-sp-container a {
  width: 100%;
  padding: .5em 0;
}

.gnav-sp-btnArea {
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

@media screen and (min-width: 1100px) {
  .gnav-sp-btnArea {
    display: none;
  }
}

.gnav-sp-btnArea a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 1em;
}

.gnav-sp-btnArea a span {
  line-height: 1;
  font-size: 0.71002rem;
  font-weight: bold;
  color: #00aad4;
}

.gnav-sp-tel {
  margin-right: 24px;
}

.gnav-sp-tel img {
  height: 24px;
}

.gnav-sp-mail {
  margin-right: 8px;
}

.gnav-sp-mail svg {
  width: 32px;
  height: auto;
}

.gnav-sp-btn {
  position: relative;
  width: 24px;
  height: 30px;
  margin-left: 1.2em;
  z-index: 1000;
}

.gnav-sp-btn span {
  display: block;
  width: 100%;
  height: 1px;
  background-color: #554400;
  position: absolute;
  transition-duration: 0.6s;
}

.gnav-sp-btn span:nth-of-type(1) {
  top: 25%;
}

.gnav-sp-btn span:nth-of-type(2) {
  top: 50%;
}

.gnav-sp-btn span:nth-of-type(3) {
  top: 75%;
}

.gnav-sp-btn.is-open span {
  background-color: #554400;
  transition-duration: 0.6s;
}

.gnav-sp-btn.is-open span:nth-of-type(1) {
  top: 50%;
  transform: rotate(45deg);
}

.gnav-sp-btn.is-open span:nth-of-type(2) {
  display: none;
}

.gnav-sp-btn.is-open span:nth-of-type(3) {
  top: 50%;
  transform: rotate(-45deg);
}

.l-contents a {
  color: #00aad4;
  text-decoration: underline;
}

@media screen and (min-width: 768px) {
  .l-contents-cont {
    display: flex;
    justify-content: space-between;
  }
  .l-contents-cont-main {
    width: 72%;
  }
  .l-contents-cont-sub {
    width: 24%;
  }
}

@media screen and (max-width: 768px) {
  .l-contents-cont-main {
    margin-bottom: 2rem;
  }
}

.l-contents-cont .sub-cont {
  margin-bottom: 2rem;
}

.breadcrumb {
  font-size: 0.71002rem;
}

@media screen and (min-width: 768px) {
  .page .breadcrumb {
    width: 1100px;
    margin: 1rem auto 0;
  }
}

@media screen and (max-width: 768px) {
  .page .breadcrumb {
    width: 90%;
    margin: 1rem auto 0;
  }
}

.breadcrumb li {
  display: inline-block;
}

.breadcrumb a {
  position: relative;
  padding-right: 1.6em;
}

.breadcrumb a::after {
  position: absolute;
  content: '>';
  right: .2em;
}

@media screen and (min-width: 768px) {
  .breadcrumb {
    padding-bottom: 2rem;
  }
}

@media screen and (max-width: 768px) {
  .breadcrumb {
    padding-bottom: 1rem;
  }
  .breadcrumb .wrap-inner {
    padding: .8em 0;
    margin-bottom: 2rem;
  }
  .breadcrumb li {
    display: block;
  }
}

.c-ttl {
  background: url(img/bg-01.png) 0 0 no-repeat #d9f2f9;
  background-size: cover;
}

.c-article-list {
  margin-top: .5em;
}

.c-article-list a {
  margin-bottom: .8em;
  padding: 0 .1em .8em;
  border-bottom: 1px dotted #aaa17f;
}

@media screen and (min-width: 768px) {
  .c-article-list a {
    display: flex;
  }
}

.c-article-list .date {
  margin-right: 1.8em;
  color: #999;
}

.c-share-btn {
  display: flex;
  justify-content: space-between;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.c-share-btn > li {
  width: 32%;
}

.c-share-btn a {
  display: block;
  padding: .8em;
  border-radius: .4em;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  color: #fff;
}

.c-share-btn .fb a {
  background-color: #3C5A99;
}

.c-share-btn .tw a {
  background-color: #1DA1F2;
}

.c-share-btn .ln a {
  background-color: #00B900;
}

.page-ttl {
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .page-ttl {
    height: 300px;
  }
}

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

.page-ttl img {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .page-ttl img {
    transform: translateY(-25%);
  }
}

.page-ttl-txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  letter-spacing: .1em;
  font-size: 1.3824rem;
  font-weight: bold;
  color: #fff;
  text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.5);
  z-index: 1;
}

@media screen and (min-width: 1100px) {
  .page-ttl-txt {
    width: 1100px;
    padding-left: 10%;
  }
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .page-ttl-txt {
    width: 90%;
    padding-left: 10%;
  }
}

@media screen and (max-width: 768px) {
  .page-ttl-txt {
    width: 90%;
    text-align: center;
  }
}

.page-ttl-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover !important;
  z-index: 0;
}

.page-cont {
  overflow: hidden;
}

.page-cont .wrap-inner {
  position: relative;
}

.page-cont .wrap-inner .obj {
  position: absolute;
  width: 1px;
  height: 1px;
  background-color: #d9f2f9;
  z-index: -1;
}

.page-cont .wrap-inner .obj2 {
  position: absolute;
  width: 1px;
  height: 1px;
  background-color: #7fd4e9;
  z-index: -2;
}

.page-cont .wrap-inner.obj-pink .obj {
  background-color: #FBE3F0;
}

.page-cont .wrap-inner.obj-pink .obj2 {
  background-color: #F2A0CC;
}

.page-cont .wrap-inner.obj-green .obj {
  background-color: #DEF5EC;
}

.page-cont .wrap-inner.obj-green .obj2 {
  background-color: #8FDEC0;
}

.page-cont .wrap-inner.is-active .obj {
  width: 30%;
  height: 40%;
  transition: 3s;
}

.page-cont .wrap-inner.is-active .obj2 {
  width: 30%;
  height: 40%;
  transition: 3s;
  transition-delay: .5s;
}

.page-cont #c01 .obj, .page-cont #c03 .obj, .page-cont #c05 .obj, .page-cont #c07 .obj {
  top: 5%;
  left: 5%;
}

.page-cont #c02 .obj, .page-cont #c04 .obj, .page-cont #c06 .obj, .page-cont #c08 .obj {
  bottom: 5%;
  right: 5%;
}

.page-cont #c01 .obj2, .page-cont #c03 .obj2, .page-cont #c05 .obj2, .page-cont #c07 .obj2 {
  bottom: 30%;
  right: 50%;
}

.page-cont #c02 .obj2, .page-cont #c04 .obj2, .page-cont #c06 .obj2, .page-cont #c08 .obj2 {
  top: 30%;
  left: 50%;
}

.price-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 1rem;
}

.price-menu a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1.2em 1em 2.4em;
  border-radius: 4px;
  background-color: #00aad4;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
}

.price-menu a::after {
  position: absolute;
  bottom: .8em;
  left: 50%;
  transform: translateX(-50%);
  width: 16px;
  height: 10px;
  content: '';
  background: url(img/icon_arr_01.svg) 0 0 no-repeat;
  background-size: 100% 100%;
  z-index: 10;
}

.price-menu li {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .price-menu li {
    width: 24%;
    margin: 0 .5% 1rem;
    font-size: 1.152rem;
  }
}

@media screen and (max-width: 768px) {
  .price-menu li {
    width: 46%;
    margin: 0 2% 1rem;
  }
}

@media screen and (max-width: 768px) {
  .price-menu li:nth-last-of-type(-n+3) {
    width: 100%;
    margin: 0 2% 1rem;
    text-align: left;
  }
  .price-menu li:nth-last-of-type(-n+3) img {
    margin-right: .8em;
  }
  .price-menu li:nth-last-of-type(-n+3) a {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    padding: 1.4em 1em;
  }
  .price-menu li:nth-last-of-type(-n+3) a::after {
    bottom: 50%;
    left: 95%;
    transform: translate(-50%, 50%) rotate(-90deg);
    transform-origin: center;
  }
}

.price-menu em {
  position: absolute;
  display: block;
  top: 0;
  left: 50%;
  transform: translate(-50%, -45%);
  border: 2px solid #00aad4;
  border-radius: 50px;
  background-color: #fff;
  padding: .5em 1em .25em;
  line-height: 1;
  text-align: center;
  font-size: 0.71002rem;
  color: #00aad4;
}

@media screen and (min-width: 768px) {
  .price-feature {
    display: flex;
    justify-content: center;
  }
  .price-feature > div {
    width: 24%;
  }
  .price-feature > div:not(:last-child) {
    margin-right: 2%;
  }
}

.price-feature > div {
  margin-top: 1.8em;
  margin-bottom: 1.8em;
  padding: 0 1.6em 1.6em;
  border: 1px solid #00aad4;
  border-radius: .5em;
}

.price-feature > div .ttl-02 {
  margin-top: -.8em;
}

.price-feature > div .ttl-02 p {
  display: inline-block;
  padding: 0 .2em;
  background-color: #fff;
}

.price-feature > div span {
  font-size: 1.3824rem;
}

#cinderella .ttl-01 span {
  color: #e6409a;
}

#cinderella .price-feature > div {
  border-color: #e6409a;
}

#trial .ttl-01 span {
  color: #aaa17f;
}

#trial .price-feature > div {
  border-color: #aaa17f;
}

.team {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 3rem 0 0;
}

.team-member {
  margin-bottom: 2rem;
}

@media screen and (min-width: 768px) {
  .team-member {
    width: 48%;
  }
  .team-member:nth-of-type(2n) {
    margin-left: 4%;
  }
}

@media screen and (max-width: 768px) {
  .team-member {
    padding-top: 1em;
    border-top: 1px dotted #aaa17f;
  }
}

.team-member-inner {
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
  .team-member-inner {
    display: flex;
    justify-content: space-between;
  }
  .team-member-inner > div {
    width: 48%;
  }
  .team-member-inner > div:nth-of-type(2) div {
    float: right;
    overflow: hidden;
  }
}

.team-ttl {
  font-size: 0.8256rem;
  color: #00aad4;
}

.team-name {
  margin-bottom: 1em;
  font-family: "Sawarabi Mincho", serif;
  font-size: 1.152rem;
}

.team-name span {
  font-size: 0.8256rem;
  color: #00aad4;
}

@media screen and (min-width: 768px) {
  .team-name span {
    margin-left: 1em;
  }
}

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

.team-msg {
  position: relative;
  padding: 1em;
}

.team-msg:before {
  position: absolute;
  top: 0;
  left: 0;
  border-bottom: 50px solid transparent;
  border-left: 50px solid #d9f2f9;
  content: '';
  z-index: -1;
}

.team-msg:after {
  /*
      position: absolute;
      bottom: 0;
      right: 0;
      border-top: 50px solid transparent;
      border-right: 50px solid $c-sub3;
      content: '';
      z-index: -1;
    */
}

.team .list-d01 {
  margin-bottom: 1em;
}

.team .img-circle > p {
  box-shadow: 0 0 0.4em rgba(0, 0, 0, 0.1);
}

@media screen and (min-width: 768px) {
  .team .img-circle > p {
    width: 220px;
    height: 220px;
    margin: .5em;
  }
}

@media screen and (max-width: 768px) {
  .team .img-circle > p {
    width: 180px;
    height: 180px;
    margin: 1.6em auto;
  }
}

.team .img-circle > p img {
  width: 100%;
  height: auto;
  max-height: initial;
}

@media screen and (min-width: 768px) {
  .team .team-member:nth-of-type(3) .img-circle img {
    margin-top: -20px;
  }
}

@media screen and (max-width: 768px) {
  .team .team-member:nth-of-type(3) .img-circle img {
    margin-top: -10px;
  }
}

.women-proposal [class*='ttl'] em {
  font-size: 150%;
  line-height: 1;
  font-style: italic;
  font-weight: normal;
}

.qa-item {
  margin-bottom: 3rem;
}

.qa-item:last-child {
  margin-bottom: 0;
}

.qa-item-q, .qa-item-a {
  position: relative;
  padding-left: 3.6rem;
  min-height: 3rem;
}

.qa-item-q:before, .qa-item-a:before {
  position: absolute;
  top: -.4em;
  left: 0;
  padding: .5em .6em;
  border-radius: .5em;
  line-height: 1;
  font-size: 1.3824rem;
  font-weight: normal;
  color: #fff;
}

.qa-item-q {
  font-size: 1.152rem;
  font-weight: bold;
}

.qa-item-q:before {
  content: 'Q';
  background-color: #00aad4;
}

.qa-item-a:before {
  content: 'A';
  background-color: #f99;
}

.company-read {
  overflow: hidden;
  background: url(img/bg-01.png) 0 0 no-repeat #d9f2f9;
  background-size: cover;
}

@media screen and (min-width: 768px) {
  .company-read .img-circle {
    float: right;
    margin: 0 0 2rem 4rem;
  }
}

@media screen and (max-width: 768px) {
  .company-read .img-circle {
    margin-top: 1rem;
  }
}

.sidebar-inner {
  margin-bottom: 2rem;
}

.sidebar-inner label {
  display: none;
}

@media screen and (max-width: 768px) {
  .side_bnr {
    margin: 0 auto;
    width: fit-content;
  }
}

.side_bnr li + li {
  margin-top: 1em;
}

.side_bnr a, .side_bnr img {
  display: block;
  width: 192px;
}

.t-kv {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .t-kv {
    height: 400px;
    background: url(img/kv-bg.jpg) center center no-repeat;
    background-size: cover;
  }
  .t-kv-inner {
    display: flex;
    justify-content: center;
    flex-direction: row;
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .t-kv.wrap-inner {
    padding: 0;
  }
  .t-kv.wrap-inner video {
    width: 100%;
    vertical-align: bottom;
  }
}

.t-kv .t-kv-label {
  position: absolute;
  top: 5px;
  right: 5px;
  font-size: .8em;
  color: #fff;
}

.t-kv .t-kv-img {
  max-width: 260px;
  position: relative;
}

.t-kv .t-kv-img img {
  height: 400px;
}

.t-kv .t-kv-img span {
  position: absolute;
  bottom: 36px;
  right: 10px;
  font-size: .8em;
  text-align: right;
  color: #fff;
}

.t-kv .t-kv-txt {
  padding-top: 5%;
  padding-left: 40px;
}

.t-kv .t-kv-txt1 {
  margin-bottom: .5em;
  color: #554400;
  font-weight: bold;
  font-family: "Noto Serif JP", serif;
  text-shadow: 2px  2px 1px #fff, -2px  2px 1px #fff, 2px -2px 1px #fff, -2px -2px 1px #fff, 2px  0px 1px #fff, 0px  2px 1px #fff, -2px  0px 1px #fff, 0px -2px 1px #fff;
}

@media screen and (min-width: 1100px) {
  .t-kv .t-kv-txt1 {
    font-size: 42px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .t-kv .t-kv-txt1 {
    font-size: 36px;
  }
}

.t-kv .t-kv-txt1 span {
  color: #e6409a;
  font-weight: bold;
}

.t-kv .t-kv-txt2 {
  font-weight: bold;
  color: #554400;
  font-family: "Noto Serif JP", serif;
  text-shadow: 1px  1px .5px #fff, -1px  1px .5px #fff, 1px -1px .5px #fff, -1px -1px .5px #fff, 1px  0px .5px #fff, 0px  1px .5px #fff, -1px  0px .5px #fff, 0px -1px .5px #fff;
}

@media screen and (min-width: 1100px) {
  .t-kv .t-kv-txt2 {
    font-size: 24px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .t-kv .t-kv-txt2 {
    font-size: 18px;
  }
}

/*
.t-topics {
  position: relative;
  z-index: 50;
  box-shadow: 0 .2em .5em rgba(0,0,0,0.1);
  &-outer {
    position: absolute;
    @include mq(pt){ bottom: 24px; }
    @include mq()  { bottom: 0; transform: translateY(47%); }
  }
  &-ttl {
    padding: .5em 1em;
    background-color: $c-main;
    color: #fff;
    span { display: block; font-size: $pgh-sub2; color: #fff; }
  }
  &-list {
    background-color: #fff;
    position: relative;
    overflow: hidden;
    li { margin-right: 4em; overflow: hidden;  white-space: nowrap; }
    .slick-prev, .slick-next {
      position: absolute;
      top: 50%;
      transform: translateY(-25%);
      color: $c-main2;
      opacity: 1;
      z-index: 5;
      &::before { color: $c-main; }
    }
  }
  &-btn {
    background-color: $c-main;
    border-left: 1px solid rgba($color: #ffffff, $alpha: 0.4);
    color: #fff;
    a {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: .5em;
      height: 100%;
      text-decoration: none;
      color: #fff;
    }
  }
  @include mq(pt){
    display: flex;
    &-ttl {
      width: 25%;
    }
    &-list {
      width: 65%;
      padding: 1em;
      .slick-prev { left: 94%; }
      .slick-next { right: -1%; }
    }
    &-btn {
      width: 10%;
    }
  }
  @include mq(){
    display: flex;
    flex-wrap: wrap;
    &-ttl {
      order: 1;
      width: 80%;
    }
    &-list {
      order: 3;
      padding: 1em 15% 1em 6%;
      .slick-prev { left: 100%; }
      .slick-next { right: -15%; }
    }
    &-btn {
      order: 2;
      width: 20%;
    }
  }
}
*/
.t-topics {
  position: relative;
  z-index: 5;
  margin-top: -30px;
  box-shadow: 0 0.2em 0.5em rgba(0, 0, 0, 0.1);
  background-color: #fff;
  color: #554400;
}

@media screen and (min-width: 1100px) {
  .t-topics {
    padding: 20px 40px;
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 1100px) {
  .t-topics {
    padding: 20px 8%;
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 768px) {
  .t-topics {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.t-topics a {
  color: #554400;
  text-decoration: none;
}

.t-topics-ttl {
  font-family: "Noto Serif JP", serif;
  font-size: 24px;
}

@media screen and (min-width: 768px) {
  .t-topics-ttl {
    padding-right: 40px;
  }
}

@media screen and (max-width: 768px) {
  .t-topics-ttl {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #554400;
  }
}

.t-topics-ttl span {
  font-size: 12px;
  color: #554400;
}

.t-topics-list {
  font-size: .86em;
}

@media screen and (min-width: 768px) {
  .t-topics-list {
    margin-right: auto;
    padding: .2em 20px .2em 32px;
    border-left: 1px solid #554400;
  }
}

.t-topics-list li + li {
  margin-top: .4em;
}

@media screen and (min-width: 768px) {
  .t-topics-btn {
    margin-left: auto;
  }
}

@media screen and (max-width: 768px) {
  .t-topics-btn {
    text-align: right;
    margin-top: 12px;
  }
}

.t-topics-btn a {
  display: inline-block;
  word-break: keep-all;
  background-color: rgba(85, 68, 0, 0.2);
}

@media screen and (min-width: 768px) {
  .t-topics-btn a {
    padding: .5rem 1.5rem;
  }
}

@media screen and (max-width: 768px) {
  .t-topics-btn a {
    padding: .25rem 1.5rem;
  }
}

.t-topics-spot {
  display: block;
  margin-bottom: 40px;
}

.t-topics-spot a {
  display: block;
  width: 100%;
  text-decoration: underline !important;
  color: #00aad4 !important;
}

@media screen and (min-width: 768px) {
  .t-topics-spot p, .t-topics-spot a {
    text-align: center !important;
  }
}

.t-point {
  padding-top: 0 !important;
  background: url(img/top-point-bg.jpg) center center no-repeat;
  background-size: cover;
  color: #554400;
}

@media screen and (min-width: 768px) {
  .t-point {
    padding-bottom: 6rem !important;
  }
}

.t-point a {
  text-decoration: none;
  color: #554400;
}

.t-point span {
  font-weight: bold;
  font-size: 0.5em;
  color: #554400;
}

.t-point-ttl {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .t-point-ttl {
    margin-bottom: 30px;
  }
}

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

.t-point-ttl p {
  position: relative;
  display: inline-block;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .t-point-ttl p {
    font-size: 42px;
  }
}

@media screen and (max-width: 768px) {
  .t-point-ttl p {
    font-size: 24px;
  }
}

.t-point-ttl p::before, .t-point-ttl p::after {
  position: absolute;
  top: 50%;
  background-color: #554400;
  content: '';
}

@media screen and (min-width: 768px) {
  .t-point-ttl p::before, .t-point-ttl p::after {
    width: 180px;
    height: 34px;
  }
}

@media screen and (max-width: 768px) {
  .t-point-ttl p::before, .t-point-ttl p::after {
    width: 90px;
    height: 17px;
  }
}

.t-point-ttl p::before {
  left: 0;
  transform: translate(-110%, -50%);
  background: url(img/top-point-ttl-l.png) center center no-repeat;
  background-size: 100% auto;
}

.t-point-ttl p::after {
  right: 0;
  transform: translate(110%, -50%);
  background: url(img/top-point-ttl-r.png) center center no-repeat;
  background-size: 100% auto;
}

@media screen and (min-width: 768px) {
  .t-point-inner {
    display: flex;
    justify-content: space-between;
    padding: 0 40px;
  }
}

.t-point-item {
  display: block;
  position: relative;
  background-color: #fff;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .t-point-item {
    width: 32%;
    padding: 50px 25px;
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  .t-point-item {
    margin-right: 2.5%;
    padding: 20px 25px;
  }
  .t-point-item:not(:first-child) {
    margin-top: 8px;
  }
  .t-point-item a span {
    display: inline;
    margin: 0;
    line-height: 1;
  }
}

@media screen and (min-width: 768px) {
  .t-point-item .ttl, .t-point-item .txt {
    width: 75%;
    margin: 0 auto;
  }
}

.t-point-item .ttl {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .t-point-item .ttl {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #554400;
    font-size: 1.4rem;
    line-height: 1.4;
  }
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .t-point-item .ttl {
    font-size: 1.2rem;
  }
}

.t-point-item .ttl em {
  font-size: 1.3em;
}

.t-point-item .txt {
  margin-top: .4em;
}

@media screen and (min-width: 1100px) {
  .t-point-item .txt {
    font-size: 1.2rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .t-point-item .txt {
    font-size: 1rem;
  }
}

@media screen and (max-width: 768px) {
  .t-point-item .txt {
    font-size: .8rem;
  }
}

.t-point-item .f {
  position: absolute;
  background: url(img/blt-frame-01.svg) 0 0 no-repeat;
  background-size: 100% 100%;
  opacity: .25;
  z-index: 3;
  content: '';
}

@media screen and (min-width: 768px) {
  .t-point-item .f {
    width: 70px;
    height: 70px;
  }
}

@media screen and (max-width: 768px) {
  .t-point-item .f {
    width: 28px;
    height: 28px;
  }
}

.t-point-item .f:nth-of-type(1) {
  top: 10px;
  left: 10px;
}

.t-point-item .f:nth-of-type(2) {
  top: 10px;
  right: 10px;
  transform: rotate(90deg);
}

.t-point-item .f:nth-of-type(3) {
  bottom: 10px;
  left: 10px;
  transform: rotate(-90deg);
}

.t-point-item .f:nth-of-type(4) {
  bottom: 10px;
  right: 10px;
  transform: rotate(180deg);
}

.t-point-item::after {
  position: absolute;
  border-radius: 50%;
  background: url(img/icon_arr_02.svg) center center no-repeat;
  background-size: 45% 45%;
  background-color: #fff;
  content: '';
}

@media screen and (min-width: 768px) {
  .t-point-item::after {
    width: 56px;
    height: 56px;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }
}

@media screen and (max-width: 768px) {
  .t-point-item::after {
    width: 40px;
    height: 40px;
    top: 50%;
    right: 0;
    transform: translate(50%, -50%);
  }
}

.t-greeting {
  text-align: center;
  background: url(img/bg-01.png) 0 0 no-repeat #d9f2f9;
  background-size: cover;
}

@media screen and (min-width: 768px) {
  .t-greeting {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .t-greeting .inner {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 2;
  }
  .t-greeting .inner .txt, .t-greeting .inner .img {
    margin: 0 2%;
  }
}

@media screen and (max-width: 768px) {
  .t-greeting {
    padding-top: 80px !important;
  }
  .t-greeting .img p {
    margin: 20px auto 0;
  }
}

.t-greeting .name {
  margin-top: 2em;
  font-family: "Sawarabi Mincho", serif;
}

.t-history,
.t-secure,
.t-overseas {
  overflow: hidden;
}

.t-history-cont,
.t-secure-cont,
.t-overseas-cont {
  margin-bottom: 2rem;
}

@media screen and (min-width: 768px) {
  .t-history-cont,
  .t-secure-cont,
  .t-overseas-cont {
    display: flex;
    justify-content: space-between;
  }
  .t-history-cont .inner,
  .t-secure-cont .inner,
  .t-overseas-cont .inner {
    width: 46%;
  }
}

@media screen and (max-width: 768px) {
  .t-history-cont .inner:not(:last-child),
  .t-secure-cont .inner:not(:last-child),
  .t-overseas-cont .inner:not(:last-child) {
    margin-bottom: 3rem;
  }
}

.t-history-cont .inner,
.t-secure-cont .inner,
.t-overseas-cont .inner {
  position: relative;
}

.t-history-cont .inner .obj,
.t-secure-cont .inner .obj,
.t-overseas-cont .inner .obj {
  position: absolute;
  width: 1px;
  height: 1px;
  background-color: #d9f2f9;
  z-index: -1;
}

.t-history-cont .inner .obj2,
.t-secure-cont .inner .obj2,
.t-overseas-cont .inner .obj2 {
  position: absolute;
  width: 1px;
  height: 1px;
  background-color: #7fd4e9;
  z-index: -2;
}

.t-history-cont .inner:nth-child(1) .obj,
.t-secure-cont .inner:nth-child(1) .obj,
.t-overseas-cont .inner:nth-child(1) .obj {
  top: -10%;
  left: -10%;
}

.t-history-cont .inner:nth-child(2) .obj,
.t-secure-cont .inner:nth-child(2) .obj,
.t-overseas-cont .inner:nth-child(2) .obj {
  bottom: -10%;
  right: -10%;
}

.t-history-cont .inner:nth-child(1) .obj2,
.t-secure-cont .inner:nth-child(1) .obj2,
.t-overseas-cont .inner:nth-child(1) .obj2 {
  bottom: 40%;
  right: 55%;
}

.t-history-cont .inner:nth-child(2) .obj2,
.t-secure-cont .inner:nth-child(2) .obj2,
.t-overseas-cont .inner:nth-child(2) .obj2 {
  top: 40%;
  left: 55%;
}

@media screen and (max-width: 768px) {
  .t-history-cont .inner:last-child .ttl-02,
  .t-secure-cont .inner:last-child .ttl-02,
  .t-overseas-cont .inner:last-child .ttl-02 {
    position: relative;
  }
  .t-history-cont .inner:last-child .ttl-02:before,
  .t-secure-cont .inner:last-child .ttl-02:before,
  .t-overseas-cont .inner:last-child .ttl-02:before {
    position: absolute;
    top: -.8em;
    left: 50%;
    transform: translateX(-50%);
    width: 40%;
    height: 1px;
    content: '';
    border-top: 1px solid #00aad4;
  }
}

.t-history-cont.is-active .obj,
.t-secure-cont.is-active .obj,
.t-overseas-cont.is-active .obj {
  width: 60%;
  height: 80%;
  transition: 3s;
}

.t-history-cont.is-active .obj2,
.t-secure-cont.is-active .obj2,
.t-overseas-cont.is-active .obj2 {
  width: 60%;
  height: 80%;
  transition: 3s;
  transition-delay: .5s;
}

.t-pickup {
  overflow: hidden;
  position: relative;
  background-color: #fff;
}

.t-pickup::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 500%;
  transform: translate(0, -50%) rotate(15deg);
  transform-origin: center left;
  background-color: rgba(217, 242, 249, 0.4);
  content: '';
  z-index: 0;
}

.t-pickup-ttl {
  position: relative;
  z-index: 2;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: bold;
  color: #00aad4;
}

@media screen and (min-width: 768px) {
  .t-pickup-ttl {
    font-size: 42px;
    margin-bottom: 1em;
  }
}

@media screen and (max-width: 768px) {
  .t-pickup-ttl {
    font-size: 32px;
    margin-bottom: .6em;
  }
}

.t-pickup-ttl span {
  font-size: .6em;
}

.t-pickup-ttl p {
  position: relative;
  display: inline-block;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .t-pickup-ttl p {
    font-size: 42px;
  }
}

@media screen and (max-width: 768px) {
  .t-pickup-ttl p {
    font-size: 24px;
  }
}

.t-pickup-ttl p::before, .t-pickup-ttl p::after {
  position: absolute;
  top: 50%;
  background: url(img/top-pickup-ttl.svg) center center no-repeat;
  background-size: 100% auto;
  opacity: .25;
  content: '';
}

@media screen and (min-width: 768px) {
  .t-pickup-ttl p::before, .t-pickup-ttl p::after {
    width: 68px;
    height: 110px;
  }
}

@media screen and (max-width: 768px) {
  .t-pickup-ttl p::before, .t-pickup-ttl p::after {
    width: 34px;
    height: 55px;
  }
}

.t-pickup-ttl p::before {
  left: 0;
  transform: translate(-120%, -50%);
}

.t-pickup-ttl p::after {
  right: 0;
  transform: translate(120%, -50%) scale(-1, 1);
}

.t-pickup a {
  color: #333;
  text-decoration: none;
}

.t-pickup a:hover {
  opacity: 1;
  box-shadow: 0 0.2em 0.5em rgba(0, 0, 0, 0.1);
}

.t-pickup-item {
  position: relative;
  display: flex;
  background-color: #fff;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .t-pickup-item {
    width: 32%;
    flex-direction: column;
  }
  .t-pickup-item:not(:nth-of-type(3n)) {
    margin-right: 2%;
  }
  .t-pickup-item:nth-of-type(n+4) {
    margin-top: 20px;
  }
}

@media screen and (max-width: 768px) {
  .t-pickup-item {
    width: 100%;
    align-items: center;
  }
  .t-pickup-item:not(:first-child) {
    margin-top: 15px;
  }
}

@media screen and (min-width: 768px) {
  .t-pickup-item .txt {
    padding: 20px;
  }
}

@media screen and (max-width: 768px) {
  .t-pickup-item .txt {
    padding: 10px 15px;
    width: 60%;
    font-size: .9em;
  }
}

.t-pickup-item .img {
  overflow: hidden;
}

@media screen and (min-width: 1100px) {
  .t-pickup-item .img {
    width: 100%;
    height: 234px;
  }
}

@media screen and (max-width: 768px) {
  .t-pickup-item .img {
    width: 40%;
  }
}

.t-pickup-item .img img {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .t-pickup-item-wrap {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }
}
