@charset "UTF-8";
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP:200,300,400,500,600,700,900&subset=japanese");
@import url(https://fonts.googleapis.com/css?family=Oswald&subset=latin,latin-ext);
@import url(https://fonts.googleapis.com/css?family=Sawarabi+Mincho);
@import url("https://fonts.googleapis.com/css?family=Prompt&display=swap");
@import url("https://fonts.googleapis.com/css?family=Open+Sans&display=swap");
html {
  visibility: hidden; }

html.wf-active,
html.loading-delay {
  visibility: visible; }

body {
  background-color: #fff;
  font: 100% Noto Sans Japanese, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
  color: #313131;
  zoom: 100%;
  -webkit-text-size-adjust: 100%;
  line-height: 200%;
  font-size: 13px;
  font-weight: 200; }
  @media (min-width: 600px) {
    body {
      font-size: 15px; } }
  @media (min-width: 960px) {
    body {
      font-size: 18px; } }

li {
  list-style: none; }

li::marker {
  color: #929292; }

table {
  border-collapse: collapse; }

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
li,
ol,
dl,
dt,
dd,
body,
figure {
  margin: 0px;
  padding: 0px; }

strong {
  font-weight: 700; }

h1,
h2 {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal; }

.tsukuardgothic_r {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal; }

.tsukuardgothic_b {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 700;
  font-style: normal; }

.notosans {
  font-family: Noto Sans Japanese, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif; }

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

a {
  color: #000;
  text-decoration: none; }
  a:visited, a:active {
    color: #000;
    text-decoration: none; }
  a:hover {
    text-decoration: underline; }

hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0; }

.hr_white {
  background-image: url("../img/common/hr01.png");
  background-size: 40px auto;
  background-position: center bottom;
  background-repeat: no-repeat;
  padding: 0 0 20px 0;
  margin: 0 0 20px 0; }
  @media (min-width: 600px) {
    .hr_white {
      background-size: 50px auto;
      padding: 0 0 30px 0;
      margin: 0 0 30px 0; } }
  @media (min-width: 960px) {
    .hr_white {
      padding: 0 0 30px 0;
      margin: 0 0 40px 0; } }

.hr_blue {
  background-image: url("../img/common/hr02.png");
  background-size: 40px auto;
  background-position: center bottom;
  background-repeat: no-repeat;
  padding: 0 0 20px 0;
  margin: 0 0 20px 0; }
  @media (min-width: 600px) {
    .hr_blue {
      background-size: 50px auto;
      padding: 0 0 30px 0;
      margin: 0 0 30px 0; } }
  @media (min-width: 960px) {
    .hr_blue {
      padding: 0 0 30px 0;
      margin: 0 0 40px 0; } }

.clear {
  clear: both;
  margin: 0px;
  padding: 0px; }

.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: "";
    display: table;
    clear: both; }

@media (min-width: 600px) {
  .box_flex {
    display: flex; } }

#contents,
#index_contents {
  margin: 0 0 0 0; }
  @media (min-width: 960px) {
    #contents,
    #index_contents {
      margin: 0 0 0 0; } }

.box700 {
  max-width: 700px;
  padding: 0 15px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box700 {
      padding: 0 20px; } }
  @media (min-width: 960px) {
    .box700 {
      padding: 0 30px; } }

.box800 {
  max-width: 800px;
  padding: 0 15px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box800 {
      padding: 0 20px; } }
  @media (min-width: 960px) {
    .box800 {
      padding: 0 30px; } }

.box900 {
  max-width: 900px;
  padding: 0 15px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box900 {
      padding: 0 20px; } }
  @media (min-width: 960px) {
    .box900 {
      padding: 0 30px; } }

.box1000 {
  max-width: 1000px;
  padding: 0 20px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box1000 {
      padding: 0 30px; } }
  @media (min-width: 960px) {
    .box1000 {
      padding: 0 40px; } }

.box1100 {
  max-width: 1100px;
  padding: 0 20px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box1100 {
      padding: 0 30px; } }
  @media (min-width: 960px) {
    .box1100 {
      padding: 0 40px; } }

.box1200 {
  max-width: 1200px;
  padding: 0 20px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box1200 {
      padding: 0 30px; } }
  @media (min-width: 960px) {
    .box1200 {
      padding: 0 40px; } }

.box1400 {
  max-width: 1400px;
  padding: 0 20px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box1400 {
      padding: 0 30px; } }
  @media (min-width: 960px) {
    .box1400 {
      padding: 0 40px; } }

.box1720 {
  max-width: 1720px;
  padding: 0 20px;
  margin: 0 auto; }
  @media (min-width: 600px) {
    .box1720 {
      padding: 0 30px; } }
  @media (min-width: 960px) {
    .box1720 {
      padding: 0 40px; } }

.box100pr {
  padding: 0 20px; }
  @media (min-width: 960px) {
    .box100pr {
      padding: 0 30px; } }

ul.pankuzu {
  font-size: 12px;
  color: #929292;
  padding-bottom: 40px; }
  ul.pankuzu li {
    display: inline;
    margin: 0; }
  ul.pankuzu li a {
    color: #929292; }
  ul.pankuzu li a:hover {
    text-decoration: none; }
  ul.pankuzu li a:after {
    content: " / ";
    margin: 0 15px; }
  @media (min-width: 960px) {
    ul.pankuzu {
      font-size: 16px;
      padding-bottom: 80px; } }

p.btn01 {
  margin: 0 0 30px 0; }
  p.btn01 a {
    display: inline-block;
    padding: 12px 60px !important;
    font-size: 110%;
    border: solid 1px #000000;
    transition: background 1s;
    font-weight: 400; }
  p.btn01 a:hover {
    text-decoration: none;
    background-color: #FFDE92;
    border: solid 1px #fff; }
  @media (min-width: 960px) {
    p.btn01 a {
      padding: 15px 60px !important; } }

p.btn02 {
  margin: 0 0 30px 0; }
  p.btn02 a {
    display: inline-block;
    padding: 12px 60px !important;
    font-size: 110%;
    transition: background 1s;
    background-color: #FFDE92;
    border: solid 1px #FFDE92;
    font-weight: 400; }
  p.btn02 a:hover {
    text-decoration: none;
    background-color: #fff;
    border: solid 1px #000000; }
  @media (min-width: 960px) {
    p.btn02 a {
      padding: 15px 60px !important; } }

p.btn03 {
  margin: 0 0 30px 0; }
  p.btn03 a {
    display: inline-block;
    padding: 12px 40px !important;
    font-size: 110%;
    transition: background 1s;
    background-color: #313131;
    border: solid 1px #313131;
    font-weight: 400;
    color: #ffffff; }
  p.btn03 a:hover {
    text-decoration: none;
    background-color: #fff;
    border: solid 1px #000000;
    color: #313131; }
  @media (min-width: 960px) {
    p.btn03 a {
      padding: 15px 40px !important; } }

.txtlink a {
  text-decoration: underline; }
.txtlink a:hover {
  text-decoration: none; }

.txtlink::before {
  content: "";
  border: 0;
  border-top: solid 2px #929292;
  border-right: solid 2px #929292;
  display: inline-block;
  transform: rotate(45deg);
  width: 6px;
  height: 6px;
  margin-right: 0.7em; }

.blog-card {
  position: relative;
  border: solid 1px #313131;
  border-radius: 10px;
  padding: 30px 10px 10px 10px;
  margin-top: 40px; }
  .blog-card .blog-card-tag {
    background-color: #313131;
    color: #ffffff;
    padding: 5px 5px 5px 25px;
    border-radius: 5px;
    font-size: 90%;
    font-weight: 700;
    background-image: url("../img/common/icon_page.png");
    background-repeat: no-repeat;
    background-position: 5px center;
    background-size: 15px auto;
    position: absolute;
    top: -15px;
    left: 10px; }
  .blog-card .blog-card-img {
    float: left;
    width: 40%; }
  .blog-card .blog-card-txt {
    float: right;
    width: 56%; }
    .blog-card .blog-card-txt p {
      display: none; }
  .blog-card h3::before {
    content: "" !important;
    padding-right: 0 !important; }
  @media (min-width: 600px) {
    .blog-card {
      padding: 40px 20px 20px 20px; }
      .blog-card .blog-card-tag {
        padding: 5px 10px 5px 35px;
        background-position: 7px center;
        background-size: 20px auto;
        left: 20px; }
      .blog-card .blog-card-img {
        width: 40%; }
      .blog-card .blog-card-txt {
        width: 56%; }
        .blog-card .blog-card-txt p {
          display: block;
          font-size: 14px;
          padding-bottom: 0 !important; }
      .blog-card h3 {
        font-size: 16px !important;
        text-align: left !important;
        padding-bottom: 0 !important; } }
  @media (min-width: 960px) {
    .blog-card {
      padding: 45px 20px 20px 20px; }
      .blog-card .blog-card-img {
        width: 23%; }
      .blog-card .blog-card-txt {
        width: 74%; }
        .blog-card .blog-card-txt p {
          font-size: 16px;
          line-height: 160%; }
      .blog-card h3 {
        font-size: 20px !important; } }

.form .form_s,
.form .form_m,
.form .form_l {
  width: 93%; }
.form label {
  display: inline-block;
  padding: 0 20px 5px 0; }
.form .align-center label {
  padding: 0 0 5px 0; }
.form select,
.form textarea,
.form input {
  margin: 5px 0;
  padding: 2%;
  font-size: 13px;
  font-family: Noto Sans Japanese, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
  background-color: #FAF7F0;
  border: none; }
.form input[type="radio"],
.form input[type="checkbox"] {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
  margin-right: 0.5em; }
.form .submit {
  background-color: #FFDE92;
  border: none;
  padding: 20px 0;
  width: 80%;
  font-size: 120%;
  font-weight: 700; }
.form input[type="submit"] {
  -webkit-appearance: none; }
.form .requisite {
  background-color: #FFDE92;
  border-radius: 20px;
  padding: 3px 12px 3px 10px;
  color: #6c4700;
  margin-left: 15px;
  font-size: 80%;
  font-weight: normal; }
@media (min-width: 600px) {
  .form label {
    padding: 0 30px 5px 0; }
  .form select,
  .form textarea,
  .form input {
    padding: 2%;
    font-size: 14px; }
  .form .form_s {
    width: 30%; }
  .form .form_m {
    width: 43%;
    margin-right: 2%; }
  .form .submit {
    padding: 25px 0;
    width: 60%; } }
@media (min-width: 960px) {
  .form select,
  .form textarea,
  .form input {
    padding: 2%;
    font-size: 16px; }
  .form .submit {
    padding: 30px 0;
    width: 400px; } }
@media (min-width: 1200px) {
  .form .form_m {
    display: inline-block; } }

.marker_orange {
  background: linear-gradient(transparent 60%, #fee2cc 60%); }

.marker_yellow {
  background: linear-gradient(transparent 60%, #fff788 60%); }

.main-color {
  color: #FFDE92; }

.main-color2 {
  color: #ffcd44; }

.main-color3 {
  color: #000; }

.font-red {
  color: #ff0004; }

.sub-color {
  color: #929292; }

.sub-color2 {
  color: #F9F9F9; }

.font110pr {
  font-size: 110%; }

.font120pr {
  font-size: 120%; }

.font130pr {
  font-size: 130%; }

.gradient {
  color: #FFDE92; }
  @media (min-width: 600px) {
    .gradient {
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-image: -webkit-linear-gradient(90deg, #0041ac, #00a0e9);
      /* For Chrome and Safari */
      background-image: -moz-linear-gradient(90deg, #0041ac, #00a0e9);
      /* For old Fx (3.6 to 15) */
      background-image: -ms-linear-gradient(90deg, #0041ac, #00a0e9);
      /* For pre-releases of IE 10*/
      background-image: -o-linear-gradient(90deg, #0041ac, #00a0e9);
      /* For old Opera (11.1 to 12.0) */
      background-image: linear-gradient(90deg, #0041ac, #00a0e9);
      /* Standard syntax; must be last */ } }

strong.gradient {
  font-weight: 700; }

.gradient2 {
  color: #000; }
  @media (min-width: 600px) {
    .gradient2 {
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-image: -webkit-linear-gradient(90deg, #000, #666);
      /* For Chrome and Safari */
      background-image: -moz-linear-gradient(90deg, #000, #666);
      /* For old Fx (3.6 to 15) */
      background-image: -ms-linear-gradient(90deg, #000, #666);
      /* For pre-releases of IE 10*/
      background-image: -o-linear-gradient(90deg, #000, #666);
      /* For old Opera (11.1 to 12.0) */
      background-image: linear-gradient(90deg, #000, #666);
      /* Standard syntax; must be last */ } }

/*IEで未対応の場合は以下で背景を非表示に*/
@media all and (-ms-high-contrast: none) {
  .gradient,
  .gradient2 {
    background: none; } }
.align-center {
  text-align: center; }

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

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

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }
  .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

.map {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }
  .map iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

.fadein {
  opacity: 0;
  transform: translateY(20px);
  transition: all 1s; }

.pb40 {
  padding-bottom: 40px !important; }

header {
  padding: 0;
  z-index: 10;
  position: relative; }
  header .header_logo {
    padding: 10px 80px 0 10px;
    max-width: 220px;
    height: auto; }
  header .header_gnav {
    display: none; }
  header .sns {
    display: none; }
  @media (min-width: 600px) {
    header .header_logo {
      max-width: 300px; } }
  @media (min-width: 960px) {
    header {
      padding: 0 11px 0 11px !important;
      text-align: center; }
      header .header_logo {
        padding: 10px 0 0 0;
        margin: 0 auto;
        text-align: center;
        max-width: 350px; }
      header .header_gnav {
        display: block;
        text-align: center; }
        header .header_gnav li {
          display: inline-block;
          font-size: 14px;
          padding: 0 20px; }
          header .header_gnav li a {
            color: #313131;
            display: block;
            padding: 0 0 20px 0;
            transition: all 0.3s; }
          header .header_gnav li a:hover {
            color: #ffcd44; }
      header .sns {
        display: block;
        position: absolute;
        top: 20px;
        right: 0;
        text-align: right;
        padding-right: 30px; }
        header .sns img {
          width: 20px;
          padding-left: 20px; } }
  @media (min-width: 1200px) {
    header {
      max-width: 1820px;
      margin: 0 auto;
      padding: 30px 0 10px 50px !important; }
      header .header_logo {
        text-align: left;
        float: left;
        max-width: 30%; }
        header .header_logo img {
          width: 380px !important; }
      header .header_gnav {
        float: right;
        padding: 40px 30px 0 0; }
        header .header_gnav li {
          padding: 0 0 0 25px;
          font-size: 14px; }
          header .header_gnav li a {
            padding: 0 0 20px 0; }
      header .sns {
        top: 20px;
        right: 10px; }
      header .header_r {
        float: right;
        width: 70%; } }
  @media (min-width: 1600px) {
    header {
      padding: 20px 20px 10px 50px !important; }
      header .header_logo {
        max-width: 30%; }
        header .header_logo img {
          width: 470px !important; }
      header .header_gnav {
        padding: 50px 20px 0 0; }
        header .header_gnav li {
          padding: 0 0 0 40px;
          font-size: 18px; }
          header .header_gnav li a {
            padding: 0 0 30px 0; }
      header .sns {
        top: 20px; }
      header .header_r {
        width: 70%; } }

.header_naka {
  background: #FFDE92; }
  @media (min-width: 1200px) {
    .header_naka .header_gnav li a {
      padding-bottom: 30px; }
    .header_naka .header_gnav li li a {
      padding-bottom: 18px;
      padding-top: 18px; } }

.dropmenu {
  *zoom: 1;
  list-style-type: none;
  padding: 0; }

.dropmenu:before,
.dropmenu:after {
  content: "";
  display: table; }

.dropmenu:after {
  clear: both; }

.dropmenu li {
  position: relative;
  margin: 0;
  padding: 0 0 0 0;
  text-align: center; }

.dropmenu li a {
  display: block;
  margin: 0;
  line-height: 1;
  text-decoration: none; }

.dropmenu li ul {
  list-style: none;
  position: absolute;
  z-index: 9999;
  top: 100%;
  left: 0;
  margin: 0 0 0 -15%;
  padding: 0;
  width: 300px; }

.dropmenu li ul li {
  width: 100%; }

.dropmenu li ul li a {
  padding: 13px 20px;
  text-align: left;
  background: #F9F9F9;
  font-size: 14px !important;
  font-weight: 700; }

#normal li ul {
  display: none; }

#normal li:hover ul {
  display: block; }

/*========= 検索窓のエリア ===============*/
#search-wrap {
  display: none; }
  @media (min-width: 960px) {
    #search-wrap {
      display: block;
      position: absolute;
      z-index: 2;
      top: 18px;
      right: 50px;
      /*テキスト入力input設定*/
      /*テキスト入力inputにフォーカスした時の形状*/ }
      #search-wrap #search-text {
        -webkit-appearance: none;
        width: 30px;
        /*テキスト入力エリアが伸びる前の横幅*/
        height: 30px;
        padding: 20px;
        border: none;
        background: url("../img/common/icon_search.png");
        background-repeat: no-repeat;
        background-size: 17px 17px;
        background-position: 10px center;
        transition: all 0.5s;
        /*transitionを使ってスムースに伸ばす*/
        outline: none;
        cursor: pointer;
        /*カーソルを指マークに*/
        border: solid 1px #fff; }
      #search-wrap #search-text:focus {
        width: 230px;
        /*テキスト入力エリアが伸びる後の横幅*/
        padding: 20px 0 20px 40px;
        border: solid 1px #ebebeb; } }
  @media (min-width: 1200px) {
    #search-wrap {
      right: 60px; } }

#nav-toggle {
  padding: 17px 15px 13px 15px;
  position: fixed;
  top: 0;
  right: 0;
  height: 34px;
  cursor: pointer; }
  #nav-toggle > div {
    position: relative;
    width: 36px; }
  #nav-toggle span {
    width: 100%;
    height: 2px;
    left: 0;
    display: block;
    background: #313131;
    position: absolute;
    transition: transform .6s ease-in-out, top .5s ease; }
    #nav-toggle span:nth-child(1) {
      top: 2px; }
    #nav-toggle span:nth-child(2) {
      top: 15px; }
    #nav-toggle span:nth-child(3) {
      top: 28px; }
  #nav-toggle:hover span:nth-child(1) {
    top: 4px; }
  #nav-toggle:hover span:nth-child(3) {
    top: 23px; }
  @media (min-width: 960px) {
    #nav-toggle {
      display: none; } }

.open #nav-toggle span {
  background: #313131; }
  .open #nav-toggle span:nth-child(1) {
    top: 15px;
    transform: rotate(45deg); }
  .open #nav-toggle span:nth-child(2) {
    top: 15px;
    width: 0;
    left: 50%; }
  .open #nav-toggle span:nth-child(3) {
    top: 15px;
    transform: rotate(-45deg); }

/* z-index */
#nav-toggle {
  z-index: 1000; }

#container {
  z-index: 900; }

#gloval-nav {
  background: #F9F9F9;
  color: #000;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 990;
  visibility: hidden;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  opacity: 0;
  transition: opacity .6s ease, visibility .6s ease;
  /* 疑似要素でアイコンを表示 */
  /* オープン時 */
  /* オープン時にアニメーションを設定 */ }
  #gloval-nav details {
    padding-bottom: 0; }
  #gloval-nav summary {
    position: relative;
    display: block;
    /* 矢印を消す */
    cursor: pointer; }
  #gloval-nav summary::-webkit-details-marker {
    display: none;
    /* 矢印を消す */ }
  #gloval-nav summary:after {
    content: "+";
    padding-left: 1em; }
  #gloval-nav details[open] summary:after {
    content: "-"; }
  #gloval-nav details[open] ul {
    animation: fadeIn 0.5s ease; }
@keyframes fadeIn {
  0% {
    opacity: 0;
    /* 透明 */
    transform: translateY(-10px);
    /* 上から表示 */ }
  100% {
    opacity: 1;
    transform: none; } }
.gloval-nav_bg {
  height: 90%;
  overflow: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch; }

#gloval-nav {
  text-align: center; }
  #gloval-nav .logo {
    padding: 20px 0 0 0;
    display: block;
    text-align: left; }
    #gloval-nav .logo img {
      width: 270px;
      margin-bottom: 10px; }
    #gloval-nav .logo a {
      width: 100%;
      display: block; }
  #gloval-nav .sns a {
    display: inline-block !important; }
  #gloval-nav .sns img {
    width: 20px; }
  #gloval-nav h3 {
    margin: 0 20px 0 20px;
    padding: 5px 0;
    font-size: 12px;
    color: #ffcd44;
    border-bottom: solid 3px #ffcd44;
    opacity: 0;
    transform: translateX(200px);
    transition: transform .6s ease, opacity .2s ease; }
  #gloval-nav a {
    display: block;
    color: #313131;
    text-decoration: none;
    padding: 7px 5% 7px 5%;
    transition: color .6s ease; }
    #gloval-nav a:hover {
      color: #313131; }
  #gloval-nav ul {
    list-style: none;
    padding: 0 10px 10px 10px; }
    #gloval-nav ul li {
      opacity: 0;
      padding: 5px 0 0 0; }
  @media (min-width: 600px) {
    #gloval-nav .logo {
      text-align: center;
      padding: 20px 0 0 0; }
      #gloval-nav .logo img {
        width: 60%;
        margin-bottom: 40px; }
    #gloval-nav .tel {
      padding: 15px 2%;
      font-size: 13px; }
      #gloval-nav .tel a {
        font-size: 20px; }
    #gloval-nav h3 {
      margin: 0 40px 10px 40px;
      font-size: 14px; }
    #gloval-nav a {
      padding: 10px 0 10px 0; }
    #gloval-nav ul {
      padding: 0 10px 20px 10px; } }

/* open */
.open {
  overflow: hidden; }
  .open #gloval-nav {
    visibility: visible;
    opacity: 1; }
  .open #gloval-nav li,
  .open #gloval-nav h3 {
    opacity: 1;
    transform: translateX(0);
    transition: transform 1s ease, opacity .9s ease; }

#page_top {
  display: block;
  position: fixed;
  bottom: 100px;
  right: 10px;
  z-index: 10;
  text-align: center; }
  #page_top a {
    display: block;
    width: 43px;
    height: 43px;
    padding: 0;
    background-image: url(../img/common/pagetop.png);
    background-size: 53px auto;
    background-repeat: no-repeat;
    background-position: center center; }
  @media (min-width: 600px) {
    #page_top {
      bottom: 10px;
      right: 10px; }
      #page_top a {
        width: 55px;
        height: 55px;
        background-size: 65px auto; } }

p#footer_contact {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 10;
  oppacity: 0; }
  p#footer_contact img {
    width: 37px;
    padding-left: 10px; }
  @media (min-width: 600px) {
    p#footer_contact {
      bottom: 80px;
      right: 30px;
      width: 47px; }
      p#footer_contact img {
        width: 47px;
        padding-top: 15px; } }

footer {
  border-top: solid 1px #C8C8C8;
  padding: 30px 0 0 0;
  text-align: center; }
  footer .footer_logo {
    padding-bottom: 10px; }
  footer ul {
    display: none; }
  footer .footer_bg {
    background-color: #F6F6F6;
    padding: 20px; }
    footer .footer_bg ul {
      display: block;
      padding-bottom: 20px; }
      footer .footer_bg ul li {
        display: inline;
        font-size: 90%; }
    footer .footer_bg .copyright {
      font-size: 80%; }
  @media (min-width: 600px) {
    footer {
      padding: 40px 0 0 0; }
      footer .footer_logo {
        padding-bottom: 10px; }
        footer .footer_logo img {
          width: 300px; }
      footer ul {
        display: block;
        padding-bottom: 20px; }
        footer ul li {
          display: inline-block;
          padding: 0 8px;
          font-size: 90%; }
          footer ul li img {
            width: 20px;
            vertical-align: middle; } }
  @media (min-width: 960px) {
    footer {
      padding: 60px 0 0 0; }
      footer .footer_logo {
        padding-bottom: 20px; }
      footer .footer_bg {
        padding: 50px; }
        footer .footer_bg ul {
          float: left; }
          footer .footer_bg ul li {
            padding: 0; }
        footer .footer_bg .copyright {
          float: right; } }
  @media (min-width: 1200px) {
    footer {
      padding: 80px 0 0 0; }
      footer .footer_logo img {
        width: 470px; }
      footer ul {
        padding-bottom: 80px; }
        footer ul li {
          padding: 0 20px;
          font-size: 90%; }
      footer .footer_bg {
        padding: 50px 50px 20px 50px; } }

.ratio-1_1:before {
  content: "";
  display: block;
  padding-top: 100%;
  /* 1:1 */ }

.mainimage {
  padding: 0 20px 40px 20px; }
  .mainimage .pc {
    display: none; }
  @media (min-width: 600px) {
    .mainimage {
      padding-bottom: 80px; }
      .mainimage .sp {
        display: none; }
      .mainimage .pc {
        display: block; } }
  @media (min-width: 960px) {
    .mainimage {
      padding-bottom: 100px; } }
  @media (min-width: 1200px) {
    .mainimage {
      padding: 0 30px 150px 30px; } }
  @media (min-width: 1600px) {
    .mainimage {
      padding: 0 40px 200px 40px; } }
  @media (min-width: 1200px) and (max-height: 768px) {
    .mainimage {
      /* 横幅1200px以上で、高さ768px以下の場合　ノートパソコン */ }
      .mainimage img {
        height: 75vh;
        width: 100%;
        object-fit: cover;
        /* この一行を追加するだけ！ */ } }

.index h1 {
  padding: 0 0 10px 0; }
.index h2 {
  padding: 0 0 40px 0; }
@media (min-width: 600px) {
  .index h1 {
    padding: 0 0 20px 0;
    font-size: 30px; }
  .index h2 {
    padding: 0 0 60px 0;
    font-size: 30px; } }
@media (min-width: 960px) {
  .index h1 {
    padding: 0 0 80px 0;
    font-size: 44px; }
  .index h2 {
    padding: 0 0 100px 0;
    font-size: 42px; } }
@media (min-width: 1200px) {
  .index {
    padding: 0 0 100px 0; } }

.index_btn {
  margin: 0 0 30px 0; }
  .index_btn a {
    display: inline-block;
    padding: 12px 60px;
    font-size: 110%;
    border: solid 1px #000000;
    transition: background 1s; }
  .index_btn a:hover {
    text-decoration: none;
    background-color: #FFDE92;
    border: solid 1px #fff; }

.index_arrow {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 40px;
  width: 40px; }
  @media (min-width: 960px) {
    .index_arrow {
      width: 50px;
      width: 50px; } }

.index_box01 {
  text-align: center;
  padding-bottom: 80px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal; }
  .index_box01 h1 {
    padding-bottom: 30px; }
  @media (min-width: 600px) {
    .index_box01 {
      writing-mode: vertical-rl;
      text-align: left;
      padding-left: 10%;
      line-height: 200%;
      padding-bottom: 150px; }
      .index_box01 span {
        text-combine-upright: all;
        text-align: center; }
      .index_box01 h1 {
        padding-left: 30px; }
      .index_box01 p {
        font-size: 18px; } }
  @media (min-width: 960px) {
    .index_box01 {
      padding-bottom: 200px; }
      .index_box01 h1 {
        padding-left: 60px; }
      .index_box01 p {
        font-size: 22px; } }
  @media (min-width: 1600px) {
    .index_box01 {
      padding-left: 20%; } }

.index_news {
  padding-bottom: 50px;
  text-align: center; }
  .index_news .index_news_bg {
    padding-bottom: 30px; }
  .index_news table {
    text-align: left;
    width: 100%;
    margin-bottom: 20px; }
  .index_news th {
    vertical-align: top;
    display: block;
    padding: 0 0 5px 0;
    color: #929292;
    font-weight: 400; }
  .index_news td {
    display: block;
    padding: 0 0 35px 0; }
  @media (min-width: 600px) {
    .index_news {
      padding-bottom: 120px; }
      .index_news th {
        display: table-cell;
        padding: 0 50px 60px 0;
        white-space: nowrap; }
      .index_news td {
        display: table-cell;
        padding: 0 0 60px 0; } }
  @media (min-width: 960px) {
    .index_news {
      padding-bottom: 100px; }
      .index_news td {
        width: 82%; } }
  @media (min-width: 1200px) {
    .index_news {
      padding-bottom: 280px; }
      .index_news table {
        margin-bottom: 50px; }
      .index_news th {
        padding: 0 0 80px 0; }
      .index_news td {
        padding: 0 0 80px 0; } }

.index_box02 {
  text-align: center;
  padding-bottom: 80px; }
  .index_box02 img {
    width: 60%;
    border-radius: 10px;
    margin-bottom: 20px; }
  .index_box02 h3 {
    font-weight: 500;
    padding-bottom: 5px; }
  .index_box02 h4 {
    font-weight: 200;
    padding-bottom: 15px; }
  .index_box02 p {
    margin-bottom: 40px; }
  @media (min-width: 600px) {
    .index_box02 {
      padding-bottom: 120px; }
      .index_box02 img {
        width: 60%;
        margin-bottom: 30px; }
      .index_box02 h3 {
        padding-bottom: 20px; }
      .index_box02 h4 {
        padding-bottom: 40px; }
      .index_box02 p {
        margin-bottom: 60px; } }
  @media (min-width: 960px) {
    .index_box02 {
      padding-bottom: 200px; }
      .index_box02 img {
        margin-bottom: 100px; }
      .index_box02 h3 {
        padding-bottom: 30px;
        font-size: 24px; }
      .index_box02 h4 {
        padding-bottom: 60px;
        font-size: 20px; }
      .index_box02 p {
        margin-bottom: 80px; } }
  @media (min-width: 1200px) {
    .index_box02 {
      padding-bottom: 240px; } }

.index_box03 {
  text-align: center;
  padding: 0 20px 80px 20px; }
  .index_box03 img {
    width: 60%;
    border-radius: 10px;
    margin-bottom: 20px; }
  .index_box03 h3 {
    font-weight: 500;
    padding-bottom: 10px; }
  .index_box03 section {
    padding-bottom: 40px; }
  @media (min-width: 600px) {
    .index_box03 {
      padding: 0 10px 80px 10px; }
      .index_box03 img {
        width: 100%;
        margin-bottom: 15px; }
      .index_box03 h3 {
        padding-bottom: 15px; }
      .index_box03 p {
        font-size: 90%; }
      .index_box03 section {
        float: left;
        width: 46%;
        padding: 0 2%; } }
  @media (min-width: 960px) {
    .index_box03 {
      padding: 0 10px 220px 10px;
      max-width: 1000px; }
      .index_box03 img {
        margin-bottom: 30px; }
      .index_box03 h3 {
        padding-bottom: 20px;
        font-size: 120%; } }
  @media (min-width: 1200px) {
    .index_box03 {
      padding: 0 10px 300px 10px;
      margin: 0 auto; }
      .index_box03 img {
        margin-bottom: 50px; }
      .index_box03 h3 {
        padding-bottom: 30px; } }

.index_box04 {
  text-align: center;
  padding: 0 20px 80px 20px; }
  .index_box04 img {
    width: 100%;
    border-radius: 10px;
    margin-bottom: 20px;
    height: 230px;
    object-fit: cover; }
  .index_box04 h3 {
    font-weight: 500;
    padding-bottom: 10px; }
  .index_box04 section {
    float: left;
    width: 44%;
    padding: 0 3% 30px 3%; }
  @media (min-width: 600px) {
    .index_box04 {
      padding: 0 10px 80px 10px; }
      .index_box04 img {
        height: 300px; }
      .index_box04 h3 {
        padding-bottom: 15px; }
      .index_box04 p {
        font-size: 90%; }
      .index_box04 section {
        width: 21%;
        padding: 0 2% 60px 2%; } }
  @media (min-width: 960px) {
    .index_box04 {
      padding: 0 10px 220px 10px;
      max-width: 1580px;
      margin: 0 auto; }
      .index_box04 img {
        margin-bottom: 30px;
        height: auto; }
      .index_box04 h3 {
        padding-bottom: 20px;
        font-size: 120%; }
      .index_box04 section {
        padding: 0 2% 80px 2%; } }
  @media (min-width: 1200px) {
    .index_box04 {
      padding: 0 10px 260px 10px; }
      .index_box04 img {
        margin-bottom: 50px; }
      .index_box04 h3 {
        padding-bottom: 30px; }
      .index_box04 section {
        padding: 0 2% 80px 2%; } }

.index_box05 {
  text-align: center;
  padding: 0 20px 80px 20px; }
  .index_box05 img {
    width: 100%;
    border-radius: 10px;
    margin-bottom: 10px; }
  .index_box05 h3 {
    font-weight: 500;
    padding-bottom: 10px; }
  .index_box05 section {
    float: left;
    width: 44%;
    padding: 0 3% 40px 3%; }
  @media (min-width: 600px) {
    .index_box05 {
      padding: 0 10px 80px 10px; }
      .index_box05 h3 {
        padding-bottom: 15px; }
      .index_box05 section {
        width: 21%;
        padding: 0 2% 60px 2%; } }
  @media (min-width: 960px) {
    .index_box05 {
      padding: 0 10px 140px 10px;
      max-width: 1580px;
      margin: 0 auto; }
      .index_box05 img {
        margin-bottom: 30px; }
      .index_box05 h3 {
        padding-bottom: 20px;
        font-size: 120%; } }
  @media (min-width: 1200px) {
    .index_box05 img {
      margin-bottom: 50px; }
    .index_box05 h3 {
      padding-bottom: 30px; }
    .index_box05 section {
      padding: 0 2% 80px 2%; } }

/*フェードイン＋上移動*/
.inview {
  overflow: hidden; }

.inview section {
  transition: .8s; }

.box-mv07 {
  opacity: 0;
  transform: translate(0, 60px);
  -webkit-transform: translate(0, 60px); }

.mv07 {
  opacity: 1.0;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0); }

.box-mv02 {
  opacity: 0; }

.mv02 {
  opacity: 1.0; }

.page_contents .mainimage {
  padding-bottom: 20px; }
  .page_contents .mainimage img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    object-position: 0 100%; }
  @media (min-width: 600px) {
    .page_contents .mainimage img {
      height: 250px; } }
  @media (min-width: 960px) {
    .page_contents .mainimage {
      padding-bottom: 30px; }
      .page_contents .mainimage img {
        height: 350px; } }
  @media (min-width: 1200px) {
    .page_contents .mainimage {
      padding-bottom: 50px; }
      .page_contents .mainimage img {
        height: 500px; } }
.page_contents h1 {
  text-align: center;
  font-size: 25px;
  font-weight: 100;
  padding-bottom: 30px; }
  @media (min-width: 600px) {
    .page_contents h1 {
      font-size: 35px;
      padding-bottom: 50px; } }
  @media (min-width: 960px) {
    .page_contents h1 {
      font-size: 50px;
      padding-bottom: 80px; } }
  @media (min-width: 1200px) {
    .page_contents h1 {
      font-size: 60px;
      padding-bottom: 100px; } }
.page_contents h2 {
  text-align: center;
  font-size: 15px;
  padding-bottom: 30px; }
  @media (min-width: 600px) {
    .page_contents h2 {
      font-size: 18px;
      padding-bottom: 50px; } }
  @media (min-width: 960px) {
    .page_contents h2 {
      font-size: 22px;
      padding-bottom: 80px; } }

p.page_intro {
  padding-bottom: 40px; }
  @media (min-width: 960px) {
    p.page_intro {
      padding-bottom: 50px; } }
  @media (min-width: 1200px) {
    p.page_intro {
      padding-bottom: 70px; } }

.page_box {
  padding-bottom: 50px; }
  @media (min-width: 600px) {
    .page_box {
      padding-bottom: 100px; } }
  @media (min-width: 960px) {
    .page_box {
      padding-bottom: 160px; } }
  @media (min-width: 1200px) {
    .page_box {
      padding-bottom: 200px; } }

.page_contacts {
  text-align: center;
  padding-bottom: 50px;
  padding-top: 50px; }
  .page_contacts p {
    margin-bottom: 40px; }

.subnav {
  padding: 0 20px 30px 20px;
  text-align: center; }
  .subnav h3 {
    color: #FFDE92;
    display: inline-block;
    position: relative;
    margin-bottom: 30px; }
  .subnav h3:before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -10px;
    /*下線の上下位置調整*/
    display: inline-block;
    width: 30px;
    /*下線の幅*/
    height: 3px;
    /*下線の太さ*/
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translate(-50%);
    /*位置調整*/
    background-color: #FFDE92;
    /*下線の色*/ }
  .subnav ul li a {
    display: block;
    background-image: url("../img/common/btn_bg.gif");
    background-repeat: no-repeat;
    background-position: right bottom;
    padding: 20px;
    margin: 0 0 14px 0;
    color: #FFDE92;
    font-weight: 700;
    font-size: 100%;
    box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.1);
    transition: .3s; }
  .subnav ul li a:hover {
    background: rgba(255, 255, 255, 0.1);
    background-color: #000; }
  .subnav ul a:hover {
    text-decoration: none;
    color: #FFFFFF; }
  @media (min-width: 600px) {
    .subnav {
      padding: 0 20px 40px 20px; }
      .subnav h3 {
        margin-bottom: 40px; }
      .subnav h3:before {
        bottom: -15px;
        /*下線の上下位置調整*/ }
      .subnav ul li a {
        padding: 15px 0;
        margin: 0 1% 14px 1%;
        float: left;
        width: 48%; } }
  @media (min-width: 960px) {
    .subnav {
      max-width: 1700px;
      margin: 0 auto;
      padding: 0 0 70px 0; }
      .subnav h3 {
        margin-bottom: 60px;
        font-size: 24px; }
      .subnav h3:before {
        bottom: -20px;
        /*下線の上下位置調整*/ }
      .subnav ul {
        padding: 0 10px; }
        .subnav ul li {
          display: inline-block; }
        .subnav ul li a {
          margin: 0 8px  14px 8px;
          float: none;
          width: 280px; } }
  @media (min-width: 1200px) {
    .subnav {
      padding: 0 20px 70px 20px; }
      .subnav ul {
        padding: 0 0 0 1%; } }

.news .category {
  display: inline-block;
  width: 60px;
  text-align: center;
  color: #929292;
  font-size: 10px;
  line-height: 120%;
  border: dotted 1px #929292;
  padding: 5px 0;
  margin: 0 0 0 10px; }
@media (min-width: 600px) {
  .news .category {
    margin: 0 0 0 20px; } }
@media (min-width: 960px) {
  .news .category {
    margin: 0 0 0 20px;
    font-size: 14px;
    vertical-align: top;
    width: 80px; } }
@media (min-width: 1200px) {
  .news .category {
    margin: 0 0 0 30px; } }
.news .news_box01 th {
  vertical-align: top; }
.news .news_box01 h4 {
  font-size: 110%;
  padding-bottom: 10px; }
.news .news_box01 ul {
  padding-bottom: 20px; }
  .news .news_box01 ul li {
    display: inline-block; }
    .news .news_box01 ul li a {
      color: #000;
      font-weight: 700; }
  .news .news_box01 ul li::after {
    content: ' ｜ '; }
  .news .news_box01 ul li:last-child::after {
    content: none; }
@media (min-width: 960px) {
  .news .news_box01 ul {
    padding-bottom: 40px; } }

.blog_box01 {
  padding-bottom: 40px; }
  .blog_box01 article {
    background: #FFFFFF;
    padding: 0 0 20px 0;
    margin-bottom: 20px; }
    .blog_box01 article h3 {
      text-align: left;
      line-height: 180%;
      margin-bottom: 30px; }
    .blog_box01 article h3:before {
      bottom: 0;
      background-color: transparent; }
    .blog_box01 article p {
      padding: 0 0 10px 0 !important; }
    .blog_box01 article time {
      font-size: 90%;
      margin-bottom: 20px; }
    .blog_box01 article .category {
      margin-bottom: 20px; }
    .blog_box01 article .entry-image {
      padding: 0 0 10px 0; }
    .blog_box01 article .entry {
      padding: 0 0 20px 0; }
      .blog_box01 article .entry a {
        text-decoration: underline; }
    .blog_box01 article .more {
      text-align: right; }
    .blog_box01 article .btn01 {
      font-size: 80%; }
      .blog_box01 article .btn01 a {
        padding: 15px 20px; }
  .blog_box01 .blog_page {
    text-align: center;
    padding: 40px 0; }
  .blog_box01 .wp-pagenavi {
    text-align: center; }
  .blog_box01 .wp-pagenavi .current {
    color: #fff;
    background-color: #FFDE92; }
  .blog_box01 .wp-pagenavi span,
  .blog_box01 .wp-pagenavi a {
    padding: 10px 20px !important;
    display: inline-block;
    color: #000; }
  .blog_box01 .category_list {
    max-width: 1000px;
    margin: 0 auto; }
    .blog_box01 .category_list h4 {
      color: #FFDE92;
      padding: 0 0 10px 0;
      margin: 0 0 10px 0;
      font-size: 16px;
      border-bottom: solid 1px #FFDE92; }
    .blog_box01 .category_list ul {
      margin: 0 0 30px 0; }
      .blog_box01 .category_list ul li {
        list-style: none;
        padding: 3px 10px; }
        .blog_box01 .category_list ul li ul {
          margin: 0; }
        .blog_box01 .category_list ul li li {
          border-bottom: none;
          padding: 0; }
        .blog_box01 .category_list ul li a {
          display: block; }
  @media (min-width: 600px) {
    .blog_box01 article {
      padding-bottom: 40px; }
      .blog_box01 article p {
        padding: 0 0 20px 0 !important; }
      .blog_box01 article .category {
        margin: 0 0 40px 20px; }
      .blog_box01 article .entry-image {
        padding: 0 0 30px 0; }
      .blog_box01 article .entry {
        padding: 0 0 40px 0; } }
  @media (min-width: 960px) {
    .blog_box01 article {
      padding-bottom: 80px; }
      .blog_box01 article h3 {
        font-size: 24px; }
    .blog_box01 .blog_page {
      padding: 60px 0 80px 0; } }
  @media (min-width: 1200px) {
    .blog_box01 {
      float: left;
      width: 73%;
      padding: 0; } }

.side_nav {
  border-top: solid 1px #000;
  padding-top: 40px; }
  .side_nav h4 {
    padding: 0 0 10px 0;
    font-size: 110%; }
  .side_nav ul {
    margin-bottom: 30px; }
  .side_nav li {
    padding: 5px 0;
    font-size: 14px;
    margin-left: 1em;
    text-indent: -1em; }
    .side_nav li a {
      text-decoration: underline; }
  .side_nav li::before {
    content: "・"; }
  @media (min-width: 1200px) {
    .side_nav {
      border-top: none;
      float: right;
      width: 22%;
      padding: 0 0 60px 0; }
      .side_nav h4 {
        font-size: 20px !important;
        padding-bottom: 20px !important; }
      .side_nav ul {
        text-align: left;
        margin-bottom: 60px; }
      .side_nav li {
        display: block; } }

.profile {
  padding-bottom: 20px; }
  @media (min-width: 600px) {
    .profile {
      padding-bottom: 30px; } }
  @media (min-width: 960px) {
    .profile {
      padding-bottom: 50px; } }
  .profile .profile_box01 {
    background-color: #FAF7F0;
    margin: 300px 20px 150px 20px;
    position: relative;
    border-radius: 20px;
    padding: 160px 20px 220px 20px; }
    .profile .profile_box01 .profile_box01_img1 {
      position: absolute;
      top: -280px;
      right: 0;
      left: 0;
      padding-right: 80px;
      margin: auto;
      max-width: 300px; }
    .profile .profile_box01 .profile_box01_img2 {
      position: absolute;
      bottom: -100px;
      right: -20px;
      max-width: 400px;
      z-index: 1; }
    .profile .profile_box01 .box1400 {
      position: sticky;
      z-index: 10 !important; }
    @media (min-width: 600px) {
      .profile .profile_box01 {
        margin: 350px 20px 240px 20px;
        padding: 240px 40px 220px 40px; }
        .profile .profile_box01 .profile_box01_img1 {
          top: -380px;
          padding-right: 140px;
          max-width: 430px; }
        .profile .profile_box01 .profile_box01_img2 {
          bottom: -200px;
          max-width: 600px; } }
    @media (min-width: 960px) {
      .profile .profile_box01 {
        margin: 530px 30px 400px 30px;
        padding: 400px 50px 400px 50px; }
        .profile .profile_box01 .profile_box01_img1 {
          top: -580px;
          padding-right: 180px;
          max-width: 700px; }
        .profile .profile_box01 .profile_box01_img2 {
          bottom: -230px;
          max-width: 1000px; } }
    @media (min-width: 1200px) {
      .profile .profile_box01 {
        padding: 480px 50px 200px 50px; }
        .profile .profile_box01 .profile_box01_img2 {
          bottom: -350px;
          max-width: 1310px; } }
  .profile .profile_box02 {
    padding-bottom: 60px; }
    .profile .profile_box02 .profile_box02_img {
      width: 75%; }
    .profile .profile_box02 .profile_box02_txt {
      padding: 0 40px; }
    @media (min-width: 600px) {
      .profile .profile_box02 {
        padding-bottom: 100px; }
        .profile .profile_box02 .profile_box02_img {
          float: left;
          width: 50%; }
        .profile .profile_box02 .profile_box02_txt {
          float: left;
          width: 42%;
          padding: 0 0 0 4%; } }
    @media (min-width: 960px) {
      .profile .profile_box02 {
        max-width: 1920px; }
        .profile .profile_box02 .profile_box02_img {
          width: 50%; }
        .profile .profile_box02 .profile_box02_txt {
          width: 40%;
          padding: 0 0 0 5%; } }
    @media (min-width: 1200px) {
      .profile .profile_box02 .profile_box02_img {
        width: 45%; }
      .profile .profile_box02 .profile_box02_txt {
        width: 50%;
        padding: 0 0 0 5%; } }
  .profile .profile_box03 {
    padding-bottom: 60px; }
    .profile .profile_box03 .profile_box03_img {
      width: 60%;
      padding: 0 0 0 10%; }
    .profile .profile_box03 .profile_box03_txt {
      padding: 0 40px; }
    @media (min-width: 600px) {
      .profile .profile_box03 {
        padding-bottom: 100px; }
        .profile .profile_box03 .profile_box03_img {
          float: left;
          width: 42%;
          padding: 0 0 0 3%; }
        .profile .profile_box03 .profile_box03_txt {
          float: left;
          width: 42%;
          padding: 0 0 0 8%; } }
    @media (min-width: 960px) {
      .profile .profile_box03 {
        padding-bottom: 250px;
        max-width: 1580px;
        margin: 0 auto; }
        .profile .profile_box03 .profile_box03_img {
          width: 35%;
          padding: 0 0 0 10%; }
        .profile .profile_box03 .profile_box03_txt {
          width: 42%;
          padding: 0 0 0 10%; } }
    @media (min-width: 1200px) {
      .profile .profile_box03 .profile_box03_img {
        width: 33%;
        padding: 0 0 0 7%; }
      .profile .profile_box03 .profile_box03_txt {
        width: 45%;
        padding: 0 0 0 10%; } }
  .profile .profile_box04 {
    background-color: #FAF7F0;
    margin: 100px 20px 160px 20px;
    position: relative;
    border-radius: 20px;
    padding: 160px 20px 180px 20px; }
    .profile .profile_box04 .profile_box04_img1 {
      position: absolute;
      top: -80px;
      right: 0;
      left: 0;
      padding-left: 150px;
      margin: auto;
      max-width: 150px; }
    .profile .profile_box04 .profile_box04_img2 {
      position: absolute;
      bottom: -100px;
      right: 0;
      left: 0;
      margin: auto;
      max-width: 220px;
      z-index: 1; }
    @media (min-width: 600px) {
      .profile .profile_box04 {
        margin: 100px 20px 200px 20px;
        padding: 250px 20px 180px 20px; }
        .profile .profile_box04 .profile_box04_img1 {
          top: -80px;
          padding-left: 250px;
          max-width: 150px; }
        .profile .profile_box04 .profile_box04_img2 {
          bottom: -100px;
          max-width: 280px; } }
    @media (min-width: 960px) {
      .profile .profile_box04 {
        margin: 100px 20px 350px 20px;
        padding: 680px 20px 180px 20px; }
        .profile .profile_box04 .profile_box04_img1 {
          top: -160px;
          padding-left: 50%;
          max-width: 300px; }
        .profile .profile_box04 .profile_box04_img2 {
          bottom: -150px;
          max-width: 500px; } }
    @media (min-width: 1200px) {
      .profile .profile_box04 {
        margin: 100px 30px 350px 15%; }
        .profile .profile_box04 .profile_box04_img1 {
          padding-left: 20%; }
        .profile .profile_box04 .profile_box04_img2 {
          padding-right: 15%; } }
  .profile .profile_box04_txt {
    padding-bottom: 120px; }
    @media (min-width: 600px) {
      .profile .profile_box04_txt {
        padding-bottom: 180px; } }
    @media (min-width: 960px) {
      .profile .profile_box04_txt {
        padding-bottom: 400px; } }
  .profile .profile_box05 {
    background-color: #FAF7F0;
    margin: 100px 40px 160px 20px;
    position: relative;
    border-radius: 20px;
    padding: 80px 20px 180px 20px;
    background-image: url("../img/profile/pen.png");
    background-repeat: no-repeat;
    background-position: 90% 80%;
    background-size: 200px; }
    .profile .profile_box05 .profile_box05_img1 {
      position: absolute;
      top: -120px;
      left: -20px;
      max-width: 250px; }
    .profile .profile_box05 .profile_box05_img2 {
      position: absolute;
      bottom: -60px;
      right: -20px;
      max-width: 360px;
      z-index: 1; }
    @media (min-width: 600px) {
      .profile .profile_box05 {
        margin: 100px 80px 360px 20px;
        padding: 750px 20px 0 20px;
        background-position: 10% 70%;
        background-size: 250px; }
        .profile .profile_box05 .profile_box05_img1 {
          top: -120px;
          max-width: 280px; }
        .profile .profile_box05 .profile_box05_img2 {
          bottom: -200px;
          right: -60px;
          max-width: 90%; }
        .profile .profile_box05 .profile_box05_txt {
          position: absolute;
          top: -120px;
          left: 300px;
          right: -30px;
          max-width: 100%; } }
    @media (min-width: 960px) {
      .profile .profile_box05 {
        margin: 100px 200px 460px 30px;
        padding: 850px 20px 0 20px;
        background-position: 10% 45%;
        background-size: 380px; }
        .profile .profile_box05 .profile_box05_img1 {
          top: -250px;
          left: -30px;
          max-width: 480px; }
        .profile .profile_box05 .profile_box05_img2 {
          bottom: -300px;
          right: -150px;
          padding-left: 10%;
          max-width: 1580px; }
        .profile .profile_box05 .profile_box05_txt {
          top: -250px;
          left: 530px;
          right: -140px; } }
    @media (min-width: 1600px) {
      .profile .profile_box05 {
        margin: 100px 15% 860px 30px;
        padding: 730px 20px 0 20px;
        background-position: 10% 55%;
        background-size: 380px; }
        .profile .profile_box05 .profile_box05_img1 {
          top: -300px;
          left: -30px;
          max-width: 55%; }
        .profile .profile_box05 .profile_box05_img2 {
          bottom: -80%;
          right: -10%;
          padding-left: 5%; }
        .profile .profile_box05 .profile_box05_txt {
          top: -300px;
          left: 0;
          padding-left: 60%;
          right: -15%; } }
  .profile .profile_box06 {
    padding-bottom: 60px; }
    @media (min-width: 600px) {
      .profile .profile_box06 {
        padding-bottom: 100px; } }
    @media (min-width: 960px) {
      .profile .profile_box06 {
        padding-bottom: 160px; } }
  .profile .profile_box07 {
    background-color: #FAF7F0;
    border-radius: 20px;
    margin: 20px 20px 0 20px;
    padding: 40px;
    color: #686868; }
    .profile .profile_box07 h3 {
      margin-bottom: 10px;
      text-decoration: underline; }
    .profile .profile_box07 .profile_box07_txt {
      padding-bottom: 30px; }
    @media (min-width: 600px) {
      .profile .profile_box07 {
        padding: 50px; }
        .profile .profile_box07 .profile_box07_txt {
          float: left;
          width: 43%;
          padding-bottom: 0; }
        .profile .profile_box07 .profile_box07_img {
          float: right;
          width: 50%; } }
    @media (min-width: 960px) {
      .profile .profile_box07 {
        margin: 60px 60px 30px 60px;
        padding: 150px; }
        .profile .profile_box07 h3 {
          margin-bottom: 10px;
          text-decoration: underline; }
        .profile .profile_box07 .profile_box07_txt {
          width: 50%; }
        .profile .profile_box07 .profile_box07_img {
          width: 45%; } }
    @media (min-width: 1200px) {
      .profile .profile_box07 {
        padding: 150px; } }

.media {
  padding-bottom: 20px; }
  @media (min-width: 600px) {
    .media {
      padding-bottom: 30px; } }
  @media (min-width: 960px) {
    .media {
      padding-bottom: 50px; } }
  .media .media_box01 {
    padding-bottom: 40px; }
    .media .media_box01 p {
      padding-bottom: 20px; }
    .media .media_box01 h3 {
      font-size: 110%;
      font-weight: 400; }
    .media .media_box01 img {
      padding-bottom: 20px; }
    .media .media_box01 .btn01 {
      margin-top: 40px; }
    @media (min-width: 600px) {
      .media .media_box01 p {
        padding-bottom: 40px; }
      .media .media_box01 img {
        padding-bottom: 60px; } }
    @media (min-width: 960px) {
      .media .media_box01 img {
        padding-bottom: 80px; } }
  .media .media_box02 {
    padding-bottom: 30px;
    margin-bottom: 60px;
    border-bottom: solid 1px #dddddd; }
    .media .media_box02 h2 {
      text-align: left;
      font-size: 24px; }
    .media .media_box02 h3 {
      font-size: 110%;
      font-weight: 400; }
    .media .media_box02 img {
      margin-bottom: 10px;
      border-radius: 10px;
      width: 100%;
      height: 230px;
      object-fit: cover; }
    .media .media_box02 ul {
      margin: 0 0 30px 1em; }
      .media .media_box02 ul li {
        list-style: disc;
        padding: 0 0 10px 0; }
      .media .media_box02 ul li:last-child {
        padding: 0; }
    .media .media_box02 dl {
      margin: 0 0 30px 0; }
      .media .media_box02 dl dt {
        padding: 0 0 0 1em;
        text-indent: -1.7em; }
      .media .media_box02 dl dt::before {
        content: "・";
        font-size: 1.7em;
        vertical-align: middle;
        color: #929292; }
      .media .media_box02 dl dd {
        padding: 0 0 20px 1em; }
    .media .media_box02 article {
      float: left;
      width: 48%;
      margin: 0 4% 30px 0; }
    .media .media_box02 article:nth-child(2n) {
      margin: 0 0 30px 0; }
    @media (min-width: 600px) {
      .media .media_box02 {
        padding-bottom: 30px;
        margin-bottom: 100px; }
        .media .media_box02 h2 {
          font-size: 24px; }
        .media .media_box02 img {
          margin-bottom: 15px;
          height: 300px; }
        .media .media_box02 ul {
          margin: 0 0 60px 1em; }
        .media .media_box02 dl {
          margin: 0 0 60px 0; }
        .media .media_box02 article {
          width: 30%;
          margin: 0 5% 50px 0; }
        .media .media_box02 article:nth-child(2n) {
          margin: 0 5% 50px 0; }
        .media .media_box02 article:nth-child(3n) {
          margin: 0 0 50px 0; } }
    @media (min-width: 960px) {
      .media .media_box02 h2 {
        font-size: 35px; }
      .media .media_box02 img {
        margin-bottom: 25px;
        height: 440px; }
      .media .media_box02 ul li {
        padding: 0 0 20px 0; }
      .media .media_box02 article {
        margin: 0 5% 80px 0; }
      .media .media_box02 article:nth-child(2n) {
        margin: 0 5% 80px 0; }
      .media .media_box02 article:nth-child(3n) {
        margin: 0 0 80px 0; } }

.voice {
  padding-bottom: 20px; }
  @media (min-width: 600px) {
    .voice {
      padding-bottom: 30px; } }
  @media (min-width: 960px) {
    .voice {
      padding-bottom: 50px; } }
  .voice .voice_box01 {
    padding-bottom: 40px; }
    .voice .voice_box01 p {
      padding-bottom: 20px; }
    .voice .voice_box01 h3 {
      font-size: 110%;
      font-weight: 400; }
    .voice .voice_box01 img {
      padding-bottom: 20px; }
    .voice .voice_box01 .btn01 {
      margin-top: 40px; }
    @media (min-width: 600px) {
      .voice .voice_box01 p {
        padding-bottom: 40px; }
      .voice .voice_box01 img {
        padding-bottom: 60px; } }
    @media (min-width: 960px) {
      .voice .voice_box01 img {
        padding-bottom: 80px; } }
  .voice .voice_box02 {
    padding-bottom: 30px;
    margin-bottom: 60px; }
    .voice .voice_box02 .clearfix {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap; }
    .voice .voice_box02 h2 {
      text-align: left;
      font-size: 24px; }
    .voice .voice_box02 h3 {
      font-size: 110%;
      font-weight: 400; }
    .voice .voice_box02 img {
      margin-bottom: 10px;
      border-radius: 10px;
      width: 100%;
      height: 150px;
      object-fit: cover; }
    .voice .voice_box02 ul {
      margin: 0 0 30px 1em; }
      .voice .voice_box02 ul li {
        list-style: disc;
        padding: 0 0 10px 0; }
      .voice .voice_box02 ul li:last-child {
        padding: 0; }
    .voice .voice_box02 article {
      width: 48%;
      margin: 0 4% 30px 0; }
      .voice .voice_box02 article a {
        text-decoration: underline; }
      .voice .voice_box02 article a:hover {
        text-decoration: none; }
    .voice .voice_box02 article:nth-child(2n) {
      margin: 0 0 30px 0; }
    @media (min-width: 600px) {
      .voice .voice_box02 {
        padding-bottom: 30px;
        margin-bottom: 100px; }
        .voice .voice_box02 h2 {
          font-size: 24px; }
        .voice .voice_box02 img {
          margin-bottom: 15px; }
        .voice .voice_box02 ul {
          margin: 0 0 60px 1em; }
        .voice .voice_box02 article {
          width: 30%;
          margin: 0 5% 50px 0; }
        .voice .voice_box02 article:nth-child(2n) {
          margin: 0 5% 50px 0; }
        .voice .voice_box02 article:nth-child(3n) {
          margin: 0 0 50px 0; } }
    @media (min-width: 960px) {
      .voice .voice_box02 h2 {
        font-size: 35px; }
      .voice .voice_box02 img {
        margin-bottom: 25px;
        height: 200px; }
      .voice .voice_box02 ul li {
        padding: 0 0 20px 0; }
      .voice .voice_box02 article {
        margin: 0 5% 80px 0; }
      .voice .voice_box02 article:nth-child(2n) {
        margin: 0 5% 80px 0; }
      .voice .voice_box02 article:nth-child(3n) {
        margin: 0 0 80px 0; } }

.privacy {
  padding-bottom: 40px; }
  .privacy h3 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal; }
  @media (min-width: 600px) {
    .privacy {
      padding-bottom: 60px; } }
  @media (min-width: 960px) {
    .privacy {
      padding-bottom: 100px; } }
  .privacy .privacy_box01 {
    padding-bottom: 20px; }
    .privacy .privacy_box01 h3 {
      font-size: 110%;
      border-bottom: solid 1px #CFCFCF;
      padding: 20px 0;
      margin-bottom: 20px; }
    .privacy .privacy_box01 p, .privacy .privacy_box01 ul {
      padding-bottom: 10px; }
    .privacy .privacy_box01 ul li {
      list-style: disc;
      margin-left: 1em; }
    @media (min-width: 600px) {
      .privacy .privacy_box01 p {
        padding-bottom: 40px; } }
    @media (min-width: 960px) {
      .privacy .privacy_box01 {
        padding-bottom: 80px; }
        .privacy .privacy_box01 h3 {
          padding: 40px 0;
          margin-bottom: 40px; } }

.law {
  padding-bottom: 40px;
  text-align: left; }
  @media (min-width: 600px) {
    .law {
      padding-bottom: 60px; } }
  @media (min-width: 960px) {
    .law {
      padding-bottom: 100px; } }
  .law .law_box01 {
    padding-bottom: 40px; }
    .law .law_box01 table {
      border-top: solid 1px #CFCFCF;
      margin-bottom: 40px; }
      .law .law_box01 table th {
        padding: 20px 0 10px 0;
        font-weight: 400;
        display: block; }
      .law .law_box01 table td {
        display: block;
        padding: 0 0 20px 0;
        border-bottom: solid 1px #CFCFCF; }
    @media (min-width: 600px) {
      .law .law_box01 {
        padding-bottom: 100px; }
        .law .law_box01 table {
          width: 100%; }
          .law .law_box01 table th {
            padding: 20px 40px 20px 0;
            display: table-cell;
            border-bottom: solid 1px #CFCFCF;
            white-space: nowrap;
            vertical-align: text-bottom; }
          .law .law_box01 table td {
            display: table-cell;
            padding: 20px 0 20px 0; } }
    @media (min-width: 960px) {
      .law .law_box01 table {
        margin-bottom: 60px; }
        .law .law_box01 table th {
          padding: 30px 110px 30px 0; }
        .law .law_box01 table td {
          padding: 30px 0 30px 0; } }

.notice {
  padding-bottom: 40px;
  text-align: left; }
  @media (min-width: 600px) {
    .notice {
      padding-bottom: 60px; } }
  @media (min-width: 960px) {
    .notice {
      padding-bottom: 100px; } }
  .notice .notice_main {
    padding-bottom: 40px; }
    .notice .notice_main table {
      border-top: solid 1px #CFCFCF;
      margin-bottom: 40px; }
      .notice .notice_main table th {
        padding: 20px 0 10px 0;
        font-weight: 400;
        display: block;
        color: #929292; }
      .notice .notice_main table td {
        display: block;
        padding: 0 0 20px 0;
        border-bottom: solid 1px #CFCFCF; }
    @media (min-width: 600px) {
      .notice .notice_main {
        padding-bottom: 100px;
        float: right;
        width: 70%; }
        .notice .notice_main table {
          width: 100%; }
          .notice .notice_main table th {
            padding: 20px 40px 20px 0;
            display: table-cell;
            border-bottom: solid 1px #CFCFCF;
            white-space: nowrap;
            vertical-align: text-bottom; }
          .notice .notice_main table td {
            display: table-cell;
            padding: 20px 0 20px 0; } }
    @media (min-width: 960px) {
      .notice .notice_main {
        width: 75%; }
        .notice .notice_main table {
          margin-bottom: 60px; }
          .notice .notice_main table th {
            padding: 30px 110px 30px 0; }
          .notice .notice_main table td {
            padding: 30px 0 30px 0; } }
  .notice .notice_nav {
    text-align: center;
    /* 疑似要素でアイコンを表示 */
    /* オープン時 */
    /* オープン時にアニメーションを設定 */ }
    .notice .notice_nav h2 {
      padding-bottom: 15px; }
    .notice .notice_nav a {
      color: #929292; }
    .notice .notice_nav details {
      padding-bottom: 10px; }
    .notice .notice_nav summary {
      position: relative;
      display: block;
      /* 矢印を消す */
      cursor: pointer;
      color: #929292; }
    .notice .notice_nav summary::-webkit-details-marker {
      display: none;
      /* 矢印を消す */ }
    .notice .notice_nav summary:after {
      content: "+";
      padding-left: 1em; }
    .notice .notice_nav details[open] summary:after {
      content: "-"; }
    .notice .notice_nav details[open] ul {
      animation: fadeIn 0.5s ease; }
@keyframes fadeIn {
  0% {
    opacity: 0;
    /* 透明 */
    transform: translateY(-10px);
    /* 上から表示 */ }
  100% {
    opacity: 1;
    transform: none; } }
    @media (min-width: 600px) {
      .notice .notice_nav {
        float: left;
        width: 27%;
        text-align: left; }
        .notice .notice_nav h2 {
          text-align: left; } }
    @media (min-width: 960px) {
      .notice .notice_nav {
        width: 20%; } }
  .notice .blog_page {
    text-align: center;
    padding: 40px 0; }
    .notice .blog_page .wp-pagenavi .current {
      background-color: #F9F9F9;
      color: #929292; }
    .notice .blog_page .wp-pagenavi span,
    .notice .blog_page .wp-pagenavi a {
      padding: 10px 20px !important;
      display: inline-block; }

.column {
  padding-bottom: 20px; }
  @media (min-width: 600px) {
    .column {
      padding-bottom: 30px; } }
  @media (min-width: 960px) {
    .column {
      padding-bottom: 50px; } }
  .column .column_main {
    padding-bottom: 20px; }
    @media (min-width: 600px) {
      .column .column_main {
        float: right;
        width: 68%;
        padding-bottom: 60px; } }
    @media (min-width: 960px) {
      .column .column_main {
        width: 74%;
        padding-bottom: 100px; } }
  .column .column_box01 .clearfix {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap; }
  .column .column_box01 h2 {
    text-align: left;
    font-size: 24px; }
  .column .column_box01 h3 {
    font-size: 110%;
    font-weight: 400; }
  .column .column_box01 img {
    margin-bottom: 10px;
    border-radius: 10px;
    width: 100%;
    height: 150px;
    object-fit: cover; }
  .column .column_box01 ul {
    margin: 0 0 30px 1em; }
    .column .column_box01 ul li {
      list-style: disc;
      padding: 0 0 10px 0; }
    .column .column_box01 ul li:last-child {
      padding: 0; }
  .column .column_box01 article {
    width: 48%;
    margin: 0 4% 30px 0; }
    .column .column_box01 article a {
      text-decoration: underline; }
    .column .column_box01 article a:hover {
      text-decoration: none; }
  .column .column_box01 article:nth-child(2n) {
    margin: 0 0 30px 0; }
  @media (min-width: 600px) {
    .column .column_box01 h2 {
      font-size: 24px; }
    .column .column_box01 img {
      height: 180px;
      margin-bottom: 15px; }
    .column .column_box01 ul {
      margin: 0 0 60px 1em; }
    .column .column_box01 article {
      margin: 0 4% 50px 0; } }
  @media (min-width: 960px) {
    .column .column_box01 h2 {
      font-size: 35px; }
    .column .column_box01 img {
      height: 200px;
      margin-bottom: 25px; }
    .column .column_box01 ul li {
      padding: 0 0 20px 0; }
    .column .column_box01 article {
      width: 30%;
      margin: 0 5% 80px 0; }
    .column .column_box01 article:nth-child(2n) {
      margin: 0 5% 80px 0; }
    .column .column_box01 article:nth-child(3n) {
      margin: 0 0 80px 0; } }
  @media (min-width: 1200px) {
    .column .column_box01 img {
      height: 250px; } }
  .column .column_nav {
    text-align: center;
    /* 疑似要素でアイコンを表示 */
    /* オープン時 */
    /* オープン時にアニメーションを設定 */ }
    .column .column_nav h2 {
      padding-bottom: 15px; }
    .column .column_nav a {
      color: #929292; }
    .column .column_nav hr {
      margin: 30px 0; }
    .column .column_nav details {
      padding-bottom: 10px; }
    .column .column_nav summary {
      position: relative;
      display: block;
      /* 矢印を消す */
      cursor: pointer;
      color: #929292; }
    .column .column_nav summary::-webkit-details-marker {
      display: none;
      /* 矢印を消す */ }
    .column .column_nav summary:after {
      content: "+";
      padding-left: 1em; }
    .column .column_nav details[open] summary:after {
      content: "-"; }
    .column .column_nav details[open] ul {
      animation: fadeIn 0.5s ease; }
@keyframes fadeIn {
  0% {
    opacity: 0;
    /* 透明 */
    transform: translateY(-10px);
    /* 上から表示 */ }
  100% {
    opacity: 1;
    transform: none; } }
    @media (min-width: 600px) {
      .column .column_nav {
        float: left;
        width: 27%;
        text-align: left; }
        .column .column_nav h2 {
          text-align: left; } }
    @media (min-width: 960px) {
      .column .column_nav {
        width: 22%; }
        .column .column_nav hr {
          margin: 60px 0; }
        .column .column_nav h2 {
          font-size: 27px; } }
    @media (min-width: 1200px) {
      .column .column_nav {
        width: 20%; } }
  .column .blog_page {
    text-align: center;
    padding: 40px 0; }
    .column .blog_page .wp-pagenavi .current {
      background-color: #F9F9F9;
      color: #929292; }
    .column .blog_page .wp-pagenavi span,
    .column .blog_page .wp-pagenavi a {
      padding: 10px 20px !important;
      display: inline-block; }
  .column .column_box03_bg {
    padding: 40px 0;
    border-top: solid 1px #cfcfcf; }
    .column .column_box03_bg h4 {
      margin-bottom: 20px;
      font-size: 16px; }
    .column .column_box03_bg h4::before {
      content: "";
      display: inline-block;
      width: 25px;
      height: 25px;
      background: url(../img/common/icon_page.png) no-repeat;
      background-size: 70%;
      background-position: center;
      margin-right: 13px;
      background-color: #313131;
      border-radius: 100px;
      vertical-align: middle; }
    @media (min-width: 600px) {
      .column .column_box03_bg {
        padding: 80px 0;
        margin-top: 40px; }
        .column .column_box03_bg h4 {
          margin-bottom: 30px;
          font-size: 20px; }
        .column .column_box03_bg h4::before {
          width: 27px;
          height: 27px; } }
    @media (min-width: 960px) {
      .column .column_box03_bg {
        padding: 120px 0 70px 0;
        margin-top: 80px; }
        .column .column_box03_bg h4 {
          margin-bottom: 50px;
          font-size: 25px; }
        .column .column_box03_bg h4::before {
          width: 45px;
          height: 45px;
          margin-right: 20px; } }
    .column .column_box03_bg .column_box03 {
      overflow-x: scroll; }
    .column .column_box03_bg .column_box03 > div {
      width: 210%;
      display: flex; }
    .column .column_box03_bg .column_box03 > div > article {
      width: 58%;
      padding: 0 0 20px 0 !important;
      margin: 0 2% 0 0 !important; }
      @media (min-width: 960px) {
        .column .column_box03_bg .column_box03 > div > article {
          width: 33%;
          padding: 0 0 20px 0 !important;
          margin: 0 2% 0 0 !important; } }
    .column .column_box03_bg .column_box03::-webkit-scrollbar {
      height: 14px; }
    .column .column_box03_bg .column_box03::-webkit-scrollbar-thumb {
      background: #FFDE92;
      /* ツマミの色 */
      border-radius: 7px; }
    .column .column_box03_bg .column_box03::-webkit-scrollbar-track {
      background: #FAF7F0;
      /* トラックの色 */
      border-radius: 7px; }
  .column .ctc_box {
    background-color: #FAF7F0;
    padding: 40px 40px 20px 40px;
    border-radius: 20px; }
    .column .ctc_box h3 {
      padding-bottom: 20px; }
    .column .ctc_box .btn02 {
      margin-top: 40px; }
    .column .ctc_box p strong {
      font-size: 110%; }
    @media (min-width: 600px) {
      .column .ctc_box {
        padding: 60px 60px 40px 60px; } }
  .column .table01 {
    width: 100%; }
    .column .table01 th {
      border: solid 1px #d0d0d0;
      padding: 5px;
      background-color: #FAF7F0; }
    .column .table01 td {
      border: solid 1px #d0d0d0;
      padding: 5px; }
    @media (min-width: 960px) {
      .column .table01 {
        padding: 10px; } }
    .column .table01 td {
      padding: 10px; }

.inquiry {
  padding-bottom: 70px; }
  @media (min-width: 600px) {
    .inquiry {
      padding-bottom: 80px; } }
  @media (min-width: 960px) {
    .inquiry {
      padding-bottom: 120px; } }
  .inquiry .inquiry_box01 .page_contacts {
    padding-bottom: 20px; }
  @media (min-width: 600px) {
    .inquiry .inquiry_box01 .page_contacts {
      padding-bottom: 40px; } }
  @media (min-width: 960px) {
    .inquiry .inquiry_box01 .page_contacts {
      padding-bottom: 80px; } }

.inquiry_form {
  padding-bottom: 50px; }
  .inquiry_form .font-red {
    font-size: 90%;
    font-weight: normal;
    display: block;
    line-height: 160%; }
  @media (min-width: 600px) {
    .inquiry_form {
      padding-bottom: 100px; } }
  @media (min-width: 960px) {
    .inquiry_form {
      padding-bottom: 140px; } }
  .inquiry_form .inquiry_form_box01 {
    text-align: center;
    font-size: 110%;
    padding-bottom: 60px; }
    @media (min-width: 960px) {
      .inquiry_form .inquiry_form_box01 {
        padding-bottom: 120px; } }
  .inquiry_form .inquiry_form_box02 {
    font-weight: 700; }
    .inquiry_form .inquiry_form_box02 p {
      padding-bottom: 30px; }
    .inquiry_form .inquiry_form_box02 label {
      font-weight: normal; }
    .inquiry_form .inquiry_form_box02 input, .inquiry_form .inquiry_form_box02 textarea {
      margin-top: 10px; }
    @media (min-width: 600px) {
      .inquiry_form .inquiry_form_box02 p {
        padding-bottom: 50px; }
      .inquiry_form .inquiry_form_box02 input, .inquiry_form .inquiry_form_box02 textarea {
        margin-top: 20px; } }
    @media (min-width: 960px) {
      .inquiry_form .inquiry_form_box02 p {
        padding-bottom: 80px; } }
  .inquiry_form .inquiry_form_box03 {
    font-weight: normal; }
    .inquiry_form .inquiry_form_box03 a {
      text-decoration: underline; }

.service {
  padding-bottom: 20px; }
  @media (min-width: 600px) {
    .service {
      padding-bottom: 30px; } }
  @media (min-width: 960px) {
    .service {
      padding-bottom: 50px; } }
  .service .service_box01 {
    padding-bottom: 40px; }
    .service .service_box01 p {
      padding-bottom: 20px; }
    .service .service_box01 h3 {
      font-size: 110%;
      font-weight: 400; }
    .service .service_box01 img {
      padding-bottom: 20px; }
    .service .service_box01 .btn01 {
      margin-top: 40px; }
    @media (min-width: 600px) {
      .service .service_box01 p {
        padding-bottom: 40px; }
      .service .service_box01 img {
        padding-bottom: 60px; } }
    @media (min-width: 960px) {
      .service .service_box01 img {
        padding-bottom: 80px; } }
  .service .service_box02 {
    padding-bottom: 30px;
    text-align: center; }
    .service .service_box02 h2 {
      text-align: left;
      font-size: 24px; }
    .service .service_box02 h3 {
      font-size: 110%;
      font-weight: 400; }
    .service .service_box02 img {
      margin-bottom: 10px;
      border-radius: 10px;
      width: 100%;
      height: 270px;
      object-fit: cover; }
    .service .service_box02 ul {
      margin: 0 0 30px 1em; }
      .service .service_box02 ul li {
        list-style: disc;
        padding: 0 0 10px 0; }
      .service .service_box02 ul li:last-child {
        padding: 0; }
    .service .service_box02 article {
      margin: 0 0 40px 0; }
    @media (min-width: 600px) {
      .service .service_box02 {
        padding-bottom: 50px; }
        .service .service_box02 h2 {
          font-size: 24px; }
        .service .service_box02 img {
          height: 300px;
          margin-bottom: 15px; }
        .service .service_box02 ul {
          margin: 0 0 60px 1em; }
        .service .service_box02 article {
          float: left;
          width: 47%;
          margin: 0 6% 50px 0; }
        .service .service_box02 article:nth-child(2n) {
          margin: 0 0 50px 0; } }
    @media (min-width: 960px) {
      .service .service_box02 h2 {
        font-size: 35px; }
      .service .service_box02 img {
        height: 350px;
        margin-bottom: 35px; }
      .service .service_box02 ul li {
        padding: 0 0 20px 0; }
      .service .service_box02 article {
        margin: 0 6% 120px 0; }
      .service .service_box02 article:nth-child(2n) {
        margin: 0 0 120px 0; } }

.madoris {
  padding-bottom: 100px; }
  .madoris h2 {
    padding-bottom: 40px; }
  .madoris h3 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    text-align: center;
    padding-bottom: 20px; }
    .madoris h3 br {
      display: none; }
  .madoris h4 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    border-bottom: solid 1px #CFCFCF;
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 15px; }
  .madoris img {
    border-radius: 5px; }
  @media (min-width: 600px) {
    .madoris {
      padding-bottom: 140px; }
      .madoris h3 {
        font-size: 25px;
        padding-bottom: 30px; }
      .madoris h4 {
        font-size: 20px; } }
  @media (min-width: 960px) {
    .madoris {
      padding-bottom: 200px; }
      .madoris h2 {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-align: left;
        display: inline-block;
        font-size: 30px;
        line-height: 200%; }
        .madoris h2 span {
          text-combine-upright: all;
          text-align: center; }
      .madoris h3 {
        text-align: left;
        font-size: 28px;
        line-height: 200%;
        font-feature-settings: "palt" 1; }
        .madoris h3 br {
          display: block; }
      .madoris h4 {
        font-size: 25px;
        padding-bottom: 30px;
        margin-bottom: 40px; } }
  @media (min-width: 1200px) {
    .madoris h2 {
      font-size: 40px; }
    .madoris h3 {
      font-size: 39px; } }
  .madoris .madoris_box01 {
    padding-bottom: 60px; }
    .madoris .madoris_box01 nav {
      background-color: #F6F6F6;
      padding: 30px;
      border-radius: 10px;
      font-weight: 400; }
      .madoris .madoris_box01 nav h3 {
        text-align: left;
        padding-bottom: 15px;
        font-size: 120%; }
      .madoris .madoris_box01 nav ol {
        counter-reset: count 0;
        list-style-type: none; }
        .madoris .madoris_box01 nav ol li {
          padding-bottom: 5px; }
          .madoris .madoris_box01 nav ol li ol {
            margin-left: 1.5em; }
        .madoris .madoris_box01 nav ol li:before {
          counter-increment: count 1;
          content: counters(count,"-") ". "; }
    @media (min-width: 600px) {
      .madoris .madoris_box01 {
        padding-bottom: 100px; }
        .madoris .madoris_box01 nav {
          padding: 50px; }
          .madoris .madoris_box01 nav h3 {
            padding-bottom: 20px; } }
    @media (min-width: 960px) {
      .madoris .madoris_box01 {
        padding-bottom: 200px;
        position: relative; }
        .madoris .madoris_box01 .madoris_box01_h2 {
          position: absolute;
          top: 0;
          left: 4%; }
        .madoris .madoris_box01 nav {
          padding: 50px;
          float: right;
          width: 57%; }
          .madoris .madoris_box01 nav h3 {
            padding-bottom: 20px; } }
    @media (min-width: 1200px) {
      .madoris .madoris_box01 nav {
        width: 61%; } }
  .madoris .madoris_box02 {
    background-color: #FAF7F0;
    margin: 20px 20px 40px 20px;
    padding: 30px;
    border-radius: 20px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 400;
    font-style: normal; }
    .madoris .madoris_box02 p {
      padding-bottom: 20px;
      line-height: 250% !important;
      font-size: 110%; }
    .madoris .madoris_box02 a {
      text-decoration: underline; }
    .madoris .madoris_box02 .btn03 a {
      text-decoration: none; }
    @media (min-width: 600px) {
      .madoris .madoris_box02 {
        margin: 30px 30px 120px 30px;
        padding: 50px 50px 20px 50px; }
        .madoris .madoris_box02 p {
          padding-bottom: 30px; }
        .madoris .madoris_box02 img {
          margin-bottom: 30px; } }
    @media (min-width: 960px) {
      .madoris .madoris_box02 {
        margin: 0 0 200px 60px;
        padding: 80px 0 300px 0;
        border-radius: 20px 0 0 20px; }
        .madoris .madoris_box02 p {
          padding-bottom: 80px; }
        .madoris .madoris_box02 .madoris_box02_h2 {
          float: left;
          width: 28%;
          text-align: left; }
        .madoris .madoris_box02 .madoris_box02_main {
          float: right;
          width: 72%; } }
    @media (min-width: 1200px) {
      .madoris .madoris_box02 {
        margin: 0 0 200px 60px;
        padding: 120px 0 300px 0;
        border-radius: 20px 0 0 20px; } }
  .madoris .madoris_box02_2 {
    padding: 0 40px 80px 40px; }
    .madoris .madoris_box02_2 p {
      padding-bottom: 30px; }
    .madoris .madoris_box02_2 .madoris_box02_2_bg {
      padding-bottom: 40px; }
    .madoris .madoris_box02_2 dl dt {
      background-image: url("../img/common/icnon_warning .png");
      background-repeat: no-repeat;
      background-position: left center;
      background-size: 20px auto;
      padding: 0 0 0 30px;
      margin-bottom: 10px;
      font-weight: 700; }
    .madoris .madoris_box02_2 dl dd {
      padding: 0 0 30px 30px; }
    @media (min-width: 600px) {
      .madoris .madoris_box02_2 {
        padding: 0 80px 120px 80px; }
        .madoris .madoris_box02_2 .madoris_box02_2_bg {
          padding-bottom: 80px; } }
    @media (min-width: 960px) {
      .madoris .madoris_box02_2 {
        padding: 100px 0 200px 80px;
        background-color: #FFFFFF;
        margin-left: 24%;
        margin: -500px 0 0 24%; }
        .madoris .madoris_box02_2 p {
          padding-bottom: 60px; } }
    @media (min-width: 1200px) {
      .madoris .madoris_box02_2 {
        padding: 100px 0 250px 80px; } }
  .madoris .madoris_box03 {
    padding-bottom: 80px; }
    .madoris .madoris_box03 p {
      padding-bottom: 50px; }
    .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main1 {
      padding-bottom: 60px; }
      .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main1 h5 {
        background: linear-gradient(transparent 50%, #FFF788 50%);
        display: inline-block;
        font-size: 14px;
        margin-bottom: 5px;
        margin-left: 1em;
        line-height: 150%; }
      .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main1 P {
        margin-left: 1em;
        padding: 0; }
    .madoris .madoris_box03 .madoris_box03_main ul {
      margin-bottom: 40px; }
      .madoris .madoris_box03 .madoris_box03_main ul li {
        margin-bottom: 10px;
        list-style: disc;
        margin-left: 1em; }
    @media (min-width: 600px) {
      .madoris .madoris_box03 {
        padding-bottom: 120px; }
        .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main_bg {
          padding-bottom: 80px; }
        .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main1 {
          padding-bottom: 50px; }
          .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main1 h5 {
            font-size: 16px;
            margin-bottom: 10px; }
          .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main1 .madoris_box03_main1_txt {
            float: left;
            width: 50%; }
          .madoris .madoris_box03 .madoris_box03_main .madoris_box03_main1 img {
            float: right;
            width: 45%; }
        .madoris .madoris_box03 .madoris_box03_main ul {
          margin-bottom: 60px; } }
    @media (min-width: 960px) {
      .madoris .madoris_box03 {
        padding-bottom: 200px; }
        .madoris .madoris_box03 p {
          padding-bottom: 100px; }
        .madoris .madoris_box03 .madoris_box03_h2 {
          float: left;
          width: 30%; }
        .madoris .madoris_box03 .madoris_box03_main {
          float: right;
          width: 67%; }
          .madoris .madoris_box03 .madoris_box03_main ul {
            margin-bottom: 100px; } }
    @media (min-width: 1200px) {
      .madoris .madoris_box03 .madoris_box03_main {
        width: 68%; } }
  .madoris .madoris_box04 {
    background-color: #FAF7F0;
    margin: 20px 20px 60px 20px;
    padding: 40px 0 20px 0;
    border-radius: 20px; }
    .madoris .madoris_box04 p {
      padding-bottom: 30px; }
    .madoris .madoris_box04 .madoris_box04_main table {
      text-align: left;
      border: solid 1px #929292;
      margin-bottom: 60px; }
      .madoris .madoris_box04 .madoris_box04_main table td, .madoris .madoris_box04 .madoris_box04_main table th {
        vertical-align: top;
        padding: 10px;
        border-bottom: solid 1px #929292; }
      .madoris .madoris_box04 .madoris_box04_main table td {
        background-color: #FCFBF8; }
    .madoris .madoris_box04 .madoris_box04_main .blog-card {
      margin-top: 0;
      margin-bottom: 60px;
      background-color: #FFFFFF; }
    .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link {
      text-align: center;
      padding-bottom: 20px; }
      .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure {
        padding-bottom: 40px; }
        .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure img {
          margin-bottom: 10px; }
      .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link strong {
        font-size: 120%; }
    .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo {
      background-color: #FFFFFF;
      position: relative;
      border-radius: 10px;
      padding: 30px 10px 10px 10px;
      margin-top: 40px;
      margin-bottom: 40px; }
      .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo .madoris_box04_main_memo-tag {
        background-color: #FF0000;
        color: #FFFFFF;
        padding: 5px 5px 5px 25px;
        border-radius: 5px;
        font-size: 90%;
        font-weight: 700;
        background-image: url("../img/common/icon_page.png");
        background-repeat: no-repeat;
        background-position: 5px center;
        background-size: 15px auto;
        position: absolute;
        top: -15px;
        left: 20px; }
      .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl {
        padding: 20px 20px 0 20px; }
        .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl dt {
          float: left;
          width: 14%;
          font-size: 30px; }
        .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl dd {
          float: right;
          width: 86%;
          padding-bottom: 20px; }
    @media (min-width: 600px) {
      .madoris .madoris_box04 {
        padding: 60px 0 40px 0; }
        .madoris .madoris_box04 p {
          padding-bottom: 60px; }
        .madoris .madoris_box04 .madoris_box04_main table {
          margin-bottom: 60px; }
          .madoris .madoris_box04 .madoris_box04_main table td, .madoris .madoris_box04 .madoris_box04_main table th {
            padding: 20px; }
        .madoris .madoris_box04 .madoris_box04_main .blog-card {
          margin-top: 0;
          margin-bottom: 80px; }
        .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link {
          padding-bottom: 20px; }
          .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure {
            padding-bottom: 20px;
            padding-left: 4%;
            float: left;
            width: 48%; }
            .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure img {
              margin-bottom: 10px; }
          .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure:nth-last-child(2) {
            padding-left: 0; }
        .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo {
          padding: 30px 10px 10px 10px;
          margin-top: 40px;
          margin-bottom: 80px; }
          .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo .madoris_box04_main_memo-tag {
            padding: 5px 7px 5px 35px;
            background-position: 5px center;
            background-size: 20px auto; }
          .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl {
            padding: 20px 30px 10px 30px; }
            .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl dt {
              width: 12%;
              font-size: 40px; }
            .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl dd {
              width: 88%;
              padding-bottom: 20px; } }
    @media (min-width: 960px) {
      .madoris .madoris_box04 {
        padding: 100px 0 60px 0;
        margin: 20px 40px 200px 40px; }
        .madoris .madoris_box04 p {
          padding-bottom: 60px; }
        .madoris .madoris_box04 .madoris_box04_h2 {
          float: left;
          width: 30%; }
        .madoris .madoris_box04 .madoris_box04_main {
          float: right;
          width: 67%; }
          .madoris .madoris_box04 .madoris_box04_main table {
            margin-bottom: 80px; }
            .madoris .madoris_box04 .madoris_box04_main table td, .madoris .madoris_box04 .madoris_box04_main table th {
              padding: 30px; }
          .madoris .madoris_box04 .madoris_box04_main .blog-card {
            margin-bottom: 140px; }
          .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link {
            padding-bottom: 60px; }
            .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure {
              padding-bottom: 20px; }
              .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure img {
                margin-bottom: 20px; }
            .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_link figure:nth-last-child(2) {
              padding-left: 0; }
          .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo {
            padding: 50px 30px 10px 30px;
            margin-top: 40px;
            margin-bottom: 100px; }
            .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo .madoris_box04_main_memo-tag {
              padding: 5px 10px 5px 35px;
              background-position: 5px center;
              background-size: 23px auto; }
            .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl {
              padding: 20px 30px 10px 30px; }
              .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl dt {
                font-size: 40px; }
              .madoris .madoris_box04 .madoris_box04_main .madoris_box04_main_memo dl dd {
                padding-bottom: 30px; } }
    @media (min-width: 1200px) {
      .madoris .madoris_box04 .madoris_box04_main {
        width: 68%; } }

.secondopinion {
  padding-bottom: 20px; }
  .secondopinion h2 {
    padding-bottom: 40px; }
  .secondopinion h3 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    text-align: center;
    padding-bottom: 20px; }
    .secondopinion h3 br {
      display: none; }
  .secondopinion h4 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    border-bottom: solid 1px #CFCFCF;
    padding-bottom: 10px;
    margin-bottom: 20px; }
  .secondopinion img {
    border-radius: 5px; }
  @media (min-width: 600px) {
    .secondopinion {
      padding-bottom: 30px; }
      .secondopinion h3 {
        font-size: 25px;
        padding-bottom: 30px; }
      .secondopinion h4 {
        font-size: 20px; } }
  @media (min-width: 960px) {
    .secondopinion {
      padding-bottom: 50px; }
      .secondopinion h2 {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-align: left;
        display: inline-block;
        font-size: 30px;
        line-height: 200%; }
        .secondopinion h2 span {
          text-combine-upright: all;
          text-align: center; }
      .secondopinion h3 {
        text-align: left;
        font-size: 30px;
        line-height: 200%; }
        .secondopinion h3 br {
          display: block; }
      .secondopinion h4 {
        font-size: 25px;
        padding-bottom: 30px;
        margin-bottom: 40px; } }
  @media (min-width: 1200px) {
    .secondopinion h2 {
      font-size: 40px; }
    .secondopinion h3 {
      font-size: 40px; } }
  .secondopinion .secondopinion_box01 {
    padding-bottom: 60px; }
    .secondopinion .secondopinion_box01 nav {
      background-color: #F6F6F6;
      padding: 30px;
      border-radius: 10px;
      font-weight: 400; }
      .secondopinion .secondopinion_box01 nav h3 {
        text-align: left;
        padding-bottom: 15px;
        font-size: 120%; }
      .secondopinion .secondopinion_box01 nav ol {
        counter-reset: count 0;
        list-style-type: none; }
        .secondopinion .secondopinion_box01 nav ol li {
          padding-bottom: 5px; }
          .secondopinion .secondopinion_box01 nav ol li ol {
            margin-left: 1.5em; }
        .secondopinion .secondopinion_box01 nav ol li:before {
          counter-increment: count 1;
          content: counters(count,"-") ". "; }
    @media (min-width: 600px) {
      .secondopinion .secondopinion_box01 {
        padding-bottom: 100px; }
        .secondopinion .secondopinion_box01 nav {
          padding: 50px; }
          .secondopinion .secondopinion_box01 nav h3 {
            padding-bottom: 20px; } }
    @media (min-width: 960px) {
      .secondopinion .secondopinion_box01 {
        padding-bottom: 200px;
        position: relative; }
        .secondopinion .secondopinion_box01 .secondopinion_box01_h2 {
          position: absolute;
          top: 0;
          left: 8%; }
        .secondopinion .secondopinion_box01 nav {
          padding: 50px;
          float: right;
          width: 57%; }
          .secondopinion .secondopinion_box01 nav h3 {
            padding-bottom: 20px; } }
    @media (min-width: 1200px) {
      .secondopinion .secondopinion_box01 nav {
        width: 61%; } }
  .secondopinion .secondopinion_box02 {
    background-color: #FAF7F0;
    margin: 20px 20px 60px 20px;
    padding: 30px;
    border-radius: 20px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 400;
    font-style: normal; }
    .secondopinion .secondopinion_box02 p {
      padding-bottom: 20px;
      line-height: 250% !important;
      font-size: 110%; }
    .secondopinion .secondopinion_box02 strong {
      border-bottom: double 3px #BEBEBE; }
    @media (min-width: 600px) {
      .secondopinion .secondopinion_box02 {
        margin: 30px 30px 100px 30px;
        padding: 50px 50px 20px 50px;
        text-align: center; }
        .secondopinion .secondopinion_box02 p {
          padding-bottom: 30px; } }
    @media (min-width: 960px) {
      .secondopinion .secondopinion_box02 {
        margin: 0 0 200px 60px;
        padding: 80px 0;
        border-radius: 20px 0 0 20px; }
        .secondopinion .secondopinion_box02 p {
          padding-bottom: 30px; }
        .secondopinion .secondopinion_box02 .secondopinion_box02_h2 {
          float: left;
          width: 28%;
          text-align: left; }
        .secondopinion .secondopinion_box02 .secondopinion_box02_main {
          float: right;
          width: 72%; } }
    @media (min-width: 1200px) {
      .secondopinion .secondopinion_box02 {
        margin: 0 0 200px 60px;
        padding: 120px 0;
        border-radius: 20px 0 0 20px; } }
  .secondopinion .secondopinion_box03 {
    padding-bottom: 60px; }
    .secondopinion .secondopinion_box03 p {
      padding-bottom: 30px; }
    .secondopinion .secondopinion_box03 .secondopinion_box03_main ul {
      margin-bottom: 30px; }
      .secondopinion .secondopinion_box03 .secondopinion_box03_main ul li {
        list-style: disc;
        margin-left: 1.5em;
        padding-bottom: 10px; }
    .secondopinion .secondopinion_box03 figure {
      text-align: center;
      margin-bottom: 40px; }
      .secondopinion .secondopinion_box03 figure img {
        padding-bottom: 10px;
        width: 80%;
        margin: 0 auto; }
      .secondopinion .secondopinion_box03 figure strong {
        font-size: 110%; }
    @media (min-width: 600px) {
      .secondopinion .secondopinion_box03 {
        padding-bottom: 100px; } }
    @media (min-width: 960px) {
      .secondopinion .secondopinion_box03 {
        padding-bottom: 200px; }
        .secondopinion .secondopinion_box03 p {
          padding-bottom: 60px; }
        .secondopinion .secondopinion_box03 .secondopinion_box03_h2 {
          float: left;
          width: 30%; }
        .secondopinion .secondopinion_box03 .secondopinion_box03_main {
          float: right;
          width: 67%; }
          .secondopinion .secondopinion_box03 .secondopinion_box03_main ul {
            margin-bottom: 80px; }
            .secondopinion .secondopinion_box03 .secondopinion_box03_main ul li {
              padding-bottom: 15px; }
        .secondopinion .secondopinion_box03 figure {
          margin-bottom: 100px;
          width: 45%; }
          .secondopinion .secondopinion_box03 figure img {
            padding-bottom: 10px;
            width: auto;
            margin: 0; } }
    @media (min-width: 1200px) {
      .secondopinion .secondopinion_box03 .secondopinion_box03_main {
        width: 68%; } }
  .secondopinion .secondopinion_box04 {
    background-color: #FAF7F0;
    margin: 20px 20px 60px 20px;
    padding: 40px 0 20px 0;
    border-radius: 20px; }
    .secondopinion .secondopinion_box04 p {
      padding-bottom: 30px; }
    @media (min-width: 600px) {
      .secondopinion .secondopinion_box04 {
        padding: 60px 0 40px 0; } }
    @media (min-width: 960px) {
      .secondopinion .secondopinion_box04 {
        padding: 100px 0 60px 0;
        margin: 20px 40px 200px 40px; }
        .secondopinion .secondopinion_box04 p {
          padding-bottom: 60px; }
        .secondopinion .secondopinion_box04 .secondopinion_box04_h2 {
          float: left;
          width: 30%; }
        .secondopinion .secondopinion_box04 .secondopinion_box04_main {
          float: right;
          width: 67%; }
          .secondopinion .secondopinion_box04 .secondopinion_box04_main ul {
            margin-bottom: 80px; }
            .secondopinion .secondopinion_box04 .secondopinion_box04_main ul li {
              padding-bottom: 15px; }
        .secondopinion .secondopinion_box04 figure {
          margin-bottom: 100px;
          width: 45%; }
          .secondopinion .secondopinion_box04 figure img {
            padding-bottom: 10px;
            width: auto;
            margin: 0; } }
    @media (min-width: 1200px) {
      .secondopinion .secondopinion_box04 .secondopinion_box04_main {
        width: 68%; } }

.planningservice {
  padding-bottom: 100px; }
  .planningservice h2 {
    padding-bottom: 40px; }
  .planningservice h3 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    text-align: center;
    padding-bottom: 20px; }
    .planningservice h3 br {
      display: none; }
  .planningservice h4 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    border-bottom: solid 1px #CFCFCF;
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 15px; }
  .planningservice img {
    border-radius: 5px; }
  @media (min-width: 600px) {
    .planningservice {
      padding-bottom: 140px; }
      .planningservice h3 {
        font-size: 25px;
        padding-bottom: 30px; }
      .planningservice h4 {
        font-size: 20px; } }
  @media (min-width: 960px) {
    .planningservice {
      padding-bottom: 200px; }
      .planningservice h2 {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        text-align: left;
        display: inline-block;
        font-size: 30px;
        line-height: 200%; }
        .planningservice h2 span {
          text-combine-upright: all;
          text-align: center; }
      .planningservice h3 {
        text-align: left;
        font-size: 28px;
        line-height: 200%;
        font-feature-settings: "palt" 1; }
        .planningservice h3 br {
          display: block; }
      .planningservice h4 {
        font-size: 25px;
        padding-bottom: 30px;
        margin-bottom: 40px; } }
  @media (min-width: 1200px) {
    .planningservice h2 {
      font-size: 40px; }
    .planningservice h3 {
      font-size: 39px; } }
  .planningservice .planningservice_box01 {
    padding-bottom: 60px; }
    .planningservice .planningservice_box01 nav {
      background-color: #F6F6F6;
      padding: 30px;
      border-radius: 10px;
      font-weight: 400; }
      .planningservice .planningservice_box01 nav h3 {
        text-align: left;
        padding-bottom: 15px;
        font-size: 120%; }
      .planningservice .planningservice_box01 nav ol {
        counter-reset: count 0;
        list-style-type: none; }
        .planningservice .planningservice_box01 nav ol li {
          padding-bottom: 5px; }
          .planningservice .planningservice_box01 nav ol li ol {
            margin-left: 1.5em; }
        .planningservice .planningservice_box01 nav ol li:before {
          counter-increment: count 1;
          content: counters(count,"-") ". "; }
    @media (min-width: 600px) {
      .planningservice .planningservice_box01 {
        padding-bottom: 100px; }
        .planningservice .planningservice_box01 nav {
          padding: 50px; }
          .planningservice .planningservice_box01 nav h3 {
            padding-bottom: 20px; } }
    @media (min-width: 960px) {
      .planningservice .planningservice_box01 {
        padding-bottom: 200px;
        position: relative; }
        .planningservice .planningservice_box01 .planningservice_box01_h2 {
          position: absolute;
          top: 0;
          left: 4%; }
        .planningservice .planningservice_box01 nav {
          padding: 50px;
          float: right;
          width: 57%; }
          .planningservice .planningservice_box01 nav h3 {
            padding-bottom: 20px; } }
    @media (min-width: 1200px) {
      .planningservice .planningservice_box01 nav {
        width: 61%; } }
  .planningservice .planningservice_box02 {
    background-color: #FAF7F0;
    margin: 20px 20px 60px 20px;
    padding: 30px;
    border-radius: 20px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 400;
    font-style: normal; }
    .planningservice .planningservice_box02 p {
      padding-bottom: 20px;
      line-height: 250% !important;
      font-size: 110%; }
    .planningservice .planningservice_box02 a {
      text-decoration: underline; }
    .planningservice .planningservice_box02 .btn03 a {
      text-decoration: none; }
    .planningservice .planningservice_box02 img {
      vertical-align: middle;
      width: 50px; }
    @media (min-width: 600px) {
      .planningservice .planningservice_box02 {
        margin: 30px 30px 120px 30px;
        padding: 50px 50px 20px 50px;
        text-align: center; }
        .planningservice .planningservice_box02 p {
          padding-bottom: 30px; }
        .planningservice .planningservice_box02 img {
          width: 70px; } }
    @media (min-width: 960px) {
      .planningservice .planningservice_box02 {
        margin: 0 0 200px 60px;
        padding: 80px 0 30px 0;
        border-radius: 20px 0 0 20px; }
        .planningservice .planningservice_box02 p {
          padding-bottom: 80px; }
        .planningservice .planningservice_box02 img {
          width: 90px; }
        .planningservice .planningservice_box02 .planningservice_box02_h2 {
          float: left;
          width: 28%;
          text-align: left; }
        .planningservice .planningservice_box02 .planningservice_box02_main {
          float: right;
          width: 72%; } }
    @media (min-width: 1200px) {
      .planningservice .planningservice_box02 {
        margin: 0 0 200px 60px;
        padding: 120px 0;
        border-radius: 20px 0 0 20px; } }
  .planningservice .planningservice_box03 {
    padding-bottom: 80px; }
    .planningservice .planningservice_box03 p {
      padding-bottom: 30px; }
    .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 {
      padding-bottom: 60px; }
      .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 h5 {
        background: linear-gradient(transparent 50%, #FFF788 50%);
        display: inline-block;
        font-size: 14px;
        margin-bottom: 5px;
        margin-left: 1em;
        line-height: 150%; }
      .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 h5::before {
        content: '・ ';
        color: #929292;
        font-size: 20px;
        vertical-align: middle;
        margin-left: -1em; }
      .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 P {
        margin-left: 1em;
        padding: 0; }
    .planningservice .planningservice_box03 .planningservice_box03_main .youtube {
      margin-bottom: 30px; }
    @media (min-width: 600px) {
      .planningservice .planningservice_box03 {
        padding-bottom: 120px; }
        .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main_bg {
          padding-bottom: 80px; }
        .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 {
          padding-bottom: 50px; }
          .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 h5 {
            font-size: 16px;
            margin-bottom: 10px; }
          .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 .planningservice_box03_main1_txt {
            float: left;
            width: 50%; }
          .planningservice .planningservice_box03 .planningservice_box03_main .planningservice_box03_main1 img {
            float: right;
            width: 45%; }
        .planningservice .planningservice_box03 .planningservice_box03_main .youtube {
          margin-bottom: 60px; } }
    @media (min-width: 960px) {
      .planningservice .planningservice_box03 {
        padding-bottom: 200px; }
        .planningservice .planningservice_box03 p {
          padding-bottom: 60px; }
        .planningservice .planningservice_box03 .planningservice_box03_h2 {
          float: left;
          width: 30%; }
        .planningservice .planningservice_box03 .planningservice_box03_main {
          float: right;
          width: 67%; } }
    @media (min-width: 1200px) {
      .planningservice .planningservice_box03 .planningservice_box03_main {
        width: 68%; } }
  .planningservice .planningservice_box04 {
    padding-bottom: 80px; }
    .planningservice .planningservice_box04 p {
      padding-bottom: 30px; }
    .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main_bg {
      padding-bottom: 60px; }
    .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main1 {
      padding-bottom: 40px; }
      .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main1 h5 {
        display: inline-block;
        font-size: 14px;
        margin-bottom: 5px;
        margin-left: 1em;
        line-height: 150%; }
      .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main1 h5::before {
        content: '・ ';
        color: #929292;
        font-size: 20px;
        vertical-align: middle;
        margin-left: -1em; }
      .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main1 P {
        margin-left: 1em;
        padding: 0; }
    @media (min-width: 600px) {
      .planningservice .planningservice_box04 {
        padding-bottom: 120px; }
        .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main_bg {
          padding-bottom: 80px; }
        .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main1 {
          padding-bottom: 50px; }
          .planningservice .planningservice_box04 .planningservice_box04_main .planningservice_box04_main1 h5 {
            font-size: 16px;
            margin-bottom: 10px; } }
    @media (min-width: 960px) {
      .planningservice .planningservice_box04 {
        padding-bottom: 200px; }
        .planningservice .planningservice_box04 .planningservice_box04_main_bg {
          padding-bottom: 100px; }
        .planningservice .planningservice_box04 p {
          padding-bottom: 60px; }
        .planningservice .planningservice_box04 .planningservice_box04_h2 {
          float: left;
          width: 30%; }
        .planningservice .planningservice_box04 .planningservice_box04_main {
          float: right;
          width: 67%; } }
    @media (min-width: 1200px) {
      .planningservice .planningservice_box04 .planningservice_box04_main {
        width: 68%; } }
  .planningservice .planningservice_box05 {
    padding-bottom: 80px; }
    .planningservice .planningservice_box05 p {
      padding-bottom: 30px; }
    .planningservice .planningservice_box05 .planningservice_box05_main_bg {
      border: solid 1px #707070;
      padding: 40px 40px 0 40px;
      margin-bottom: 40px;
      background-image: url("../img/service/planningservice/icon_voice.jpg");
      background-repeat: no-repeat;
      background-size: 40px auto;
      background-position: right 150px bottom 10px; }
      .planningservice .planningservice_box05 .planningservice_box05_main_bg h4 {
        border-bottom: none; }
    @media (min-width: 600px) {
      .planningservice .planningservice_box05 {
        padding-bottom: 120px; }
        .planningservice .planningservice_box05 .planningservice_box05_main_bg {
          padding: 40px 40px 10px 40px;
          margin-bottom: 60px;
          background-size: 50px auto;
          background-position: right 160px bottom 20px; } }
    @media (min-width: 960px) {
      .planningservice .planningservice_box05 {
        padding-bottom: 200px; }
        .planningservice .planningservice_box05 p {
          padding-bottom: 60px; }
        .planningservice .planningservice_box05 .planningservice_box05_h2 {
          float: left;
          width: 30%; }
        .planningservice .planningservice_box05 .planningservice_box05_main {
          float: right;
          width: 67%; }
        .planningservice .planningservice_box05 .planningservice_box05_main_bg {
          padding: 60px 60px 10px 60px;
          margin-bottom: 80px;
          background-size: 60px auto;
          background-position: right 200px bottom 40px; }
          .planningservice .planningservice_box05 .planningservice_box05_main_bg h4 {
            padding-bottom: 30px;
            margin: 0; } }
    @media (min-width: 1200px) {
      .planningservice .planningservice_box05 .planningservice_box05_main {
        width: 68%; } }
  .planningservice .secondopinion_box06 {
    background-color: #FAF7F0;
    margin: 20px 20px 60px 20px;
    padding: 40px 0 20px 0;
    border-radius: 20px; }
    .planningservice .secondopinion_box06 p {
      padding-bottom: 30px; }
    @media (min-width: 600px) {
      .planningservice .secondopinion_box06 {
        padding: 60px 0 40px 0; } }
    @media (min-width: 960px) {
      .planningservice .secondopinion_box06 {
        padding: 100px 0 60px 0;
        margin: 20px 40px 200px 40px; }
        .planningservice .secondopinion_box06 p {
          padding-bottom: 60px; }
        .planningservice .secondopinion_box06 .secondopinion_box06_h2 {
          float: left;
          width: 30%; }
        .planningservice .secondopinion_box06 .secondopinion_box06_main {
          float: right;
          width: 67%; }
          .planningservice .secondopinion_box06 .secondopinion_box06_main ul {
            margin-bottom: 80px; }
            .planningservice .secondopinion_box06 .secondopinion_box06_main ul li {
              padding-bottom: 15px; }
        .planningservice .secondopinion_box06 figure {
          margin-bottom: 100px;
          width: 45%; }
          .planningservice .secondopinion_box06 figure img {
            padding-bottom: 10px;
            width: auto;
            margin: 0; } }
    @media (min-width: 1200px) {
      .planningservice .secondopinion_box06 .secondopinion_box06_main {
        width: 68%; } }

.merumaga {
  padding-bottom: 20px; }
  @media (min-width: 600px) {
    .merumaga {
      padding-bottom: 30px; } }
  @media (min-width: 960px) {
    .merumaga {
      padding-bottom: 50px; } }
  .merumaga .merumaga_box01 {
    background-color: #FAF7F0;
    margin: 0 20px 60px 20px;
    padding: 30px;
    position: relative;
    border-radius: 20px; }
    .merumaga .merumaga_box01 img {
      border-radius: 10px; }
    .merumaga .merumaga_box01 .merumaga_box01_1 {
      padding-bottom: 40px; }
      .merumaga .merumaga_box01 .merumaga_box01_1 img {
        margin-bottom: 20px; }
    .merumaga .merumaga_box01 .merumaga_box01_2 img {
      margin-bottom: 20px; }
    @media (min-width: 600px) {
      .merumaga .merumaga_box01 {
        margin: 50px 0 100px 40px;
        padding: 650px 30px 30px 30px;
        border-radius: 20px 0 0 20px; }
        .merumaga .merumaga_box01 .merumaga_box01_1 {
          position: absolute;
          top: -50px;
          right: 20px;
          left: -20px; }
          .merumaga .merumaga_box01 .merumaga_box01_1 img {
            margin-bottom: 20px;
            float: left;
            width: 45%;
            margin-right: 8%; }
          .merumaga .merumaga_box01 .merumaga_box01_1 .merumaga_box01_1_txt {
            padding-left: 8%;
            padding-top: 100px; }
        .merumaga .merumaga_box01 .merumaga_box01_2 img {
          margin-bottom: 20px;
          float: right;
          width: 48%;
          margin-left: 7%; } }
    @media (min-width: 960px) {
      .merumaga .merumaga_box01 {
        margin: 180px 0 200px 10%;
        padding: 850px 50px 100px 80px; }
        .merumaga .merumaga_box01 .merumaga_box01_1 {
          top: -140px;
          right: 30px;
          left: -50px;
          max-width: 2000px; }
          .merumaga .merumaga_box01 .merumaga_box01_1 img {
            margin-bottom: 40px;
            margin-right: 0; }
          .merumaga .merumaga_box01 .merumaga_box01_1 .merumaga_box01_1_txt {
            padding-left: 0;
            padding-top: 260px;
            float: right;
            width: 49%; }
        .merumaga .merumaga_box01 .merumaga_box01_2 {
          max-width: 1600px;
          margin-right: 0;
          margin-left: auto; }
          .merumaga .merumaga_box01 .merumaga_box01_2 img {
            margin-bottom: 20px;
            float: right;
            width: 55%; } }
  .merumaga .merumaga_box02 p {
    padding-bottom: 30px; }
  @media (min-width: 600px) {
    .merumaga .merumaga_box02 {
      text-align: center;
      padding-bottom: 60px; }
      .merumaga .merumaga_box02 p {
        padding-bottom: 50px; } }
  @media (min-width: 960px) {
    .merumaga .merumaga_box02 p {
      padding-bottom: 60px; } }
  .merumaga .merumaga_box03 {
    font-weight: 500;
    padding-bottom: 60px; }
    .merumaga .merumaga_box03 h3 {
      font-size: 14px;
      border-bottom: solid 1px #CFCFCF;
      padding-bottom: 10px;
      margin-bottom: 20px; }
      .merumaga .merumaga_box03 h3 span {
        display: inline-block;
        background-color: #929292;
        color: #FFFFFF;
        margin-right: 5px;
        font-size: 70%;
        padding: 0 7px;
        border-radius: 5px; }
    .merumaga .merumaga_box03 p {
      padding-bottom: 20px; }
    .merumaga .merumaga_box03 .merumaga_box03_bg {
      background-color: #FAF7F0;
      border-radius: 5px;
      padding: 30px 30px 20px 30px;
      margin-bottom: 40px; }
      .merumaga .merumaga_box03 .merumaga_box03_bg h4 {
        font-size: 14px;
        padding-bottom: 20px; }
      .merumaga .merumaga_box03 .merumaga_box03_bg ul li {
        margin-left: 2em;
        padding-bottom: 10px; }
      .merumaga .merumaga_box03 .merumaga_box03_bg ul li:before {
        content: '－　';
        margin-left: -2em; }
    @media (min-width: 600px) {
      .merumaga .merumaga_box03 {
        padding-bottom: 100px; }
        .merumaga .merumaga_box03 h3 {
          font-size: 18px;
          padding-bottom: 20px;
          margin-bottom: 30px; }
          .merumaga .merumaga_box03 h3 span {
            padding: 0 7px; }
        .merumaga .merumaga_box03 p {
          padding-bottom: 20px; }
        .merumaga .merumaga_box03 .merumaga_box03_bg {
          padding: 60px 60px 40px 60px;
          margin-bottom: 80px; }
          .merumaga .merumaga_box03 .merumaga_box03_bg h4 {
            font-size: 18px;
            padding-bottom: 30px; } }
    @media (min-width: 960px) {
      .merumaga .merumaga_box03 {
        padding-bottom: 200px; }
        .merumaga .merumaga_box03 h3 {
          font-size: 25px;
          padding-bottom: 30px;
          margin-bottom: 40px; }
          .merumaga .merumaga_box03 h3 span {
            padding: 0 10px;
            margin-right: 20px; }
        .merumaga .merumaga_box03 p {
          padding-bottom: 40px; }
        .merumaga .merumaga_box03 .merumaga_box03_bg {
          padding: 70px 70px 60px 70px;
          margin-bottom: 100px; }
          .merumaga .merumaga_box03 .merumaga_box03_bg h4 {
            font-size: 24px;
            padding-bottom: 30px; } }
  .merumaga .merumaga_box04 {
    padding-bottom: 60px; }
    .merumaga .merumaga_box04 h2 {
      font-size: 160%;
      background-image: url("../img/merumaga/icon01.png");
      background-repeat: no-repeat;
      background-position: 90% center;
      background-size: 40px auto;
      padding: 20px 0;
      margin-bottom: 20px; }
    .merumaga .merumaga_box04 .merumaga_box04_bg {
      border: solid 1px #707070;
      padding: 20px; }
      .merumaga .merumaga_box04 .merumaga_box04_bg hr {
        border-top: dashed 1px #B6B6B6;
        margin: 20px 0; }
    @media (min-width: 600px) {
      .merumaga .merumaga_box04 {
        padding-bottom: 160px; }
        .merumaga .merumaga_box04 h2 {
          font-size: 160%;
          background-position: 80% center;
          background-size: 50px auto;
          padding: 30px 0;
          margin-bottom: 40px; }
        .merumaga .merumaga_box04 .merumaga_box04_bg {
          padding: 50px; }
          .merumaga .merumaga_box04 .merumaga_box04_bg hr {
            margin: 40px 0; } }
    @media (min-width: 960px) {
      .merumaga .merumaga_box04 {
        padding-bottom: 100px; }
        .merumaga .merumaga_box04 h2 {
          font-size: 40px;
          background-position: 78% center;
          background-size: 55px auto;
          padding: 40px 0; }
        .merumaga .merumaga_box04 .merumaga_box04_bg {
          padding: 60px; } }

.notnound {
  padding-bottom: 60px; }
  .notnound h2 {
    text-align: left;
    padding: 40px 0 10px 0;
    margin: 0;
    font-size: 110%;
    font-weight: 700; }
  @media (min-width: 600px) {
    .notnound {
      padding-bottom: 100px; } }
  @media (min-width: 960px) {
    .notnound {
      padding-bottom: 150px; } }

.search-box input[type="search"] {
  background-color: #fff;
  border: 1px solid #ddd;
  height: 34px;
  width: 250px;
  margin: 10px 0 0 0;
  padding: 0 10px;
  padding-right: 40px;
  border-radius: 17px;
  margin-right: 10px;
  -webkit-transition: color 0.3s ease, background 0.3s ease, transform 0.3s ease, opacity 0.3s ease, border 0.3s ease, padding 0.3s ease, left 0.3s ease, bottom 0.3s ease, box-shadow 0.3s ease;
  transition: color 0.3s ease, background 0.3s ease, transform 0.3s ease, opacity 0.3s ease, border 0.3s ease, padding 0.3s ease, left 0.3s ease, bottom 0.3s ease, box-shadow 0.3s ease; }

@media (max-width: 767px) {
  .search-box input[type="search"] {
    font-size: 16px; } }
.search-box input[type="submit"] {
  display: inline-block; }

@media (max-width: 767px) {
  .search-box input[type="submit"] {
    font-size: 14px;
    right: 10px; } }
.search-box input[type="search"]:focus {
  outline: none;
  border: 1px solid #0094c8; }

.search-box input[type="submit"]:hover {
  cursor: pointer; }

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

  投稿詳細

================================================================= */
.p-post h1 {
  font-size: 18px;
  text-align: left;
  line-height: 140%;
  padding-bottom: 20px; }
  @media (min-width: 600px) {
    .p-post h1 {
      font-size: 20px; } }
  @media (min-width: 960px) {
    .p-post h1 {
      font-size: 35px; } }
.p-post time {
  padding-bottom: 20px;
  display: inline-block; }
.p-post__thumbnail {
  margin-bottom: 30px; }
.p-post__content > p {
  margin-top: 40px;
  margin-bottom: 40px; }
  .p-post__content > p a {
    border-bottom: solid 1px currentColor;
    transition: 0.3s; }
    .p-post__content > p a:hover {
      border-bottom: solid 1px transparent;
      text-decoration: none; }
.p-post__content h2 {
  text-align: left;
  border-bottom: solid 1px #cfcfcf;
  padding-bottom: 10px;
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: 700; }
  @media (min-width: 600px) {
    .p-post__content h2 {
      margin-top: 60px; } }
  .p-post__content h2 + p {
    margin-top: 20px; }
  @media (min-width: 960px) {
    .p-post__content h2 {
      font-size: 30px;
      padding-bottom: 20px;
      margin-top: 100px; } }
.p-post__content h3 {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-size: 16px;
  margin-top: 20px;
  margin-bottom: 20px; }
  @media (min-width: 600px) {
    .p-post__content h3 {
      font-size: 18px; } }
  @media (min-width: 960px) {
    .p-post__content h3 {
      margin-top: 60px;
      font-size: 23px; } }
  .p-post__content h3::before {
    content: "―";
    padding-right: 1em;
    color: #ffcd44; }
  .p-post__content h3 + p {
    margin-top: 20px; }
.p-post__content h4 {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 20px; }
  .p-post__content h4 + p {
    margin-top: 20px; }
.p-post__content ul {
  margin-top: 20px;
  margin-bottom: 20px; }
  .p-post__content ul li {
    list-style: disc;
    margin-left: 1.5em; }
.p-post .wp-block-button__link {
  text-decoration: none;
  border: 1px solid;
  font-size: 1em;
  font-weight: 500;
  transition: 0.3s; }
  .p-post .wp-block-button__link:hover {
    text-decoration: none;
    border: 1px solid transparent;
    background-color: #ffde92; }
.p-post .wp-embedded-content {
  max-width: 100%; }

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

  ページネーション

================================================================= */
.wp-pagenavi .current {
  background-color: #F9F9F9;
  color: #929292; }

.wp-pagenavi span,
.wp-pagenavi a {
  padding: 10px 20px !important;
  display: inline-block; }

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

  吹き出し

================================================================= */
.p-balloon {
  display: flex;
  margin-top: 40px;
  margin-bottom: 40px; }
  .p-balloon.-hagiyama {
    flex-direction: row-reverse; }
  .p-balloon p {
    margin-bottom: 20px;
    padding-bottom: 0 !important; }
    .p-balloon p:last-of-type {
      margin-bottom: 0; }
  .p-balloon__icon {
    width: 80px;
    text-align: center;
    flex: 1 0 auto;
    margin-right: 20px;
    font-size: 12px; }
    @media (min-width: 600px) {
      .p-balloon__icon {
        width: 100px; } }
    .-hagiyama .p-balloon__icon {
      margin-right: 0;
      margin-left: 20px; }
  .p-balloon__body {
    position: relative;
    width: 100%;
    padding: 20px;
    border-radius: 10px;
    background-color: #fafafa; }
    @media (min-width: 600px) {
      .p-balloon__body {
        padding: 40px; } }
    .p-balloon__body::before {
      position: absolute;
      content: "";
      display: block;
      width: 0;
      height: 0;
      left: -15px;
      top: 30px;
      border-right: 15px solid #fafafa;
      border-top: 15px solid transparent;
      border-bottom: 15px solid transparent; }
      .-hagiyama .p-balloon__body::before {
        right: -15px;
        left: auto;
        border-left: 15px solid #fafafa;
        border-right: none; }

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

  目次

================================================================= */
#toc_container {
  margin: 40px 0;
  padding: 20px;
  border: 10px solid #fafafa; }
  #toc_container ul {
    counter-reset: count 0;
    list-style-type: none; }
    #toc_container ul li {
      padding-bottom: 5px; }
      #toc_container ul li ul {
        margin-left: 0; }
        #toc_container ul li ul li {
          list-style: none !important; }
    #toc_container ul li:before {
      counter-increment: count 1;
      content: counters(count,"-") ". "; }
  @media (min-width: 600px) {
    #toc_container {
      padding: 40px; } }
  #toc_container .toc_title {
    text-align: center;
    font-weight: bold;
    margin-left: 0; }
  #toc_container .toc_list li {
    list-style: none;
    margin-left: 1.5em; }
  #toc_container .toc_list > li > ul > li {
    list-style: disc;
    font-size: 0.9em; }

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

  ブログカード

================================================================= */
.p-blog-card {
  position: relative;
  margin-top: 60px;
  margin-bottom: 40px; }
  .p-blog-card__label {
    display: inline-block;
    background-color: #313131;
    color: #ffffff;
    padding: 5px 5px 5px 25px;
    border-radius: 5px;
    font-size: 90%;
    font-weight: 700;
    background-image: url("../img/common/icon_page.png");
    background-repeat: no-repeat;
    background-position: 5px center;
    background-size: 15px auto;
    position: absolute;
    top: -15px;
    left: 10px;
    margin-bottom: 0; }
    @media (min-width: 600px) {
      .p-blog-card__label {
        padding: 5px 10px 5px 35px;
        background-position: 7px center;
        background-size: 20px auto;
        left: 20px; } }
  .p-blog-card__inner {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    border: solid 1px #313131;
    border-radius: 10px;
    padding: 30px 10px 10px 10px;
    margin-top: 40px;
    transition: 0.3s; }
    @media (min-width: 600px) {
      .p-blog-card__inner {
        padding: 40px 20px 20px 20px; } }
    @media (min-width: 960px) {
      .p-blog-card__inner {
        padding: 45px 20px 20px 20px; } }
    @media (min-width: 1200px) {
      .p-blog-card__inner {
        align-items: center; } }
    .p-blog-card__inner:hover {
      text-decoration: none;
      opacity: 0.7; }
  .p-blog-card__thumbnail {
    width: 40%; }
    .p-blog-card__thumbnail img {
      object-fit: cover;
      height: 120px;
      width: 100%; }
    @media (min-width: 960px) {
      .p-blog-card__thumbnail {
        width: 23%; } }
  .p-blog-card__body {
    width: 56%; }
    @media (min-width: 960px) {
      .p-blog-card__body {
        width: 74%; } }
  .p-blog-card__title {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-size: 16px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 10px; }
    .p-blog-card__title::before {
      content: "" !important;
      padding-right: 0 !important; }
    @media (min-width: 960px) {
      .p-blog-card__title {
        font-size: 20px !important; } }
  @media (min-width: 600px) {
    .p-blog-card__description {
      display: block;
      font-size: 14px; } }
  @media (min-width: 960px) {
    .p-blog-card__description {
      font-size: 16px;
      line-height: 160%; } }

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

  CTA

================================================================= */
.p-cta {
  background-color: #FAF7F0;
  padding: 40px 40px 20px 40px;
  border-radius: 20px;
  text-align: center; }
  @media (min-width: 600px) {
    .p-cta {
      padding: 60px 60px 40px 60px; } }
  .p-cta h2 {
    margin-bottom: 30px;
    padding-bottom: 0;
    font-weight: bold; }
  .p-cta .btn02 {
    margin-top: 40px; }
  .p-cta p {
    margin-bottom: 1em; }
    .p-cta p strong {
      font-size: 110%; }
    .p-cta p em {
      font-style: normal;
      text-decoration: underline; }

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

  MW WP FORM

================================================================= */
.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0; }

.mw_wp_form_confirm .confirm-none {
  display: none; }

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

  Gutenberg

================================================================= */
.column_main blockquote {
  position: relative;
  background-color: #F6F6F6;
  padding: 10px 60px 10px 60px;
  margin: 0; }
.column_main blockquote:before {
  display: inline-block;
  position: absolute;
  top: 18px;
  left: 15px;
  content: "“" !important;
  color: #cfcfcf;
  font-size: 60px;
  line-height: 1;
  font-weight: 900; }
.column_main blockquote:after {
  display: inline-block;
  position: absolute;
  bottom: 28px;
  right: 15px;
  content: "„";
  color: #cfcfcf;
  font-size: 60px;
  line-height: 1;
  font-weight: 900; }
.column_main blockquote p {
  padding: 0;
  margin: 10px 0;
  line-height: 1.7; }
.column_main blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em; }

.page_default {
  padding-bottom: 40px; }
  @media (min-width: 600px) {
    .page_default {
      padding-bottom: 60px; } }
  @media (min-width: 960px) {
    .page_default {
      padding-bottom: 100px; } }
