@charset "UTF-8";
/****************************************************
 * Stylesheet
 ****************************************************/
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  color: #000;
  background: #FFF;
  line-height: 1.5;
}

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

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

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

fieldset, img, svg {
  border: 0;
}

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

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

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

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

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

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

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

textarea {
  resize: vertical;
}

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

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

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

/**common**/
html {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-size: 10px;
  font-weight: 400;
  font-style: normal;
  color: #151515;
  scroll-behavior: smooth;
}
@media only screen and (max-width: 1099px) {
  html {
    font-size: 9px;
  }
}
@media only screen and (max-width: 780px) {
  html {
    height: 100%;
    font-size: 10px;
  }
}

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

a {
  color: #151515;
}
a[href^="tel:"] {
  cursor: default;
}
a[href^="tel:"]:hover {
  text-decoration: none;
}
a[href^="tel:"] img {
  opacity: 1 !important;
}
a img {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
a:hover img {
  opacity: 0.6;
}

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

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

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

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

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

.inner {
  width: 90%;
  max-width: 1080px;
  margin: 0 auto;
}
@media only screen and (max-width: 780px) {
  .inner {
    width: 88%;
  }
}

.anchor {
  width: 0;
  height: 0;
  margin: -10.4rem 0;
  padding: 10.4rem 0;
  font-size: 0;
  line-height: 0;
  display: block;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
}
@media only screen and (max-width: 900px) {
  .anchor {
    margin: -6.8rem 0;
    padding: 6.8rem 0;
  }
}

.fadeIn {
  visibility: hidden;
  opacity: 0;
  filter: brightness(0.85);
  animation: fadeIn 1s ease-out both;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    filter: brightness(0.85);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
    filter: brightness(1);
  }
}
/*ScrollHint(SP時のみ有効化)*/
@media only screen and (min-width: 781px) {
  .js-scrollable {
    overflow: visible !important;
  }
  .js-scrollable .scroll-hint-icon-wrap {
    display: none !important;
  }
}
@media only screen and (max-width: 780px) {
  .js-scrollable {
    width: 100%;
    padding-bottom: 1rem;
    overflow-x: auto;
  }
  .js-scrollable .scroll-hint-icon-wrap .scroll-hint-icon {
    width: 10rem;
    height: 10rem;
    background-color: rgba(15, 15, 15, 0.6);
    box-shadow: none;
    top: calc(50% - 5rem);
    left: calc(50% - 5rem);
  }
  .js-scrollable .scroll-hint-icon-wrap .scroll-hint-icon::before {
    width: 5.65rem;
    height: 6.49rem;
    margin: 0 auto;
    opacity: 0.46;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTEzLjAxNiIgaGVpZ2h0PSIxMjkuNzU2IiB2aWV3Qm94PSIwIDAgMTEzLjAxNiAxMjkuNzU2Ij4gPGRlZnM+IDxjbGlwUGF0aCBpZD0iY2xpcC1wYXRoIj4gPHJlY3QgaWQ9IumVt+aWueW9ol80ODEzIiBkYXRhLW5hbWU9IumVt+aWueW9oiA0ODEzIiB3aWR0aD0iMTEzLjAxNiIgaGVpZ2h0PSIxMjkuNzU2IiBmaWxsPSIjZmZmIi8+IDwvY2xpcFBhdGg+IDwvZGVmcz4gPGcgaWQ9IuOCsOODq+ODvOODl18xMjM3NyIgZGF0YS1uYW1lPSLjgrDjg6vjg7zjg5cgMTIzNzciIGNsaXAtcGF0aD0idXJsKCNjbGlwLXBhdGgpIj4gPHBhdGggaWQ9IuODkeOCuV81NDM0IiBkYXRhLW5hbWU9IuODkeOCuSA1NDM0IiBkPSJNMTE4LjQ1MSw3Mi43MDZhMi41NjMsMi41NjMsMCwwLDEtMi41NjMtMi41NjNWNjUuNWE1LjEzNyw1LjEzNywwLDEsMC0xMC4yNzMsMCwyLjU2MywyLjU2MywwLDAsMS01LjEyNiwwVjYwLjg1MmE1LjEzNyw1LjEzNywwLDEsMC0xMC4yNzMsMCwyLjU2MywyLjU2MywwLDAsMS01LjEyNiwwVjI1Ljc3MWEyLjU2MywyLjU2MywwLDAsMSw1LjEyNiwwdjI2LjJhMTAuMjU3LDEwLjI1NywwLDAsMSwxNC42NzksNS4xQTEwLjI1NywxMC4yNTcsMCwwLDEsMTIxLjAxNCw2NS41djQuNjQ1YTIuNTYzLDIuNTYzLDAsMCwxLTIuNTYzLDIuNTYzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuMzk5IC02LjM4MikiIGZpbGw9IiNmZmYiLz4gPHBhdGggaWQ9IuODkeOCuV81NDM1IiBkYXRhLW5hbWU9IuODkeOCuSA1NDM1IiBkPSJNMTMwLjEzMyw5Ni41NDRhMi41NjMsMi41NjMsMCwwLDEtMi41NjMtMi41NjNWODYuOTczYTIuNTYzLDIuNTYzLDAsMSwxLDUuMTI2LDB2Ny4wMDhhMi41NjMsMi41NjMsMCwwLDEtMi41NjMsMi41NjMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0zNS4wODEgLTIzLjIxMikiIGZpbGw9IiNmZmYiLz4gPHBhdGggaWQ9IuODkeOCuV81NDM2IiBkYXRhLW5hbWU9IuODkeOCuSA1NDM2IiBkPSJNMTA4Ljg5NCw5MC4yNjlhMi41NjMsMi41NjMsMCwwLDEtMi41NjMtMi41NjNWODAuNTY3YTIuNTYzLDIuNTYzLDAsMSwxLDUuMTI2LDB2Ny4xMzlhMi41NjMsMi41NjMsMCwwLDEtMi41NjMsMi41NjMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yOS4yNCAtMjEuNDUpIiBmaWxsPSIjZmZmIi8+IDxwYXRoIGlkPSLjg5HjgrlfNTQzNyIgZGF0YS1uYW1lPSLjg5HjgrkgNTQzNyIgZD0iTTg3LjY1Myw4OS41MTZhMi41NjMsMi41NjMsMCwwLDEtMi41NjMtMi41NjN2LTEyLjhhMi41NjMsMi41NjMsMCwwLDEsNS4xMjYsMHYxMi44YTIuNTYzLDIuNTYzLDAsMCwxLTIuNTYzLDIuNTYzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjMuMzk5IC0xOS42ODgpIiBmaWxsPSIjZmZmIi8+IDxwYXRoIGlkPSLjg5HjgrlfNTQzOCIgZGF0YS1uYW1lPSLjg5HjgrkgNTQzOCIgZD0iTTgyLjY3NywyNS4wNTFhMi41NjMsMi41NjMsMCwwLDEtMi41NjMtMi41NjMsMy45NjcsMy45NjcsMCwxLDAtNy45MzQsMCwyLjU2MywyLjU2MywwLDEsMS01LjEyNiwwLDkuMDkzLDkuMDkzLDAsMSwxLDE4LjE4NSwwLDIuNTYzLDIuNTYzLDAsMCwxLTIuNTYzLDIuNTYzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTguNDQgLTMuNjgzKSIgZmlsbD0iI2ZmZiIvPiA8cGF0aCBpZD0i44OR44K5XzU0MzkiIGRhdGEtbmFtZT0i44OR44K5IDU0MzkiIGQ9Ik05MC43NDQsMTM2LjEzOGEzNS40NTksMzUuNDU5LDAsMCwxLTI3LjA0MS0xMi41Yy01LjQ4LTYuNDMzLTguNy0xNi4yLTExLjUzNi0yNS42NS0xLjQ0MS00LjgwNi0zLjQ4LTE4LjA3My0zLjczNS0xOS43NDhhOS4yNzcsOS4yNzcsMCwwLDEsLjkxNi03LDguOTQ1LDguOTQ1LDAsMCwxLDEyLjUtMy4wNVYyNS43NzJhMi41NjMsMi41NjMsMCwxLDEsNS4xMjUsMFY3Ni4xMTZhMi41NjIsMi41NjIsMCwwLDEtNS4wMjkuNjk0Yy0uMTctLjU4Mi0xLjgtNS43NTEtNS45MS00LjczMUEzLjU4NSwzLjU4NSwwLDAsMCw1My43ODksNzMuOGE0LjEyNyw0LjEyNywwLDAsMC0uMzg1LDMuMTkxLDIuNTYyLDIuNTYyLDAsMCwxLC4wNzMuMzMxYy4wMjIuMTQ0LDIuMiwxNC41MTYsMy42LDE5LjIsMi42NzcsOC45MjksNS42OTMsMTguMTIyLDEwLjUyOSwyMy44YTMwLjM3OCwzMC4zNzgsMCwwLDAsNTMuNTE3LTE5LjY4NVY3NC43ODhhNS4xMzcsNS4xMzcsMCwwLDAtMTAuMjc0LDAsMi41NjMsMi41NjMsMCwxLDEtNS4xMjYsMCwxMC4yNjMsMTAuMjYzLDAsMCwxLDIwLjUyNiwwdjI1Ljg0NGEzNS41NDUsMzUuNTQ1LDAsMCwxLTM1LjUsMzUuNTA2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTMuMjMyIC02LjM4MikiIGZpbGw9IiNmZmYiLz4gPHBhdGggaWQ9IuODkeOCuV81NDQwIiBkYXRhLW5hbWU9IuODkeOCuSA1NDQwIiBkPSJNNzAuNCwxMDguMTU3YTIuNTY0LDIuNTY0LDAsMCwxLTIuNTU4LTIuNDMybC0uNzc5LTE1LjE4MWEyLjU2MywyLjU2MywwLDAsMSw1LjExOS0uMjYybC43NzksMTUuMTgxYTIuNTY0LDIuNTY0LDAsMCwxLTIuNDI5LDIuNjljLS4wNDUsMC0uMDg5LDAtLjEzMywwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTguNDQgLTI0LjE1OCkiIGZpbGw9IiNmZmYiLz4gPHBhdGggaWQ9IuODkeOCuV81NDQxIiBkYXRhLW5hbWU9IuODkeOCuSA1NDQxIiBkPSJNMzUuNzI1LDM0LjI5YTIuNTU1LDIuNTU1LDAsMCwxLTEuODEyLS43NUwyMy4wMTksMjIuNjQ2YTIuNTY0LDIuNTY0LDAsMCwxLDAtMy42MjVMMzMuOTEzLDguMTI4YTIuNTYzLDIuNTYzLDAsMSwxLDMuNjI0LDMuNjI0bC05LjA4MSw5LjA4MSw5LjA4MSw5LjA4MWEyLjU2MywyLjU2MywwLDAsMS0xLjgxMiw0LjM3NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTYuMTI0IC0yLjAyOSkiIGZpbGw9IiNmZmYiLz4gPHBhdGggaWQ9IuODkeOCuV81NDQyIiBkYXRhLW5hbWU9IuODkeOCuSA1NDQyIiBkPSJNMTMuNDU2LDM0LjI5YTIuNTU3LDIuNTU3LDAsMCwxLTEuODEzLS43NUwuNzUsMjIuNjQ2YTIuNTY0LDIuNTY0LDAsMCwxLDAtMy42MjVMMTEuNjQ0LDguMTI4YTIuNTYzLDIuNTYzLDAsMCwxLDMuNjI1LDMuNjI0TDYuMTg4LDIwLjgzM2w5LjA4MSw5LjA4MWEyLjU2MywyLjU2MywwLDAsMS0xLjgxMyw0LjM3NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAtMi4wMjkpIiBmaWxsPSIjZmZmIi8+IDxwYXRoIGlkPSLjg5HjgrlfNTQ0MyIgZGF0YS1uYW1lPSLjg5HjgrkgNTQ0MyIgZD0iTTg4LjcwNiwyMS4zNjhBMi41NjMsMi41NjMsMCwwLDEsODYuMTQ0LDE4LjhhMTMuNjc4LDEzLjY3OCwwLDEsMC0yNy4zNTcsMCwyLjU2MywyLjU2MywwLDEsMS01LjEyNiwwLDE4LjgsMTguOCwwLDAsMSwzNy42MDgsMCwyLjU2MywyLjU2MywwLDAsMS0yLjU2MywyLjU2MyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTE0Ljc1NiAwKSIgZmlsbD0iI2ZmZiIvPiA8cGF0aCBpZD0i44OR44K5XzU0NDQiIGRhdGEtbmFtZT0i44OR44K5IDU0NDQiIGQ9Ik05OC43NjcsMzUuMDJhMi41NjQsMi41NjQsMCwwLDEtMi4zLTMuNjg2LDEzLjc1LDEzLjc1LDAsMCwwLDEuMzc1LTYuMzEsMi41NjMsMi41NjMsMCwwLDEsNS4xMjQtLjExNywxOC45LDE4LjksMCwwLDEtMS44OTEsOC42NzMsMi41NjQsMi41NjQsMCwwLDEtMi4zMDYsMS40NDEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yNi40NTYgLTYuMTYpIiBmaWxsPSIjZmZmIi8+IDxwYXRoIGlkPSLjg5HjgrlfNTQ0NSIgZGF0YS1uYW1lPSLjg5HjgrkgNTQ0NSIgZD0iTTU3Ljg2LDM1LjAyYTIuNTYyLDIuNTYyLDAsMCwxLTIuMzA2LTEuNDQxLDE4Ljg4OSwxOC44ODksMCwwLDEtMS44OTEtOC42NzMsMi41NjMsMi41NjMsMCwwLDEsNS4xMjQuMTE3LDEzLjc1LDEzLjc1LDAsMCwwLDEuMzc1LDYuMzEsMi41NjQsMi41NjQsMCwwLDEtMi4zLDMuNjg2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTQuNzU2IC02LjE2KSIgZmlsbD0iI2ZmZiIvPiA8L2c+PC9zdmc+");
  }
  .js-scrollable .scroll-hint-icon-wrap .scroll-hint-icon:after {
    content: none !important;
  }
}

/*コンポーネント*/
.midashi01 {
  margin-bottom: 0.72em;
  font-size: 4.4rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .midashi01 {
    font-size: 2.8rem;
    line-height: 1.2;
  }
}
.midashi01:after {
  width: 2em;
  height: 0.3rem;
  margin-top: 0.56em;
  content: '';
  background-color: #E37F21;
  display: block;
}
.midashi01 span {
  font-family: "Poppins", sans-serif;
  font-size: 0.636em;
  letter-spacing: 0.1em;
  color: #C9C9C9;
  display: block;
}
@media only screen and (max-width: 780px) {
  .midashi01 span {
    margin-bottom: 0.25em;
    font-size: 0.5em;
  }
}
.midashi01.center {
  text-align: center;
}
.midashi01.center:after {
  margin-left: auto;
  margin-right: auto;
}

/*ヘッダーブロック*/
#header {
  width: 100%;
  height: 10.4rem;
  padding: 0 2rem;
  background-color: #ffffff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
@media only screen and (min-width: 901px) {
  #header {
    -webkit-box-shadow: 0 0.3rem 0.3rem rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 0.3rem 0.3rem rgba(0, 0, 0, 0.1);
    box-shadow: 0 0.3rem 0.3rem rgba(0, 0, 0, 0.1);
  }
}
@media only screen and (max-width: 1279px) {
  #header {
    padding: 0 1.2rem;
  }
}
@media only screen and (max-width: 900px) {
  #header {
    height: 6.8rem;
    position: absolute;
  }
}
#header .logo {
  width: 24.4rem;
}
@media only screen and (max-width: 1599px) {
  #header .logo {
    width: 22rem;
  }
}
@media only screen and (max-width: 1279px) {
  #header .logo {
    width: 17rem;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right .sp_menu_btn {
    width: 6.8rem;
    height: 6.8rem;
    background-image: url("../img/sp_menu_open.png");
    -webkit-background-size: cover;
    background-size: cover;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right .sp_menu_btn.open {
    background-image: url("../img/sp_menu_close.png");
  }
  #header .header_right .sp_menu_btn.open + nav {
    left: 10%;
  }
  #header .header_right .sp_menu_btn.open + nav:before {
    right: 100%;
    opacity: 1;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right nav {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right nav {
    width: 90%;
    height: 100vh;
    padding-top: 6.8rem;
    padding-bottom: 3rem;
    overflow: auto;
    color: #ffffff;
    background-color: #E35D21;
    position: fixed;
    top: 0;
    left: 100%;
    z-index: 90;
    -webkit-transition: left 0.5s;
    transition: left 0.5s;
  }
  #header .header_right nav:before {
    width: 100%;
    height: 100%;
    content: '';
    background-color: #000000;
    opacity: 0.72;
    position: absolute;
    top: 0;
    right: -100%;
    z-index: -1;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
  }
}
#header .header_right nav ul {
  font-weight: 500;
}
@media only screen and (min-width: 901px) {
  #header .header_right nav ul {
    display: -webkit-flex;
    display: flex;
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1279px) {
  #header .header_right nav ul {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 900px) {
  #header .header_right nav ul {
    margin-bottom: 3rem;
    font-size: 1.7rem;
  }
}
#header .header_right nav ul li {
  white-space: nowrap;
}
@media only screen and (min-width: 901px) {
  #header .header_right nav ul li {
    padding: 0.5em 1.4em;
    line-height: 1.25;
    border-left: solid 1px #D1D1D1;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
}
@media only screen and (min-width: 901px) and (min-width: 1651px) {
  #header .header_right nav ul li br {
    display: none !important;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1279px) {
  #header .header_right nav ul li {
    padding: 0.5em 1em;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right nav ul li:first-child {
    border-left: none;
  }
  #header .header_right nav ul li:hover {
    color: #E35D21;
  }
}
@media only screen and (max-width: 900px) {
  #header .header_right nav ul li {
    border-bottom: solid 1px #ffffff;
  }
  #header .header_right nav ul li a {
    padding: 1.15em 1.5em;
    color: #ffffff;
    display: block;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right nav .line_tel {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1099px) {
  #header .header_right nav .line_tel {
    display: none;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right nav .line_tel .tel {
    width: 15.1rem;
    margin-right: 1rem;
    padding: 0.5em 1rem 0.5em 0;
    border-right: solid 1px #E3E3E3;
  }
  #header .header_right nav .line_tel .line {
    width: 7rem;
    padding: 0.5em 0;
  }
}
@media only screen and (min-width: 901px) {
  #header .header_right nav .btn {
    width: 25.2rem;
    margin-left: 2rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1599px) {
  #header .header_right nav .btn {
    width: 20rem;
    margin-left: 1rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1279px) {
  #header .header_right nav .btn {
    width: 18rem;
  }
}

@media only screen and (max-width: 900px) {
  #header .header_right nav .btn {
    width: 26.2rem;
    margin: 0 auto;
  }
  #header .header_right nav .btn a.tel {
    width: 21.5rem;
    margin: 2rem auto 0 auto;
  }
}
#header .header_right nav .btn a {
  display: block;
}

/*フッターブロック*/
#footer {
  position: relative;
}
@media only screen and (max-width: 900px) {
  #footer {
    padding: 4rem 0 9rem 0;
  }
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .inner {
    max-width: 1200px;
    padding: 7rem 0 6rem 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .footer_text {
    padding-left: 10rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1279px) {
  #footer .footer_content .footer_text {
    padding-left: 5rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1099px) {
  #footer .footer_content .footer_text {
    padding-left: 0;
  }
}

@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_text {
    margin-bottom: 3.7rem;
  }
}
#footer .footer_content .footer_text .logo {
  width: 29.7rem;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_text .logo {
    width: 23rem;
    margin: 0 auto 1.6rem auto;
  }
}
#footer .footer_content .footer_text .logo a {
  display: block;
}
#footer .footer_content .footer_text .site_name {
  margin-bottom: 1.18em;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.18;
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_text .site_name {
    margin-bottom: 1em;
    font-size: 1.7rem;
    text-align: center;
  }
}
#footer .footer_content .footer_text ul {
  margin-bottom: 2.6em;
  padding-left: 1em;
  font-size: 1.2rem;
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_text ul {
    margin-bottom: 1em;
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 780px) {
  #footer .footer_content .footer_text ul {
    margin: 1em 0;
  }
}
#footer .footer_content .footer_text ul li {
  list-style: disc outside;
  font-weight: 500;
}
#footer .footer_content .footer_text ul li::marker {
  color: #E37F21;
}
#footer .footer_content .footer_text ul li + li {
  margin-top: 1em;
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_text ul li + li {
    margin-top: 0.1em;
  }
}
#footer .footer_content .footer_text ul li span {
  width: 11em;
  margin-right: 1em;
  display: inline-block;
  text-align: justify;
  text-justify: inter-character;
  text-align-last: justify;
  white-space: nowrap;
}
#footer .footer_content .footer_text address {
  font-size: 1.5rem;
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_text address {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .footer_navi .navi {
    padding-right: 10rem;
    display: -webkit-flex;
    display: flex;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1279px) {
  #footer .footer_content .footer_navi .navi {
    padding-right: 5rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1099px) {
  #footer .footer_content .footer_navi .navi {
    padding-right: 0;
  }
}

#footer .footer_content .footer_navi .navi ul {
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .footer_navi .navi ul {
    padding-left: 2em;
    font-weight: 700;
    border-left: solid 1px #E37F21;
  }
  #footer .footer_content .footer_navi .navi ul + ul {
    margin-left: 4rem;
  }
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_navi .navi ul {
    width: 111%;
    margin: 0 -5.5%;
    font-weight: 500;
  }
}
@media only screen and (max-width: 900px) and (max-width: 780px) {
  #footer .footer_content .footer_navi .navi ul {
    width: 113.6%;
    margin: 0 -6.8%;
  }
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_navi .navi ul + ul {
    margin-top: -1px;
  }
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_navi .navi ul li {
    border-bottom: solid 1px #C4C4C4;
  }
  #footer .footer_content .footer_navi .navi ul li:first-child {
    border-top: solid 1px #C4C4C4;
  }
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .footer_navi .navi ul li + li {
    margin-top: 2em;
  }
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .footer_navi .navi ul li a:hover {
    color: #E35D21;
  }
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_navi .navi ul li a {
    padding: 0.9em 1.5em;
    display: block;
  }
}
#footer .footer_content .footer_navi .btn_area {
  margin-top: 3rem;
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .footer_navi .btn_area {
    padding-bottom: 3rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_navi .btn_area {
    text-align: center;
  }
}
@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_navi .btn_area .line {
    margin-bottom: 2rem;
  }
}
#footer .footer_content .footer_navi .btn_area .line a {
  display: inline-block;
}
#footer .footer_content .footer_navi .btn_area .line a:hover span {
  color: #00B900;
}
#footer .footer_content .footer_navi .btn_area .line a span {
  font-size: 1.5rem;
  font-weight: 500;
  white-space: nowrap;
  display: inline-block;
}
@media only screen and (max-width: 1099px) {
  #footer .footer_content .footer_navi .btn_area .line a span {
    font-size: 1.4rem;
  }
}
#footer .footer_content .footer_navi .btn_area .line a span:before {
  width: 2.26em;
  height: 2.16em;
  margin-right: 0.5em;
  content: '';
  background-image: url("../img/icon_line01.png");
  -webkit-background-size: cover;
  background-size: cover;
  display: inline-block;
  vertical-align: -0.7em;
}
@media only screen and (min-width: 901px) {
  #footer .footer_content .footer_navi .btn_area .btn {
    width: 25.2rem;
    margin-left: 4rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1599px) {
  #footer .footer_content .footer_navi .btn_area .btn {
    width: 20rem;
    margin-left: 2rem;
  }
}
@media only screen and (min-width: 901px) and (max-width: 1279px) {
  #footer .footer_content .footer_navi .btn_area .btn {
    width: 18rem;
  }
}

@media only screen and (max-width: 900px) {
  #footer .footer_content .footer_navi .btn_area .btn {
    width: 26.2rem;
    margin: 0 auto;
  }
}
#footer .footer_content .footer_navi .btn_area .btn a {
  display: block;
}
@media only screen and (min-width: 901px) {
  #footer .copyright {
    width: 100%;
    height: 0;
    position: absolute;
    bottom: 8rem;
    left: 0;
  }
}
#footer .copyright .inner {
  color: #C4C4C4;
}
@media only screen and (min-width: 901px) {
  #footer .copyright .inner {
    max-width: 1200px;
    font-size: 1.5rem;
    text-align: right;
  }
}
@media only screen and (max-width: 900px) {
  #footer .copyright .inner {
    margin-top: 2rem;
    font-size: 1rem;
    text-align: center;
  }
}

/*SP　追従*/
@media only screen and (max-width: 780px) {
  .sp_fix_btn {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 80;
    display: -webkit-flex;
    display: flex;
  }
  .sp_fix_btn a {
    width: 50%;
    padding: 0.8em 0;
    font-size: 1.9rem;
    font-weight: 700;
    text-align: center;
  }
  .sp_fix_btn a:after {
    width: 1em;
    height: 1em;
    margin-left: 0.25em;
    content: '';
    -webkit-background-size: cover;
    background-size: cover;
    display: inline-block;
    vertical-align: -0.15em;
  }
  .sp_fix_btn a:nth-child(1) {
    background: -webkit-linear-gradient(to bottom, #ffffff, #D3D3D3);
    background: linear-gradient(to bottom, #ffffff, #D3D3D3);
  }
  .sp_fix_btn a:nth-child(1):after {
    background-image: url("../img/icon_arrow01.png");
  }
  .sp_fix_btn a:nth-child(2) {
    color: #ffffff;
    background: -webkit-linear-gradient(to bottom, #67C62C, #24A313);
    background: linear-gradient(to bottom, #67C62C, #24A313);
  }
  .sp_fix_btn a:nth-child(2):after {
    background-image: url("../img/icon_arrow02.png");
  }
}

/*メインブロック*/
#main {
  padding-top: 10.4rem;
  overflow: hidden;
}
@media only screen and (max-width: 900px) {
  #main {
    padding-top: 6.8rem;
  }
}

/*TOPページ*/
.p-top .mv .mv_img img {
  width: 100%;
}
.p-top .mv .read {
  padding: 2.5rem 0;
  text-align: center;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 780px) {
  .p-top .mv .read {
    padding: 1.3rem 0;
  }
}
.p-top .mv .read:before {
  width: 100vw;
  height: 100%;
  content: '';
  background: -webkit-linear-gradient(to left, #E23923, #FF9D00);
  background: linear-gradient(to left, #E23923, #FF9D00);
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.p-top .mv .read img {
  width: 65.4rem;
}
@media only screen and (max-width: 900px) and (min-width: 781px) {
  .p-top .mv .read img {
    width: 49rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .mv .read img {
    width: 32.7rem;
  }
}
.p-top .cta01 .bg_grid {
  padding: 4.8rem 0;
  background-image: url("../img/bg_grid.jpg");
}
@media only screen and (max-width: 780px) {
  .p-top .cta01 .bg_grid {
    padding: 1.6rem 0;
  }
}
.p-top .cta01 .bg_grid .jugyouryou {
  margin-bottom: 0.8rem;
}
.p-top .cta01 .bg_grid p {
  font-size: 3.9rem;
  font-weight: 700;
  line-height: 1.23;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .cta01 .bg_grid p {
    font-size: 4.87vw;
  }
}
.p-top .cta01 .bg_grid p span {
  color: #E35D21;
}
.p-top .cta01 .btn_area {
  padding: 4.8rem 0 3.6rem 0;
  background-color: #2B2419;
}
@media only screen and (max-width: 780px) {
  .p-top .cta01 .btn_area {
    padding: 1.6rem 0;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .cta01 .btn_area .inner {
    max-width: 1200px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .cta01 .btn_area a {
    width: 33.3333%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .cta01 .btn_area a {
    width: 26.2rem;
    margin: 0 auto;
    display: block;
  }
}
.p-top .cta02 {
  padding: 4.8rem 0 5.6rem 0;
  color: #FFFFFF;
  background-color: #2B2419;
}
@media only screen and (max-width: 780px) {
  .p-top .cta02 {
    padding: 3.2rem 0;
  }
}
.p-top .cta02 .inner {
  max-width: 1200px;
}
.p-top .cta02 h2 {
  margin-bottom: 0.4em;
  font-size: 4.6rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .cta02 h2 {
    font-size: 2.9rem;
  }
}
.p-top .cta02 h2 span {
  padding: 0 0.5em;
  display: inline-block;
  position: relative;
}
.p-top .cta02 h2 span:before, .p-top .cta02 h2 span:after {
  width: 0.83em;
  height: 0.25em;
  margin-top: -0.125em;
  content: '';
  background-image: url("../img/top/cta02_ttl_fig.png");
  -webkit-background-size: cover;
  background-size: cover;
  position: absolute;
  top: 50%;
}
.p-top .cta02 h2 span:before {
  right: 100%;
}
.p-top .cta02 h2 span:after {
  left: 100%;
}
.p-top .cta02 p {
  margin-bottom: 1.57em;
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .cta02 p {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .cta02 .btn_area {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .cta02 .btn_area a {
    width: 33.3333%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .cta02 .btn_area a {
    width: 26.2rem;
    margin: 0 auto;
    display: block;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can {
    padding: 8.6rem 0 12rem 0;
    background-image: url(../img/top/can_bg.jpg);
    -webkit-background-size: cover;
    background-size: cover;
    background-position: center top;
  }
}
.p-top .sec_can .headding {
  margin-bottom: 10.5rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .headding {
    margin-bottom: 0;
    padding: 2.8rem 0 7.5rem 0;
    background-image: url(../img/top/can_bg_sp_top.jpg);
    -webkit-background-size: cover;
    background-size: cover;
    background-position: center top;
  }
}
.p-top .sec_can .headding .inner {
  max-width: 1160px;
  padding: 4.8rem 2.8rem 7rem 2.8rem;
  background-color: #ffffff;
  -webkit-border-radius: 2.4rem;
  -moz-border-radius: 2.4rem;
  border-radius: 2.4rem;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .headding .inner {
    padding: 3.2rem 0 6.4rem 0;
    -webkit-border-radius: 1.2rem;
    -moz-border-radius: 1.2rem;
    border-radius: 1.2rem;
  }
}
.p-top .sec_can .headding p {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .headding p {
    font-size: 1.8rem;
  }
}
.p-top .sec_can .headding .text {
  width: 51.1rem;
  margin: 1em auto;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .headding .text {
    width: 100%;
    max-width: 32rem;
  }
}
.p-top .sec_can .headding .fukidashi {
  width: 86.2%;
  padding: 0.5em;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  background-color: #2B2419;
  -webkit-border-radius: 1.6rem;
  -moz-border-radius: 1.6rem;
  border-radius: 1.6rem;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .headding .fukidashi {
    font-size: 2.4rem;
    line-height: 1.125;
  }
}
.p-top .sec_can .headding .fukidashi:after {
  margin-left: -1.7rem;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 2.9rem 1.7rem 0 1.7rem;
  border-color: #2B2419 transparent transparent transparent;
  position: absolute;
  top: 100%;
  left: 50%;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .headding .fukidashi:after {
    margin-left: -0.85rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1.45rem 0.85rem 0 0.85rem;
    border-color: #2B2419 transparent transparent transparent;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li .inner {
    max-width: 1000px;
    padding: 4rem 4.8rem 4rem 24.8rem;
    background-color: #FFFFFF;
    position: relative;
  }
}
@media only screen and (min-width: 781px) and (max-width: 1099px) {
  .p-top .sec_can .point > li .inner {
    padding: 4rem 4rem 4rem 22rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li .inner:before {
    width: 20rem;
    height: 100%;
    content: '';
    position: absolute;
    -webkit-background-size: cover;
    background-size: cover;
    top: 0;
    left: 0;
  }
}
@media only screen and (min-width: 781px) and (max-width: 1099px) {
  .p-top .sec_can .point > li .inner:before {
    width: 18rem;
  }
}

@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li .inner {
    padding: 2rem 0 2.8rem 0;
  }
}
.p-top .sec_can .point > li .inner .point_ttl {
  margin-bottom: 3.2rem;
  letter-spacing: -0.4em;
}
.p-top .sec_can .point > li .inner .point_ttl > * {
  display: inline-block;
  letter-spacing: normal;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li .inner .point_ttl {
    margin-bottom: 1.2rem;
    text-align: center;
  }
}
.p-top .sec_can .point > li .inner .point_ttl .num {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-align: center;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li .inner .point_ttl .num {
    font-size: 2.3rem;
    vertical-align: -0.6em;
  }
}
@media only screen and (max-width: 900px) and (min-width: 781px) {
  .p-top .sec_can .point > li .inner .point_ttl .num {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li .inner .point_ttl .num {
    margin-bottom: 0.75em;
    font-size: 1.6rem;
    display: block;
  }
}
.p-top .sec_can .point > li .inner .point_ttl .num span {
  font-size: 3.17em;
  font-weight: 800;
  letter-spacing: normal;
  line-height: 1;
  color: #E35D21;
  display: block;
}
.p-top .sec_can .point > li .inner .point_ttl .text {
  margin-left: 1em;
  padding: 0.1em 0.5em;
  font-size: 3rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #2B2419;
}
@media only screen and (max-width: 900px) and (min-width: 781px) {
  .p-top .sec_can .point > li .inner .point_ttl .text {
    font-size: 2.6rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li .inner .point_ttl .text {
    margin-left: 0;
    padding: 0.25em 0.5em;
    font-size: 2.4rem;
    line-height: 1.125;
  }
}
.p-top .sec_can .point > li .inner .point_ttl + p {
  margin-bottom: 1.6em;
  font-size: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li .inner .point_ttl + p {
    margin-bottom: 1em;
    font-size: 1.7rem;
  }
}
.p-top .sec_can .point > li .inner .point_ttl + p span {
  color: #E37F21;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point01 {
    margin-bottom: 3.2rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point01 .inner:before {
    background-image: url("../img/top/can_point01_img01.jpg");
  }
}
.p-top .sec_can .point > li.point01 dl dt {
  padding: 0.3em 1em;
  font-size: 2.4rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #3C3323;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point01 dl dt {
    font-size: 1.9rem;
  }
}
.p-top .sec_can .point > li.point01 dl dd {
  padding: 2.4rem;
  border: solid 0.8rem #F2EEE1;
  border-top: none !important;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point01 dl dd {
    padding: 2rem;
    border-width: 0.3rem;
  }
}
.p-top .sec_can .point > li.point01 dl dd .fig {
  width: 92.5%;
  margin: 0 auto 2.4rem auto;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point01 dl dd .fig {
    width: 100%;
    margin-bottom: 2rem;
  }
}
.p-top .sec_can .point > li.point01 dl dd h4 {
  margin-bottom: 0.4em;
  padding: 0.4em;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  background-color: #F5EBE2;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point01 dl dd h4 {
    font-size: 1.7rem;
  }
}
.p-top .sec_can .point > li.point01 dl dd p {
  line-height: 1.375;
}
.p-top .sec_can .point > li.point01 dl dd p + p {
  margin-top: 0.3em;
}
.p-top .sec_can .point > li.point01 dl dd p span {
  color: #E37F21;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point02 {
    margin-bottom: 3.2rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point02 .inner:before {
    background-image: url("../img/top/can_point02_img01.jpg");
  }
}
.p-top .sec_can .point > li.point02 h4 {
  margin-bottom: 0.8em;
  padding: 0.4em 1em 0.4em 5rem;
  font-size: 2rem;
  font-weight: 700;
  background-color: #F5EBE2;
  border-left: solid 0.6rem #E35D21;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point02 h4 {
    padding-left: 4rem;
    font-size: 1.7rem;
  }
}
.p-top .sec_can .point > li.point02 h4 span {
  width: 5rem;
  font-family: "Poppins", sans-serif;
  font-size: 1.15em;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-align: center;
  color: #E35D21;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point02 h4 span {
    width: 4rem;
  }
}
.p-top .sec_can .point > li.point02 .text_area {
  margin-bottom: 2.4rem;
}
.p-top .sec_can .point > li.point02 .text_area:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point02 .text_area {
    padding-right: 2.4rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point02 .text_area .text {
    width: calc(100% - 21.4rem);
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point02 .text_area .text {
    margin-bottom: 1em;
  }
}
.p-top .sec_can .point > li.point02 .text_area .text p {
  line-height: 1.75;
}
.p-top .sec_can .point > li.point02 .text_area .text p span {
  color: #E37F21;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point02 .text_area .img {
    width: 19rem;
    margin-left: 2.4rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point03 {
    margin-bottom: 4.8rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point03 .inner:before {
    background-image: url("../img/top/can_point03_img01.jpg");
  }
}
.p-top .sec_can .point > li.point03 h4 {
  margin-bottom: 0.4em;
  font-size: 2rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point03 h4 {
    font-size: 1.7rem;
  }
}
.p-top .sec_can .point > li.point03 .text_area {
  margin-bottom: 2.4rem;
}
.p-top .sec_can .point > li.point03 .text_area:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point03 .text_area {
    padding-right: 2.4rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point03 .text_area .text {
    width: calc(100% - 21.4rem);
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point03 .text_area .text {
    margin-bottom: 1em;
  }
}
.p-top .sec_can .point > li.point03 .text_area .text p {
  line-height: 1.75;
}
.p-top .sec_can .point > li.point03 .text_area .text p span {
  color: #E37F21;
}
.p-top .sec_can .point > li.point03 .text_area .text ul {
  padding-left: 1em;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point03 .text_area .text ul {
    margin: 1em 0;
  }
}
.p-top .sec_can .point > li.point03 .text_area .text ul li {
  list-style: disc outside;
  font-weight: 500;
}
.p-top .sec_can .point > li.point03 .text_area .text ul li::marker {
  color: #E37F21;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .point > li.point03 .text_area .img {
    width: 19rem;
    margin-left: 2.4rem;
  }
}
.p-top .sec_can .point > li.point03 .bottom_text {
  margin-top: 2.4rem;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .point > li.point03 .bottom_text {
    margin-top: 3.2rem;
    font-size: 1.8rem;
  }
}
.p-top .sec_can .btn {
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .btn {
    padding: 2.8rem 0 4rem 0;
    background-image: url(../img/top/can_bg_sp_bottom.jpg);
    -webkit-background-size: cover;
    background-size: cover;
    background-position: center top;
  }
}
.p-top .sec_can .btn a {
  display: inline-block;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_can .btn a {
    width: 62.4%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_can .btn a {
    width: 100%;
    max-width: 34.2rem;
  }
}
.p-top .sec_faq {
  margin-bottom: 11.2rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq {
    margin-bottom: 4.4rem;
  }
}
.p-top .sec_faq .inner {
  max-width: 1160px;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .inner {
    width: 94%;
  }
}
.p-top .sec_faq .headding {
  margin-bottom: 6.3rem;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .headding {
    margin-bottom: 4.5rem;
  }
}
.p-top .sec_faq .headding .obi {
  margin-bottom: 0.9em;
  padding: 0.36em 0;
  font-size: 4.4rem;
  background-color: #D3D1CF;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .headding .obi {
    font-size: 2.9rem;
  }
}
.p-top .sec_faq .headding .obi h2 {
  font-weight: 700;
}
.p-top .sec_faq .headding .sub_ttl h3 {
  margin-bottom: 0.25em;
  font-size: 3.5rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .headding .sub_ttl h3 {
    font-size: 2.5rem;
    white-space: nowrap;
  }
}
.p-top .sec_faq .headding .sub_ttl p {
  font-size: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .headding .sub_ttl p {
    font-size: 1.7rem;
    text-align: left;
  }
}
.p-top .sec_faq .faq {
  margin-bottom: 4.8rem;
  padding: 8rem 4rem 4rem 4rem;
  border: solid 0.6rem #E6E6E6;
  -webkit-border-radius: 2.4rem;
  -moz-border-radius: 2.4rem;
  border-radius: 2.4rem;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq {
    padding: 10rem 1.8rem 2.4rem 1.8rem;
    border-width: 0.3rem;
    -webkit-border-radius: 1.2rem;
    -moz-border-radius: 1.2rem;
    border-radius: 1.2rem;
  }
}
.p-top .sec_faq .faq .faq_q {
  padding: 0.3em 0.66em 0.3em 2.5em;
  font-size: 3rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #2B2419;
  -webkit-border-radius: 99px;
  -moz-border-radius: 99px;
  border-radius: 99px;
  position: absolute;
  top: 0;
  left: -2rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq .faq_q {
    width: 86.8%;
    padding: 0.5em 0.35em 0.65em 0.35em;
    font-size: 2.4rem;
    line-height: 1.125;
    text-align: center;
    -webkit-border-radius: 1.6rem;
    -moz-border-radius: 1.6rem;
    border-radius: 1.6rem;
    top: -2.8rem;
    left: 6.7%;
    -webkit-transform: none;
    transform: none;
  }
}
.p-top .sec_faq .faq .faq_q:before {
  width: 1.2em;
  height: 1.2em;
  margin-top: -0.6em;
  content: '';
  background-image: url("../img/top/faq_q.png");
  -webkit-background-size: cover;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 0.66em;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq .faq_q:before {
    margin: 0 auto 0.08em auto;
    position: static;
    display: block;
  }
}
.p-top .sec_faq .faq .faq_contents p {
  font-size: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq .faq_contents p {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq01 .faq_contents {
    display: -webkit-flex;
    display: flex;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq01 .faq_contents .text {
    width: 45%;
    margin-right: 3%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq01 .faq_contents .text {
    margin-bottom: 2.5rem;
  }
}
.p-top .sec_faq .faq.faq01 .faq_contents .text ul {
  padding: 1em 0;
}
.p-top .sec_faq .faq.faq01 .faq_contents .text ul li {
  padding: 0.44em 1em 0.44em 2.77em;
  font-size: 1.8rem;
  font-weight: 500;
  background-color: #F4F4F4;
  background-image: url("../img/icon_chec01.png");
  background-repeat: no-repeat;
  -webkit-background-size: 1.1em auto;
  background-size: 1.1em auto;
  background-position: 0.44em center;
  -webkit-border-radius: 0.8rem;
  -moz-border-radius: 0.8rem;
  border-radius: 0.8rem;
}
@media only screen and (min-width: 901px) {
  .p-top .sec_faq .faq.faq01 .faq_contents .text ul li {
    min-width: 33.2rem;
    display: inline-block;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq01 .faq_contents .text ul li {
    font-size: 1.6rem;
  }
}
.p-top .sec_faq .faq.faq01 .faq_contents .text ul li + li {
  margin-top: 0.44em;
}
.p-top .sec_faq .faq.faq01 .faq_contents .text ul li span {
  color: #E37F21;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq01 .faq_contents .graph {
    width: 52%;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents h3 {
  margin: 1.6em 0;
  padding: 0.4em 0.4em 0.4em 1.2em;
  font-size: 2rem;
  font-weight: 700;
  color: #151515;
  background-color: #F5EBE2;
  border-left: solid 0.6rem #E35D21;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents h3 {
    font-size: 1.7rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents h4 {
  max-width: 1000px;
  margin: 0 auto 0.8em auto;
  padding-left: 2.56em;
  padding-bottom: 0.3em;
  font-size: 3rem;
  font-weight: 700;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents h4 {
    padding-left: 2.06em;
    font-size: 2.4rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents h4:after {
  width: 100%;
  height: 0.2rem;
  content: '';
  background-color: #C9C9C9;
  position: absolute;
  bottom: 0;
  left: 0;
}
.p-top .sec_faq .faq.faq02 .faq_contents h4 span {
  width: 1.76em;
  height: 1.76em;
  font-family: "Poppins", sans-serif;
  text-align: center;
  line-height: 1.76;
  color: #ffffff;
  background-color: #E35D21;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.p-top .sec_faq .faq.faq02 .faq_contents .content {
  max-width: 1000px;
  margin: 0 auto 7rem auto;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content {
    margin-bottom: 2.8rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content .js-scrollable {
    padding-left: 0.5rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table {
  width: 100%;
  table-layout: fixed;
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table thead tr th {
  padding: 0.75em 0.5em;
  font-size: 2rem;
  font-weight: 500;
  text-align: center;
  color: #ffffff;
  background-color: #3C3323;
  border: solid 1px #4E4537;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table thead tr th {
    font-size: 1.5rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table tbody tr th {
  padding: 1.1em 0.5em;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  background-color: #EDEDED;
  border: solid 1px #DDDDDD;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table tbody tr th {
    font-size: 1.4rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table tbody tr td {
  padding: 1.1em 0.5em;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  border: solid 1px #DDDDDD;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table tbody tr td {
    font-size: 1.4rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table tbody tr.this th {
  background-color: #E5E1D5;
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table tbody tr.this td {
  background-color: #F2EEE1;
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 thead tr th {
  padding: 0.3em 0.5em;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 thead tr th {
    font-size: 1.2rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 thead tr th:nth-child(1) {
  width: 25%;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 thead tr th:nth-child(1) {
    width: 35%;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 thead tr:nth-child(2) th {
  background-color: #5F5442;
  border-color: #8B8376;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 thead tr:nth-child(2) th {
    font-size: 1rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 tbody tr th {
  width: 25%;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 tbody tr th {
    width: 35%;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 tbody tr td.none {
  background-color: #E5E5E5;
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 tbody tr.this th {
  padding-left: 3.825em;
  font-size: 1.6rem;
  text-align: left;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 tbody tr.this th {
    padding-right: 0.25em;
    font-size: 1.2rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 tbody tr.this th:before {
  width: 3.375em;
  height: 3.375em;
  margin-top: -1.6875em;
  content: '';
  background-image: url("../img/top/faq02_text01.png");
  -webkit-background-size: cover;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: -0.7rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table01 tbody tr.this th:before {
    left: -0.5rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table02 {
    width: calc(100% - 0.5rem);
    margin-right: 0;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table02 tbody tr.this td:first-child {
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table02 tbody tr.this td:first-child {
    padding-left: 2.6em;
    padding-right: 0.25em;
    font-size: 1.3rem;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content table.table02 tbody tr.this td:first-child:before {
  width: 3em;
  height: 3em;
  margin-top: -1.5em;
  content: '';
  background-image: url("../img/top/faq02_text01.png");
  -webkit-background-size: cover;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: -0.7rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content table.table02 tbody tr.this td:first-child:before {
    left: -0.5rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content02 {
    max-width: 1000px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content02 .text {
    width: 50%;
    margin-right: 3.2%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content02 .text {
    margin-bottom: 1em;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content02 .text p span {
  color: #E37F21;
}
.p-top .sec_faq .faq.faq02 .faq_contents .content02 .text ul {
  margin-top: 1em;
  padding-left: 1em;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content02 .text ul {
    margin: 1em 0;
  }
}
.p-top .sec_faq .faq.faq02 .faq_contents .content02 .text ul li {
  list-style: disc outside;
  font-weight: 500;
}
.p-top .sec_faq .faq.faq02 .faq_contents .content02 .text ul li::marker {
  color: #E37F21;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq02 .faq_contents .content02 .img {
    width: 46.8%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 {
    margin-bottom: 2.8rem;
  }
}
.p-top .sec_faq .faq.faq03 .faq_contents p + p {
  margin-top: 0.5em;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 .faq_contents p + p {
    margin-top: 1em;
  }
}
.p-top .sec_faq .faq.faq03 .faq_contents p.bold {
  font-size: 2.8rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 .faq_contents p.bold {
    font-size: 2.2rem;
    text-align: center;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol {
    margin: 2em 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol {
    margin: 1em 0;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol li {
    width: 31.38%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol li {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
  .p-top .sec_faq .faq.faq03 .faq_contents ol li + li {
    margin-top: 1.2rem;
  }
}
.p-top .sec_faq .faq.faq03 .faq_contents ol li .img {
  position: relative;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol li .img {
    margin-bottom: 1em;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol li .img {
    width: 47%;
  }
}
.p-top .sec_faq .faq.faq03 .faq_contents ol li .img .num {
  width: 1.8em;
  height: 1.8em;
  font-family: "Poppins", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.8;
  color: #ffffff;
  background-color: #E35D21;
  -webkit-border-radius: 0 0 1.6rem 0;
  -moz-border-radius: 0 0 1.6rem 0;
  border-radius: 0 0 1.6rem 0;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol li .img .num {
    font-size: 1.5rem;
  }
}
.p-top .sec_faq .faq.faq03 .faq_contents ol li p {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .faq.faq03 .faq_contents ol li p {
    width: 46.4%;
    font-size: 1.8rem;
    text-align: left;
  }
}
.p-top .sec_faq .btn {
  text-align: center;
}
.p-top .sec_faq .btn a {
  width: 52.1%;
  display: inline-block;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq .btn a {
    width: 26.2rem;
  }
}
.p-top .sec_why {
  -webkit-background-size: cover;
  background-size: cover;
  background-position: center top;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_why {
    padding: 8rem 0 8.8rem 0;
    background-image: url("../img/top/why_bg.jpg");
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_why {
    padding: 2.8rem 0 3.2rem 0;
    background-image: url("../img/top/why_bg_sp.jpg");
  }
}
.p-top .sec_why .inner {
  max-width: 1160px;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_why .inner {
    width: 94%;
  }
}
.p-top .sec_why .box {
  background-color: #ffffff;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_why .box {
    margin-bottom: 4.8rem;
    padding: 5.6rem;
    -webkit-border-radius: 2.4rem;
    -moz-border-radius: 2.4rem;
    border-radius: 2.4rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_why .box {
    margin-bottom: 2.4rem;
    padding: 2.4rem 2rem;
    -webkit-border-radius: 1.2rem;
    -moz-border-radius: 1.2rem;
    border-radius: 1.2rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_why .box .img {
    width: 29.5%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_why .box .img {
    margin-bottom: 2rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_why .box .text {
    width: 66.6%;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_why .box .text .midashi01 {
    margin-bottom: 0.52em;
  }
}
.p-top .sec_why .box .text h3 {
  margin-bottom: 0.6em;
  font-size: 2.8rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_why .box .text h3 {
    font-size: 2.2rem;
    line-height: 1.2;
  }
}
.p-top .sec_why .box .text p {
  font-size: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_why .box .text p {
    font-size: 1.7rem;
    line-height: 1.3;
  }
}
.p-top .sec_why .box .text p span {
  color: #E37F21;
}
.p-top .sec_why .btn {
  text-align: center;
}
.p-top .sec_why .btn a {
  width: 55.1%;
  display: inline-block;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_why .btn a {
    width: 93.4%;
  }
}
.p-top .sec_course {
  margin: 6.4rem 0 13.6rem 0;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course {
    margin: 3.2rem 0 4rem 0;
  }
}
.p-top .sec_course .inner {
  max-width: 1200px;
}
.p-top .sec_course .headding {
  margin-bottom: 4.8rem;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course .headding {
    margin-bottom: 2.5rem;
  }
}
.p-top .sec_course .headding h3 {
  margin-bottom: 0.65em;
  font-size: 2.6rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course .headding h3 {
    font-size: 1.8rem;
  }
}
.p-top .sec_course .headding p {
  font-size: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course .headding p {
    font-size: 1.7rem;
    text-align: left;
  }
}
.p-top .sec_course .headding p span {
  color: #E37F21;
}
.p-top .sec_course dl {
  position: relative;
  z-index: 1;
}
.p-top .sec_course dl:before {
  width: 100vw;
  height: 1px;
  content: '';
  background-color: #C9C9C9;
  position: absolute;
  top: 4rem;
  left: 50%;
  z-index: -1;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl:before {
    top: 3rem;
  }
}
.p-top .sec_course dl dt {
  max-width: 1000px;
  margin: 0 auto 7rem auto;
  padding: 0.5em;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  background-color: #2B2419;
  -webkit-border-radius: 1.6rem;
  -moz-border-radius: 1.6rem;
  border-radius: 1.6rem;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl dt {
    margin-bottom: 3rem;
    font-size: 2.4rem;
  }
}
.p-top .sec_course dl dt:after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_course dl dt:after {
    margin-left: -1.7rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 2.9rem 1.7rem 0 1.7rem;
    border-color: #2B2419 transparent transparent transparent;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl dt:after {
    margin-left: -0.85rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1.45rem 0.85rem 0 0.85rem;
    border-color: #2B2419 transparent transparent transparent;
  }
}
.p-top .sec_course dl + dl {
  margin-top: 8rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl + dl {
    margin-top: 3.6rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_course dl.model01 dd ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_course dl.model01 dd ul li {
    width: 48.3%;
  }
}
.p-top .sec_course dl.model01 dd ul li h4 {
  margin-bottom: 0.47em;
  padding: 0.23em;
  font-size: 3.4rem;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model01 dd ul li h4 {
    font-size: 2.8rem;
  }
}
.p-top .sec_course dl.model01 dd ul li p {
  margin-bottom: 0.77em;
  font-size: 2.2rem;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model01 dd ul li p {
    font-size: 1.8rem;
  }
}
.p-top .sec_course dl.model01 dd ul li .img {
  width: 91.7%;
  margin: 0 auto 6.3rem auto;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model01 dd ul li .img {
    width: 97.6%;
    margin: 0 auto 3.5rem auto;
  }
}
.p-top .sec_course dl.model01 dd ul li .img span {
  width: 101.5%;
  padding: 0.36em;
  font-size: 2.2rem;
  font-weight: 500;
  text-align: center;
  color: #ffffff;
  -webkit-border-radius: 99px;
  -moz-border-radius: 99px;
  border-radius: 99px;
  position: absolute;
  bottom: 0;
  left: -0.75%;
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model01 dd ul li .img span {
    font-size: 1.8rem;
  }
}
.p-top .sec_course dl.model01 dd ul li .schedule {
  width: 80%;
  margin: 0 auto;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model01 dd ul li .schedule {
    width: 97.6%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model01 dd ul li:nth-child(1) {
    margin-bottom: 2.8rem;
  }
}
.p-top .sec_course dl.model01 dd ul li:nth-child(1) h4 {
  background-color: #E35D21;
}
.p-top .sec_course dl.model01 dd ul li:nth-child(1) .img span {
  background-color: #E35D21;
}
.p-top .sec_course dl.model01 dd ul li:nth-child(2) h4 {
  background-color: #E37F21;
}
.p-top .sec_course dl.model01 dd ul li:nth-child(2) .img span {
  background-color: #E37F21;
}
.p-top .sec_course dl.model02 dd h4 {
  margin-bottom: 0.94em;
  padding: 0.23em;
  font-size: 3.4rem;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  background-color: #5F5442;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd h4 {
    margin-bottom: 0.7em;
    padding: 0.23em 1.17em;
    font-size: 2.8rem;
  }
}
.p-top .sec_course dl.model02 dd h4 span {
  font-size: 0.58em;
  font-weight: 400;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_course dl.model02 dd h4 span {
    display: inline-block;
    vertical-align: 0.2em;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd h4 span {
    display: block;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_course dl.model02 dd .content {
    max-width: 1132px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_course dl.model02 dd .content .img {
    width: 46.6%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .img {
    width: 90%;
    margin: 0 auto 1.6rem auto;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_course dl.model02 dd .content .text {
    width: 49.4%;
  }
}
.p-top .sec_course dl.model02 dd .content .text > p {
  margin-bottom: 1.13em;
  font-size: 2.2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text > p {
    font-size: 1.8rem;
    text-align: center;
  }
}
.p-top .sec_course dl.model02 dd .content .text > p span {
  color: #E37F21;
}
.p-top .sec_course dl.model02 dd .content .text ul li {
  padding: 1.6rem 2.4rem;
  background-color: #F0F0F0;
  -webkit-border-radius: 0.8rem;
  -moz-border-radius: 0.8rem;
  border-radius: 0.8rem;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text ul li {
    padding: 1.2rem 1.4rem;
  }
}
.p-top .sec_course dl.model02 dd .content .text ul li + li {
  margin-top: 1.1rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text ul li + li {
    margin-top: 0.8rem;
  }
}
.p-top .sec_course dl.model02 dd .content .text ul li .fig {
  width: 4rem;
  margin-right: 2.4rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text ul li .fig {
    width: 6rem;
    margin-right: 1.2rem;
  }
}
.p-top .sec_course dl.model02 dd .content .text ul li .tanni {
  width: calc(100% - 6.4rem);
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text ul li .tanni {
    width: calc(100% - 7.2rem);
  }
}
.p-top .sec_course dl.model02 dd .content .text ul li .tanni h5 {
  font-size: 2.2rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text ul li .tanni h5 {
    font-size: 1.8rem;
  }
}
.p-top .sec_course dl.model02 dd .content .text ul li .tanni p {
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text ul li .tanni p {
    font-size: 1.5rem;
  }
}
.p-top .sec_course dl.model02 dd .content .text .annotation {
  margin-top: 1em;
  font-size: 1.5rem;
  text-align: right;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_course dl.model02 dd .content .text .annotation {
    font-size: 1.3rem;
  }
}
.p-top .sec_school {
  padding: 8.8rem 0 7.2rem 0;
  background-color: #F7F7F7;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school {
    padding: 3.6rem 0;
  }
}
.p-top .sec_school .inner {
  max-width: 1160px;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school .headding {
    margin-bottom: 5.6rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school .headding {
    margin-bottom: 3.2rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school .headding .text {
    width: 56%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school .headding .text {
    margin-bottom: 1.7rem;
  }
}
.p-top .sec_school .headding .text p {
  font-size: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school .headding .text p {
    font-size: 1.7rem;
  }
}
.p-top .sec_school .headding .text p b {
  font-weight: 700;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school .headding .img {
    width: 40%;
  }
}
.p-top .sec_school dl {
  -webkit-border-radius: 2.4rem;
  -moz-border-radius: 2.4rem;
  border-radius: 2.4rem;
  overflow: hidden;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl {
    -webkit-border-radius: 1.2rem;
    -moz-border-radius: 1.2rem;
    border-radius: 1.2rem;
  }
}
.p-top .sec_school dl + dl {
  margin-top: 4rem;
}
.p-top .sec_school dl dt {
  padding: 0.57em 1.4em;
  font-size: 2.8rem;
  font-weight: 700;
  color: #FFFFFF;
  background-color: #E37F21;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dt {
    font-size: 1.9rem;
  }
}
.p-top .sec_school dl dd {
  padding: 4rem;
  background-color: #FFFFFF;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd {
    padding: 2.4rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .teacher_list {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.p-top .sec_school dl dd .teacher_list > li {
  display: none;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .teacher_list > li {
    width: 46.3%;
    margin-bottom: 4rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: solid 1px #C9C9C9;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .teacher_list > li .img {
    width: 33.6%;
    margin-right: 4.8%;
    overflow: hidden;
  }
  .p-top .sec_school dl dd .teacher_list > li .img > img, .p-top .sec_school dl dd .teacher_list > li .img > video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .teacher_list > li .prof {
    width: 61.6%;
  }
}
.p-top .sec_school dl dd .teacher_list > li .prof .name {
  margin-bottom: 0.4em;
  font-size: 2.2rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .name {
    font-size: 1.7rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .p-top .sec_school dl dd .teacher_list > li .prof .name .img_sp {
    width: 10.5rem;
    height: 10.5rem;
    margin-right: 2rem;
    overflow: hidden;
  }
  .p-top .sec_school dl dd .teacher_list > li .prof .name .img_sp > img, .p-top .sec_school dl dd .teacher_list > li .prof .name .img_sp > video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p-top .sec_school dl dd .teacher_list > li .prof .name span {
    width: calc(100% - 12.5rem);
  }
}
.p-top .sec_school dl dd .teacher_list > li .prof .text p {
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .text p {
    font-size: 1.5rem;
  }
}
.p-top .sec_school dl dd .teacher_list > li .prof .text ul {
  padding-left: 1em;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .text ul {
    margin: 1em 0;
    font-size: 1.5rem;
  }
}
.p-top .sec_school dl dd .teacher_list > li .prof .text ul li {
  list-style: disc outside;
  font-weight: 500;
}
.p-top .sec_school dl dd .teacher_list > li .prof .text ul li::marker {
  color: #E37F21;
}
.p-top .sec_school dl dd .teacher_list > li .prof .text table {
  width: 100%;
  margin-top: 1em;
  border-collapse: separate;
  border-spacing: 0 0.6rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .text table {
    padding: 1.2rem;
    background-color: #F7F7F7;
    -webkit-border-radius: 0.8rem;
    -moz-border-radius: 0.8rem;
    border-radius: 0.8rem;
    display: block;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .text table tbody {
    display: block;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .text table tr {
    display: block;
  }
  .p-top .sec_school dl dd .teacher_list > li .prof .text table tr + tr {
    margin-top: 1rem;
  }
}
.p-top .sec_school dl dd .teacher_list > li .prof .text table tr th {
  width: 11rem;
  padding-right: 0.8rem;
  vertical-align: top;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .text table tr th {
    padding: 0 0 0.4rem 0;
    display: block;
  }
}
.p-top .sec_school dl dd .teacher_list > li .prof .text table tr th span {
  padding: 0.2em;
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
  color: #ffffff;
  background-color: #E37F21;
  -webkit-border-radius: 0.4rem;
  -moz-border-radius: 0.4rem;
  border-radius: 0.4rem;
  display: block;
}
.p-top .sec_school dl dd .teacher_list > li .prof .text table tr td {
  font-weight: 500;
  vertical-align: top;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li .prof .text table tr td {
    display: block;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .teacher_list > li:nth-child(1), .p-top .sec_school dl dd .teacher_list > li:nth-child(2) {
    display: -webkit-flex !important;
    display: flex !important;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list > li:nth-child(1), .p-top .sec_school dl dd .teacher_list > li:nth-child(2) {
    display: block !important;
  }
}
.p-top .sec_school dl dd .teacher_list + .btn {
  text-align: center;
}
.p-top .sec_school dl dd .teacher_list + .btn span {
  width: 17.6rem;
  height: 4rem;
  background-image: url("../img/top/btn04-2.png");
  -webkit-background-size: cover;
  background-size: cover;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
}
.p-top .sec_school dl dd .teacher_list + .btn span:hover {
  opacity: 0.6;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .teacher_list.open > li {
    display: -webkit-flex;
    display: flex;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .teacher_list.open > li {
    display: block;
  }
}
.p-top .sec_school dl dd .teacher_list.open + .btn span {
  background-image: url("../img/top/btn04.png");
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .school_list li {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .school_list li + li {
    margin-top: 5.6rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .school_list li + li {
    margin-top: 2.4rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .school_list li .text {
    width: 50%;
  }
}
.p-top .sec_school dl dd .school_list li .text h3 {
  padding-left: 0.5em;
  font-size: 3.2rem;
  font-weight: 700;
  border-left: solid 0.8rem #E35D21;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .school_list li .text h3 {
    font-size: 2.2rem;
  }
}
.p-top .sec_school dl dd .school_list li .text address {
  margin-top: 1em;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .school_list li .text address {
    margin-top: 0.8em;
    font-size: 1.5rem;
  }
}
.p-top .sec_school dl dd .school_list li .text .access_text {
  margin-bottom: 2em;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .school_list li .text .access_text {
    margin-bottom: 0.8em;
    font-size: 1.5rem;
  }
}
.p-top .sec_school dl dd .school_list li .text .img {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.p-top .sec_school dl dd .school_list li .text .img > div {
  width: 47.4%;
  overflow: hidden;
}
.p-top .sec_school dl dd .school_list li .text .img > div > img, .p-top .sec_school dl dd .school_list li .text .img > div > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .school_list li .text .img > div {
    height: 19.2rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .school_list li .text .img > div {
    height: 11.5rem;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_school dl dd .school_list li .map {
    width: 46.6%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_school dl dd .school_list li .map {
    width: 100%;
    height: 21rem;
    margin-top: 1.6rem;
  }
}
.p-top .sec_school dl dd .school_list li .map iframe {
  width: 100%;
  height: 100%;
}
.p-top .sec_job {
  margin: 6.4rem 0 9.6rem 0;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job {
    margin: 4rem 0 4.8rem 0;
  }
}
.p-top .sec_job .inner {
  max-width: 1200px;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job .inner {
    width: 94%;
  }
}
.p-top .sec_job p {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job p {
    font-size: 1.8rem;
  }
}
.p-top .sec_job ul {
  margin: 7.8rem 0 3.2rem 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job ul {
    margin: 2rem 0 1rem 0;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.p-top .sec_job ul li {
  color: #ffffff;
  background-color: #E35C20;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_job ul li {
    width: 24%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job ul li {
    width: 48.6%;
    margin-bottom: 1.5rem;
  }
}
.p-top .sec_job ul li p {
  padding: 0.65em 0.3em;
  font-size: 2.2rem;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job ul li p {
    font-size: 1.5rem;
  }
}
.p-top .sec_job ul li:nth-child(2n) {
  background-color: #E37F21;
}
.p-top .sec_job .btn {
  margin-top: 2em;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job .btn {
    margin-top: 1em;
  }
}
.p-top .sec_job .btn a {
  width: 46.9%;
  display: inline-block;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_job .btn a {
    width: 26.2rem;
  }
}
.p-top .sec_price {
  -webkit-background-size: cover;
  background-size: cover;
  background-position: center top;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_price {
    padding: 8.6rem 0 8.3rem 0;
    background-image: url("../img/top/fee_bg.jpg");
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price {
    padding: 2.8rem 0 4rem 0;
    background-image: url("../img/top/fee_bg_sp.jpg");
  }
}
.p-top .sec_price .inner {
  max-width: 1160px;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .inner {
    width: 94%;
  }
}
.p-top .sec_price .box {
  margin-bottom: 5.6rem;
  padding: 4.8rem 4rem;
  -webkit-border-radius: 2.4rem;
  -moz-border-radius: 2.4rem;
  border-radius: 2.4rem;
  background-color: #FFFFFF;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box {
    margin-bottom: 2.8rem;
    padding: 2.8rem 1.2rem;
    -webkit-border-radius: 1.2rem;
    -moz-border-radius: 1.2rem;
    border-radius: 1.2rem;
  }
}
.p-top .sec_price .box > p {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box > p {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 901px) {
  .p-top .sec_price .box .price_list {
    margin-top: 4rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 900px) {
  .p-top .sec_price .box .price_list {
    margin-top: 1.7rem;
  }
}
@media only screen and (min-width: 901px) {
  .p-top .sec_price .box .price_list > li {
    width: 48%;
    margin-bottom: 4rem;
  }
}
@media only screen and (max-width: 900px) {
  .p-top .sec_price .box .price_list > li {
    margin-bottom: 1.6rem;
  }
}
.p-top .sec_price .box .price_list > li h3 {
  padding: 0.3em;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  color: #FFFFFF;
  background-color: #2B2419;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li h3 {
    font-size: 2.4rem;
  }
}
.p-top .sec_price .box .price_list > li .content {
  padding: 2.4rem 3.2rem;
  border: solid 0.4rem #E3E3E3;
  border-top: none !important;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li .content {
    padding: 2.4rem 2rem;
    border-width: 0.2rem;
  }
}
.p-top .sec_price .box .price_list > li .content .headding {
  margin-bottom: 1em;
}
.p-top .sec_price .box .price_list > li .content .headding p {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}
.p-top .sec_price .box .price_list > li .content .headding.nomal-price {
  padding-left: 1em;
  border-left: solid 0.4rem #E3E3E3;
}
.p-top .sec_price .box .price_list > li .content .headding.nomal-price p {
  font-size: 2.2rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li .content .headding.nomal-price p {
    font-size: 1.7rem;
  }
}
.p-top .sec_price .box .price_list > li .content .headding.nomal-price .price {
  font-size: 2rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li .content .headding.nomal-price .price {
    font-size: 1.5rem;
  }
}
.p-top .sec_price .box .price_list > li .content .headding.nomal-price .price span {
  font-size: 1.35em;
}
.p-top .sec_price .box .price_list > li .content .price_box {
  padding: 0.8em 1.25em;
  color: #FFFFFF;
  background-color: #E35D21;
  -webkit-border-radius: 0.8rem;
  -moz-border-radius: 0.8rem;
  border-radius: 0.8rem;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li .content .price_box {
    -webkit-border-radius: 0.4rem;
    -moz-border-radius: 0.4rem;
    border-radius: 0.4rem;
  }
}
.p-top .sec_price .box .price_list > li .content .price_box p {
  font-size: 2.2rem;
  font-weight: 700;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li .content .price_box p {
    font-size: 1.8rem;
  }
}
.p-top .sec_price .box .price_list > li .content .price_box .price {
  font-size: 1.8rem;
  font-weight: 500;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li .content .price_box .price {
    font-size: 1.5rem;
  }
}
.p-top .sec_price .box .price_list > li .content .price_box .price span {
  font-size: 1.83em;
}
.p-top .sec_price .box .price_list > li .content .annotation {
  margin-top: 1em;
  padding-left: 1em;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .box .price_list > li .content .annotation {
    margin: 1em 0;
  }
}
.p-top .sec_price .box .price_list > li .content .annotation li {
  list-style: disc outside;
  font-weight: 500;
}
.p-top .sec_price .box .price_list > li .content .annotation li::marker {
  color: #E37F21;
}
.p-top .sec_price .box .price_list > li .content .annotation li span {
  color: #E37F21;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_price .btn {
    text-align: center;
    letter-spacing: -0.4em;
  }
  .p-top .sec_price .btn > * {
    display: inline-block;
    letter-spacing: normal;
  }
}
@media only screen and (min-width: 781px) {
  .p-top .sec_price .btn a {
    width: 45%;
  }
  .p-top .sec_price .btn a + a {
    margin-left: 2.5%;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_price .btn a {
    width: 26.2rem;
    margin: 0 auto;
    display: block;
  }
}
.p-top .sec_faq02 {
  padding: 8.8rem 0 7.2rem 0;
  background-color: #F7F7F7;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq02 {
    padding: 3.6rem 0;
  }
}
.p-top .sec_faq02 .inner {
  max-width: 1160px;
}
.p-top .sec_faq02 .box {
  background-color: #ffffff;
}
@media only screen and (min-width: 781px) {
  .p-top .sec_faq02 .box {
    padding: 5.6rem;
    -webkit-border-radius: 2.4rem;
    -moz-border-radius: 2.4rem;
    border-radius: 2.4rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq02 .box {
    padding: 2.4rem 2rem;
    -webkit-border-radius: 1.2rem;
    -moz-border-radius: 1.2rem;
    border-radius: 1.2rem;
  }
}
.p-top .sec_faq02 .box .btn {
  margin-top: 3em;
  text-align: center;
}
.p-top .sec_faq02 .box .btn span {
  width: 17.6rem;
  height: 4rem;
  background-image: url("../img/top/btn05-2.png");
  -webkit-background-size: cover;
  background-size: cover;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
}
.p-top .sec_faq02 .box .btn span:hover {
  opacity: 0.6;
}
.p-top .sec_faq02 .box.open h3, .p-top .sec_faq02 .box.open ul li {
  display: block !important;
}
.p-top .sec_faq02 .box.open .btn span {
  background-image: url("../img/top/btn05.png");
}
.p-top .sec_faq02 h3 {
  margin: 1.6em 0;
  padding: 0.4em 0.4em 0.4em 1.2em;
  font-size: 2rem;
  font-weight: 700;
  color: #151515;
  background-color: #F5EBE2;
  border-left: solid 0.6rem #E35D21;
  display: none;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq02 h3 {
    font-size: 1.7rem;
  }
}
.p-top .sec_faq02 h3.disp {
  display: block !important;
}
.p-top .sec_faq02 ul + h3 {
  margin-top: 2em;
}
.p-top .sec_faq02 ul li {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: dashed 1px #dddddd;
  display: none;
}
.p-top .sec_faq02 ul li.disp {
  display: block !important;
}
.p-top .sec_faq02 ul li .faq_q {
  margin-bottom: 1em;
  padding: 0.3em 0 0.3em 2.5em;
  font-size: 2rem;
  font-weight: 700;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-top .sec_faq02 ul li .faq_q {
    font-size: 1.8rem;
  }
}
.p-top .sec_faq02 ul li .faq_q:before {
  width: 1.2em;
  height: 1.2em;
  margin-top: -0.6em;
  content: '';
  background-image: url("../img/top/faq_q.png");
  -webkit-background-size: cover;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 0;
}
.p-top .sec_faq02 ul li .faq_a {
  line-height: 2.175;
}

/*フォーム、確認、サンクスページ*/
.p-form {
  margin-bottom: 10rem;
}
@media only screen and (max-width: 780px) {
  .p-form {
    margin-bottom: 5rem;
  }
}
.p-form .mailform h2 {
  margin-bottom: 2em;
  padding: 5rem 0;
  font-size: 4.4rem;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  position: relative;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform h2 {
    padding: 2.5rem 0;
    font-size: 2.2rem;
  }
}
.p-form .mailform h2:before {
  width: 100vw;
  height: 100%;
  content: '';
  background: -webkit-linear-gradient(to left, #E23923, #FF9D00);
  background: linear-gradient(to left, #E23923, #FF9D00);
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.p-form .mailform .send_states {
  margin-bottom: 6.4rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  counter-reset: num;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .send_states {
    margin-bottom: 4rem;
  }
}
.p-form .mailform .send_states li {
  width: 25%;
  margin: 0 2.5%;
  font-size: 2.6rem;
  font-weight: 500;
  text-align: center;
  counter-increment: num;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .send_states li {
    font-size: 1.8rem;
  }
}
.p-form .mailform .send_states li:before {
  width: 1.4em;
  height: 1.4em;
  margin: 0 auto 0.25em auto;
  content: counter(num);
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  line-height: 1.4;
  color: #ffffff;
  background-color: #2B2419;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  display: block;
}
.p-form .mailform .send_states li.current {
  color: #E37F21;
}
.p-form .mailform .send_states li.current:before {
  background-color: #E35D21;
}
.p-form .mailform > p {
  margin-bottom: 2em;
  font-size: 1.125em;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform > p {
    text-align: left;
  }
}
.p-form .mailform table {
  width: 100%;
  margin-bottom: 2em;
  font-size: 1.125em;
  border-spacing: 0 1rem;
  border-collapse: separate;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table {
    display: block;
  }
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table tbody {
    display: block;
  }
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table tr {
    display: block;
  }
}
.p-form .mailform table th {
  width: 30%;
  padding: 1.75em 1.5em;
  font-weight: 500;
  vertical-align: top;
  background-color: #F5EBE2;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table th {
    width: 100%;
    padding: 0.75em 1em;
    display: block;
  }
}
.p-form .mailform table th .hissu {
  margin-left: 1em;
  font-size: 0.77em;
  color: #E35D21;
  display: inline-block;
}
.p-form .mailform table td {
  padding: 0.75em 1.5em;
  vertical-align: top;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table td {
    width: 100%;
    display: block;
    padding: 1em 0;
  }
}
.p-form .mailform table td h3 {
  margin: 0.75em 0;
  padding: 0.25em 0.5em;
  font-weight: 700;
  color: #ffffff;
  background-color: #E37F21;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table td h3:first-child {
    margin-top: 0;
  }
}
.p-form .mailform table td .note {
  margin-top: 2em;
  padding: 2em;
  font-size: 0.88em;
  border: solid 1px #E6E6E6;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table td .note {
    margin-top: 1em;
    padding: 1em;
  }
}
.p-form .mailform table td .annotation {
  margin-top: 1em;
  font-size: 0.88em;
}
.p-form .mailform table td .radio-list {
  margin-top: 1em;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform table td .radio-list {
    margin-top: 0;
  }
}
.p-form .mailform .privacy p {
  margin-bottom: 2em;
  font-weight: 500;
  text-align: center;
}
.p-form .mailform .privacy iframe {
  width: 100%;
  height: 20em;
  margin-bottom: 2em;
  padding: 2em;
  border: solid 1px #e6e6e6;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .privacy iframe {
    height: 15em;
    padding: 1em;
  }
}
.p-form .mailform .privacy .check-list {
  font-size: 1.125em;
  font-weight: 500;
}
.p-form .mailform .privacy .check-list li {
  text-align: center;
}
@media only screen and (min-width: 781px) {
  .p-form .mailform .submit {
    margin-top: 5rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    gap: 2rem;
  }
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .submit {
    margin-top: 3rem;
  }
}
.p-form .mailform .submit input {
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  cursor: pointer;
}
.p-form .mailform .submit input:hover {
  opacity: 0.6;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .submit input {
    display: block;
  }
}
.p-form .mailform .submit .confirm {
  width: 42rem;
  height: 10.1rem;
  background-image: url("../img/form/btn_kakunin.png");
  -webkit-background-size: cover;
  background-size: cover;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .submit .confirm {
    width: 26.2rem;
    height: 6.3rem;
    margin: 0 auto;
  }
}
.p-form .mailform .submit .submit_btn {
  width: 42rem;
  height: 10.1rem;
  background-image: url("../img/form/btn_submit.png");
  -webkit-background-size: cover;
  background-size: cover;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .submit .submit_btn {
    width: 26.2rem;
    height: 6.3rem;
    margin: 0 auto;
  }
}
.p-form .mailform .submit .back {
  width: 17.6rem;
  height: 4rem;
  background-image: url("../img/form/btn_back.png");
  -webkit-background-size: cover;
  background-size: cover;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .submit .back {
    margin: 3rem auto 0 auto;
  }
}
.p-form .mailform input[type="text"], .p-form .mailform input[type="email"], .p-form .mailform input[type="tel"] {
  width: 100%;
  padding: 1em;
  background-color: #F7F7F7;
}
.p-form .mailform input[type="text"].w30p, .p-form .mailform input[type="email"].w30p, .p-form .mailform input[type="tel"].w30p {
  width: 30%;
  min-width: 10em;
}
.p-form .mailform select {
  width: 100%;
  padding: 1em 3em 1em 1em;
  background-color: #F7F7F7;
  background-image: url("../img/form/form_select_icon.png");
  background-repeat: no-repeat;
  -webkit-background-size: 1rem auto;
  background-size: 1rem auto;
  background-position: calc(100% - 2rem) center;
}
.p-form .mailform textarea {
  width: 100%;
  height: 10em;
  padding: 1em;
  background-color: #F7F7F7;
}
.p-form .mailform .check-list li + li {
  margin-top: 0.5em;
}
.p-form .mailform .check-list li label input {
  display: none;
}
.p-form .mailform .check-list li label input + span {
  padding-left: 1.5em;
  display: inline-block;
  position: relative;
}
.p-form .mailform .check-list li label input + span:before {
  width: 1em;
  height: 1em;
  content: '';
  border: solid 1px #151515;
  position: absolute;
  top: 0.3em;
  left: 0;
}
.p-form .mailform .check-list li label input + span:after {
  width: 0.8em;
  height: 0.5em;
  content: none;
  border-left: solid 0.3rem #E37F21;
  border-bottom: solid 0.3rem #E37F21;
  position: absolute;
  top: 0.4em;
  left: 0.15em;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.p-form .mailform .check-list li label input:checked + span:after {
  content: '';
}
.p-form .mailform .radio-list li + li {
  margin-top: 0.5em;
}
.p-form .mailform .radio-list li label input {
  display: none;
}
.p-form .mailform .radio-list li label input + span {
  padding-left: 1.5em;
  display: inline-block;
  position: relative;
}
.p-form .mailform .radio-list li label input + span:before {
  width: 1em;
  height: 1em;
  content: '';
  border: solid 1px #151515;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  position: absolute;
  top: 0.3em;
  left: 0;
}
.p-form .mailform .radio-list li label input + span:after {
  width: 0.6em;
  height: 0.6em;
  content: none;
  background-color: #E37F21;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  position: absolute;
  top: 0.485em;
  left: 0.2em;
}
.p-form .mailform .radio-list li label input:checked + span:after {
  content: '';
}
.p-form .mailform .downlod_info {
  padding: 2em;
  border: solid 1px #e6e6e6;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .downlod_info {
    padding: 1em;
  }
}
.p-form .mailform .downlod_info h3 {
  margin-bottom: 0.5em;
  font-size: 1.5em;
  font-weight: 700;
}
.p-form .mailform .downlod_info p {
  font-size: 1.125em;
}
.p-form .mailform .downlod_info .btn {
  width: 42rem;
  margin: 2em 0;
}
@media only screen and (max-width: 780px) {
  .p-form .mailform .downlod_info .btn {
    width: 26.2rem;
    margin: 1.5em 0;
  }
}
