@charset "UTF-8";
/* Box sizing rules */
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP&display=swap");
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/*
@mixin font-style($weight: 400, $color: $color-blakck) {
    font-weight: 400;
    font-style: normal;
    color: $color-black;
    font-size: 1.6rem;
}
*/
html {
  font-size: 62.5%;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #222222;
  line-height: 1.8;
  scroll-padding-top: 80px;
}

body {
  margin: 0;
  font-size: 1.4rem;
}

/** layout **/
.layout-container {
  display: grid;
  grid-template-areas: "header" "inner" "footer";
  gap: 0;
}
.layout-container .layout-header {
  grid-area: header;
  width: 100%;
  position: sticky;
  top: 0;
  z-index: 100;
}
.layout-container .layout-inner {
  grid-area: inner;
  display: grid;
  grid-template-areas: "main";
  grid-template-columns: 1fr;
  width: 100%;
  max-width: 920px;
  margin: 24px auto 60px;
  box-sizing: border-box;
  padding: 0 20px;
}
.layout-container .layout-inner .layout-main {
  grid-area: main;
}
.layout-container .layout-footer {
  grid-area: footer;
  width: 100%;
}

/** header **/
.theme-header {
  box-sizing: border-box;
  background: #ffffff;
  border-bottom: #D6D6D6 solid 1px;
}
.theme-header .header-wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 15px 20px;
}
.theme-header .header-wrap .header-logo {
  width: 140px;
}
.theme-header .header-wrap .header-logo img {
  width: 100%;
  height: auto;
}
.theme-header .header-wrap .header-nav > ul {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 10px;
}
.theme-header .header-wrap .header-nav > ul > li a img {
  width: 32px;
  height: 32px;
}
.theme-header .header-wrap .header-nav > ul > li a:hover {
  opacity: 0.6;
}

/** footer **/
.theme-footer {
  background: #F0F0F0;
}
.theme-footer .footer-wrap {
  padding: 56px 20px 27px;
  text-align: center;
  margin: 0 auto;
}
.theme-footer .footer-wrap h3 {
  font-size: 1.8rem;
  font-weight: 600;
  color: #222222;
  margin-bottom: 7px;
}
.theme-footer .footer-wrap p {
  font-size: 1.4rem;
  color: #222222;
  margin-bottom: 18px;
}
.theme-footer .footer-wrap .footer-kiyaku {
  display: block;
  margin: 40px auto 4px;
  font-size: 1.2rem;
  color: #222222;
}
.theme-footer .footer-wrap .footer-copyright {
  font-size: 1rem;
  color: #D6D6D6;
}

/** main **/
/** component **/
.component-search-box {
  margin: 0 0 24px;
}
.component-search-box form {
  display: flex;
  align-items: center;
}
.component-search-box form input[type=text] {
  flex: 1;
  height: 40px;
  padding: 0 10px;
  font-size: 1.4rem;
  box-sizing: border-box;
  border-radius: 8px 0px 0px 8px;
  border: #D6D6D6 solid 1px;
  border-right: none;
}
.component-search-box form input[type=text]::-moz-placeholder {
  color: #D6D6D6;
  opacity: 1;
}
.component-search-box form input[type=text]::placeholder {
  color: #D6D6D6;
  opacity: 1;
}
.component-search-box form button {
  width: 50px;
  height: 40px;
  background: url("../img/icon_search.png") no-repeat center center;
  background-size: 18px;
  background-position: center;
  background-color: #5E9E29;
  border: none;
  cursor: pointer;
  text-indent: -9999px;
  overflow: hidden;
  border-radius: 0px 8px 8px 0px;
}
.component-search-box form button:hover {
  opacity: 0.6;
}

.component-button-area {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 20px;
}

.component-button {
  width: 345px;
  height: auto;
  border-radius: 1000px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 18px 18px;
  font-size: 1.4rem;
  border: 1px solid transparent;
  box-sizing: border-box;
  text-decoration: none;
  position: relative;
  cursor: pointer;
}
.component-button-option-green {
  background-color: #5E9E29;
  color: #ffffff;
}
.component-button-option-green:hover {
  background-color: #ffffff;
  color: #5E9E29;
  border: 1px solid #5E9E29;
}
.component-button-option-white {
  background-color: #ffffff;
  color: #222222;
  border: 1px solid #222222;
}
.component-button-option-white:hover {
  background-color: #222222;
  color: #ffffff;
}
.component-button-option-white-green {
  background-color: #ffffff;
  color: #5E9E29;
  border: 1px solid #5E9E29;
}
.component-button-option-white-green:hover {
  background-color: #5E9E29;
  color: #ffffff;
}
.component-button-option-black {
  background-color: #222222;
  color: #ffffff;
}
.component-button-option-black:hover {
  background-color: #ffffff;
  color: #222222;
  border: 1px solid #222222;
}
.component-button-option-small {
  width: 96px;
  height: 32px;
}
.component-button-option-small-max {
  width: auto;
  height: auto;
  padding: 3px 18px;
  display: inline-block;
}
.component-button-option-icon-estimate::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url("../img/icon_estimate.svg") no-repeat center center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 30px;
}
.component-button-option-icon-cart::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url("../img/icon_cart.png") no-repeat center center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 30px;
}
.component-button-option-icon-calendar::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url("../img/icon_calendar.png") no-repeat center center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 30px;
}
.component-button-option-left-anchor::before {
  content: "";
  display: block;
  width: 10px;
  height: 8px;
  background: url("../img/icon_anchor_white.png") no-repeat center center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 30px;
  transform: rotate(90deg);
}
.component-button-option-left-anchor.component-button-option-white::before {
  width: 8px;
  height: 10px;
  background-image: url("../img/icon_anchor_black.png");
  transform: none;
}
.component-button-option-target-blank::after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url("../img/icon_target_blank.png") no-repeat center center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 30px;
}

.component-category-search-top {
  margin: 40px 0;
}
.component-category-search-top h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin: 0 0 10px;
}
.component-category-search-top p {
  font-size: 1.2rem;
}
.component-category-search-top .category-block {
  width: 100%;
  aspect-ratio: 880/309;
  display: flex;
  margin: 0 0 16px;
}
.component-category-search-top .category-block .category-item {
  flex-grow: 0;
  flex-shrink: 1;
}
.component-category-search-top .category-block .category-item:nth-child(1) {
  flex-basis: 40.9090909091%;
}
.component-category-search-top .category-block .category-item:nth-child(2) {
  flex-basis: 15%;
}
.component-category-search-top .category-block .category-item:nth-child(3) {
  flex-basis: 30.7954545455%;
}
.component-category-search-top .category-block .category-item:nth-child(4) {
  flex-basis: 13.2954545455%;
}
.component-category-search-top .category-block .category-item a {
  display: block;
  width: 100%;
  height: 100%;
}
.component-category-search-top .category-block .category-item a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.component-category-search-top .category-block .category-item a:hover {
  opacity: 0.6;
}

.component-category-list-top ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
}
.component-category-list-top ul li {
  width: 167px;
}
.component-category-list-top ul li a {
  display: flex;
  text-decoration: none;
  color: #ffffff;
  border-radius: 8px;
  align-items: center;
  padding: 10px 10px 9px;
  box-sizing: border-box;
  border: 1px solid transparent;
  position: relative;
}
.component-category-list-top ul li a::after {
  content: "";
  display: block;
  width: 10px;
  height: 6px;
  background: url("../img/icon_anchor_white.png") no-repeat center center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.component-category-list-top ul li a.color01 {
  background: #751FE6;
}
.component-category-list-top ul li a.color01:hover {
  background: #ffffff;
  color: #751FE6;
  border: #751FE6 solid 1px;
}
.component-category-list-top ul li a.color02 {
  background: #1EB9F3;
}
.component-category-list-top ul li a.color02:hover {
  background: #ffffff;
  color: #1EB9F3;
  border: #1EB9F3 solid 1px;
}
.component-category-list-top ul li a.color03 {
  background: #E6901F;
}
.component-category-list-top ul li a.color03:hover {
  background: #ffffff;
  color: #E6901F;
  border: #E6901F solid 1px;
}
.component-category-list-top ul li a.color04 {
  background: #F97BA6;
}
.component-category-list-top ul li a.color04:hover {
  background: #ffffff;
  color: #F97BA6;
  border: #F97BA6 solid 1px;
}
.component-category-list-top ul li a.color05 {
  background: #5E9E29;
}
.component-category-list-top ul li a.color05:hover {
  background: #ffffff;
  color: #5E9E29;
  border: #5E9E29 solid 1px;
}

.component-card-medium-list {
  margin: 40px 0 0;
}
.component-card-medium-list h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin: 0 0 42px;
}
.component-card-medium-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 33px 29px;
}
.component-card-medium-list ul li {
  width: 274px;
}

.component-card-medium-item .card-image {
  aspect-ratio: 274/192;
  width: 100%;
  width: 274px;
  border-radius: 16px;
  overflow: hidden;
  margin: 0 0 6px;
}
.component-card-medium-item .card-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.component-card-medium-item .card-model {
  margin: 0 0 2px;
  font-size: 1.2rem;
}
.component-card-medium-item .card-name {
  margin: 0 0 2px;
  font-size: 1.4rem;
}
.component-card-medium-item .card-drawing {
  margin: 0 0 2px;
  font-size: 1.2rem;
}
.component-card-medium-item .card-price {
  margin: 0 0 2px;
  font-size: 1.4rem;
}
.component-card-medium-item a {
  text-decoration: none;
  color: #222222;
}
.component-card-medium-item a:hover {
  opacity: 0.6;
}

.component-calendar {
  margin: 60px 0 60px;
}
.component-calendar h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin: 0 0 32px;
}
.component-calendar .calendar-list {
  display: flex;
  gap: 40px;
  margin: 0 0 20px;
}
.component-calendar .calendar-list .calendar-item {
  width: 100%;
  flex: 1;
}
.component-calendar .calendar-list .calendar-item .calendar-header {
  display: flex;
  justify-content: space-between;
  margin: 0 0 16px;
}
.component-calendar .calendar-list .calendar-item .calendar-header .calendar-month {
  font-size: 1.8rem;
  font-weight: 700;
}
.component-calendar .calendar-list .calendar-item:nth-child(n+3) {
  display: none;
}
.component-calendar .calendar-list .calendar-item .calendar-body .calendar-week-list {
  display: flex;
  flex-wrap: wrap;
}
.component-calendar .calendar-list .calendar-item .calendar-body .calendar-day-list {
  display: flex;
  flex-wrap: wrap;
}
.component-calendar .calendar-list .calendar-item .calendar-body .calendar-day {
  border-radius: 3px;
  width: 14.2857142857%;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #ffffff;
}
.component-calendar .calendar-list .calendar-item .calendar-body .calendar-day-text-red {
  color: #FF0000;
}
.component-calendar .calendar-list .calendar-item .calendar-body .calendar-day-text-blue {
  color: #0000FF;
}
.component-calendar .calendar-list .calendar-item .calendar-body .calendar-day-gray {
  background-color: #D6D6D6;
}
.component-calendar .calendar-note {
  font-size: 1.2rem;
}
.component-calendar .calendar-note .calendar-icon-holiday {
  font-size: 1.2rem;
  position: relative;
  padding: 0 0 0 24px;
}
.component-calendar .calendar-note .calendar-icon-holiday::before {
  content: "";
  background: #D6D6D6;
  height: 15px;
  width: 15px;
  display: inline-block;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  position: absolute;
  border-radius: 3px;
}

.component-product-detail {
  display: flex;
  flex-wrap: wrap;
  gap: 53px;
}
.component-product-detail .product-images {
  flex: 1;
}
.component-product-detail .product-images .product-image-main {
  width: 100%;
  aspect-ratio: 482/337;
  border-radius: 16px;
  overflow: hidden;
  margin: 0 0 16px;
}
.component-product-detail .product-images .product-image-main img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.component-product-detail .product-images .product-image-thumbnails {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.component-product-detail .product-images .product-image-thumbnails img {
  width: 86px;
  height: 60px;
  overflow: hidden;
  cursor: pointer;
  -o-object-fit: cover;
     object-fit: cover;
}
.component-product-detail .product-info {
  width: 345px;
}
.component-product-detail .product-info .product-category {
  font-size: 1.6rem;
  margin: 0 0 4px;
}
.component-product-detail .product-info .product-model {
  font-size: 1.6rem;
  margin: 0 0 8px;
}
.component-product-detail .product-info .product-name {
  font-size: 2.4rem;
  margin: 0 0 8px;
}
.component-product-detail .product-info .product-drawing {
  font-size: 1.6rem;
  margin: 0 0 8px;
}
.component-product-detail .product-info .product-price {
  font-size: 2.4rem;
  margin: 0 0 8px;
}
.component-product-detail .product-info .product-quantity {
  display: flex;
  font-size: 1.6rem;
  align-items: center;
}
.component-product-detail .product-info .product-quantity input {
  width: 100px;
  margin: 0 0 0 8px;
  height: 40px;
  width: 100px;
  border-radius: 8px;
  border: 1px solid #d6d6d6;
  padding: 10px;
}
.component-product-detail .product-info .product-submit {
  margin: 40px 0;
}
.component-product-detail .product-info .product-description {
  font-size: 1.6rem;
}
.component-product-detail .product-info .product-description .product-description-title {
  font-size: 1.2em;
  margin: 0 0 10px;
}
.component-product-detail .product-info .product-description p {
  margin: 0 0 8px;
}
.component-product-detail .product-info .product-description .small {
  font-size: 1.2rem;
}
.component-product-detail .product-info .product-back {
  margin: 40px 0 0;
}

.component-product-list {
  margin: 40px 0;
}
.component-product-list h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin: 0 0 20px;
}
.component-product-list h3 {
  font-size: 1.4rem;
  font-weight: 700;
  margin: 0 0 16px;
}
.component-product-list > p {
  font-size: 1.4rem;
  font-weight: 700;
  margin: 0 0 10px;
}
.component-product-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 38px;
}
.component-product-list ul li .component-product-item {
  display: flex;
  gap: 16px;
  margin: 0 0 20px;
  align-items: flex-start;
}
.component-product-list ul li .component-product-item .product-image {
  width: 163px;
  aspect-ratio: 163/114;
  border-radius: 16px;
  overflow: hidden;
}
.component-product-list ul li .component-product-item .product-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.component-product-list ul li .component-product-item .product-info .product-model {
  font-size: 1.2rem;
  margin: 0 0 4px;
}
.component-product-list ul li .component-product-item .product-info .product-name {
  font-size: 1.4rem;
  margin: 0 0 4px;
}
.component-product-list ul li .component-product-item .product-info .product-drawing {
  font-size: 1.2rem;
  margin: 0 0 4px;
}
.component-product-list ul li .component-product-item .product-info .product-price {
  font-size: 1.4rem;
  margin: 0 0 4px;
}
.component-product-list ul li .component-product-item .product-info .product-quantity {
  display: flex;
  font-size: 1.4rem;
  align-items: center;
}
.component-product-list ul li .component-product-item .product-info .product-quantity input {
  width: 100px;
  margin: 0 0 0 8px;
  height: 40px;
  width: 100px;
  border-radius: 8px;
  border: 1px solid #d6d6d6;
  padding: 10px;
}
.component-product-list ul li .component-product-item .product-info .product-submit {
  margin: 16px 0 0;
}

.component-cart-total {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #D6D6D6;
  padding: 20px 0;
}
.component-cart-total .cart-total-title {
  font-size: 1.4rem;
}
.component-cart-total .cart-total-amount {
  font-size: 2.4rem;
  font-weight: 700;
}

.component-main-title {
  margin: 40px 0 10px;
}
.component-main-title h2 {
  font-size: 2.4rem;
}
.component-main-title p {
  font-size: 1.2rem;
  margin: 4px 0 0;
}

.component-select-box select {
  width: 100%;
  height: 40px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #d6d6d6;
  padding: 10px 17px;
}

.component-link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 32px;
  margin: 0 0 40px;
}
.component-link-list a {
  width: calc(50% - 16px);
  display: flex;
  text-decoration: none;
  color: #222222;
  padding: 15px;
  align-items: center;
  border-bottom: #D6D6D6 solid 1px;
  position: relative;
}
.component-link-list a:hover {
  opacity: 0.6;
}
.component-link-list a::before {
  content: "";
  display: inline-block;
  width: 32px;
  height: 32px;
  background: url(../img/icon_estimate_mypage.png);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 10px 0 0;
}
.component-link-list a.icon-history::before {
  background-image: url(../img/icon_order_history.png);
}
.component-link-list a.icon-estimate::before {
  background-image: url(../img/icon_estimate_history.png);
}
.component-link-list a.icon-mypage::before {
  background-image: url(../img/icon_mypage.png);
}
.component-link-list a::after {
  content: "";
  display: block;
  position: absolute;
  width: 10px;
  height: 10px;
  background: url(../img/icon_anchor_black.png);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
}

.component-detail-box {
  border-radius: 6px;
  border: 1px solid #d6d6d6;
  padding: 20px;
}
.component-detail-box h3 {
  font-size: 1.8rem;
  margin: 0 0 20px;
}
.component-detail-box hr {
  margin: 30px 0;
  border: none;
  border-top: 1px solid #d6d6d6;
}
.component-detail-box textarea {
  width: 100%;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #d6d6d6;
  padding: 20px;
}

.component-button-area-small {
  display: flex;
  gap: 12px;
  margin: 10px 0 0;
}

.component-myinfo-box dl {
  margin: 0 0 16px;
}
.component-myinfo-box dl dt {
  font-size: 1.8rem;
  margin: 0 0 4px;
}
.component-myinfo-box dl dt .ec-required {
  margin: 0 0 0 10px;
  color: red;
  font-size: 1.4rem;
}
.component-myinfo-box dl dt label {
  margin: 0;
}
.component-myinfo-box dl dt input[type=text] {
  margin: 0;
}
.component-myinfo-box dl dd input {
  width: 100%;
  height: 40px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #d6d6d6;
  padding: 10px 17px;
  margin: 0 0 10px;
}
.component-myinfo-box dl dd select {
  width: 100%;
  height: 40px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #d6d6d6;
  padding: 10px 17px;
  margin: 0 0 10px;
}
.component-myinfo-box dl dd .subtitle {
  margin: 10px 0 0;
}
.component-myinfo-box dl dd.half-input input {
  width: 48%;
}
.component-myinfo-box dl dd .ec-zipInput input {
  max-width: 400px;
}

.component-login {
  margin: 80px 0 0;
  text-align: center;
}
.component-login h1 {
  width: 196px;
  display: block;
  margin: 0 auto 50px;
}
.component-login h1 img {
  width: 100%;
}
.component-login input {
  display: block;
  width: 305px;
  height: 40px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #d6d6d6;
  padding: 10px 17px;
  margin: 0 auto 20px;
}

/**
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #262626;
    line-height: 1.6;
    font-size: 1.6rem;
**/
/** 共通 **/
.heading01 {
  font-size: 2.4rem;
  color: #07365B;
}

.heading02 {
  margin: 20px 0;
  font-size: 2rem;
}

.heading03 {
  margin: 20px 0 0 0;
  font-size: 1.8rem;
}

.txt {
  margin: 10px 0 0 0;
  font-size: 1.4rem;
}
.txt b {
  color: #FB1F1F;
  font-weight: bold;
}

.annotation {
  font-size: 1.2rem;
}

.annotation2 {
  font-size: 1.2rem;
  color: #EF4444;
}

figure {
  margin: 20px 0;
}

.btn01 {
  margin: 20px 0;
  text-align: center;
}
.btn01 a {
  font-size: 1.2rem;
  display: inline-block;
  width: 220px;
  padding: 10px 0;
  color: #fff;
  background-color: #07365B;
  text-decoration: none;
  text-align: center;
  border-radius: 100px;
  border: 1px solid #07365B;
  transition: 0.5s all ease;
}
.btn01 a:hover {
  background-color: #fff;
  color: #07365B;
}

.table01 {
  margin: 20px 0;
  border-top: 1px solid #D4D4D4;
  border-bottom: 1px solid #D4D4D4;
}
.table01 .dl01 {
  border-top: 1px solid #D4D4D4;
  border-bottom: 1px solid #D4D4D4;
  background-color: #07365B;
  display: flex;
  align-items: center;
  border-left: 2px solid #D4D4D4;
  border-right: 2px solid #D4D4D4;
}
.table01 .dl01 .dl-header {
  font-size: 1.6rem;
  padding: 10px 0;
  text-align: center;
  width: 25%;
  color: #fff;
  background-color: #07365B;
}
.table01 .dl01 .dl-content {
  background-color: #fff;
  padding: 10px 0;
  display: flex;
  align-items: center;
  width: 75%;
}
.table01 .dl01 .dl-content .dd01 {
  padding: 0 20px;
  font-size: 1.8rem;
  font-weight: bold;
  width: 30%;
  text-align: center;
}
.table01 .dl01 .dl-content .dd02 {
  font-size: 1.4rem;
  width: 70%;
}
.table01 .dl01 .dl-content .dd03 {
  ont-size: 1.6rem;
  width: 100%;
  text-align: center;
}

.table02 {
  margin: 20px 0;
  font-size: 1.4rem;
}
.table02 .tableHeader {
  display: flex;
}
.table02 .tableHeader div {
  padding: 10px 0;
  width: 25%;
  background: #07365B;
  color: #fff;
  text-align: center;
  border: 1px solid #D4D4D4;
}
.table02 .tableContent {
  display: flex;
  background: #07365B;
  border: 1px solid #D4D4D4;
}
.table02 .tableContent div {
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.table02 .tableContent div.heading {
  width: 25%;
  background: #07365B;
  color: #fff;
  text-align: center;
}
.table02 .tableContent div.content {
  width: 25%;
  background: #fff;
  text-align: center;
  border-right: 1px solid #D4D4D4;
  border-left: 1px solid #D4D4D4;
}

.table03 {
  margin: 20px 0;
  font-size: 1.4rem;
}
.table03 .tableContent {
  display: flex;
  background: #07365B;
  border: 1px solid #D4D4D4;
}
.table03 .tableContent div {
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.table03 .tableContent div.heading {
  width: 25%;
  background: #07365B;
  color: #fff;
  text-align: center;
}
.table03 .tableContent div.content {
  width: 37.5%;
  background: #fff;
  text-align: center;
  border-right: 1px solid #D4D4D4;
  border-left: 1px solid #D4D4D4;
}

.table04 {
  margin: 20px 0;
  font-size: 1.4rem;
}
.table04 .tableHeader {
  display: flex;
}
.table04 .tableHeader div {
  padding: 10px 0;
  width: 25%;
  background: #07365B;
  color: #fff;
  text-align: center;
  border: 1px solid #D4D4D4;
}
.table04 .tableHeader div.heading {
  width: 25%;
  background: #07365B;
  color: #fff;
  text-align: center;
}
.table04 .tableHeader div.content {
  background: #07365B;
  color: #fff;
  width: 75%;
  text-align: center;
  border-right: 1px solid #D4D4D4;
  border-left: 1px solid #D4D4D4;
}
.table04 .tableContent {
  display: flex;
  background: #07365B;
  border: 1px solid #D4D4D4;
}
.table04 .tableContent div {
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.table04 .tableContent div.heading {
  width: 25%;
  background: #07365B;
  color: #fff;
  text-align: center;
}
.table04 .tableContent div.content {
  width: 75%;
  background: #fff;
  text-align: center;
  border-right: 1px solid #D4D4D4;
  border-left: 3px solid #D4D4D4;
}

.qaList {
  margin: 0 0 40px 0;
}
.qaList .qa .que {
  padding: 20px 0;
  font-size: 1.4rem;
  font-weight: bold;
  border-bottom: 1px solid #E5E5E5;
  cursor: pointer;
}
.qaList .qa .ans {
  display: none;
  padding: 20px 0;
  font-size: 1.4rem;
  font-weight: bold;
  border-bottom: 1px solid #E5E5E5;
}

.area .ly {
  display: flex;
  justify-content: space-between;
}
.area .ly .ly-main {
  width: 48.5%;
}
.area .ly .ly-sub {
  width: 48.5%;
}

.tableArea {
  margin: 20px 0;
  border-top: 1px solid #D4D4D4;
  border-bottom: 1px solid #D4D4D4;
}
.tableArea .dl01 {
  display: flex;
  align-items: center;
  border-top: 1px solid #D4D4D4;
  border-bottom: 1px solid #D4D4D4;
  border-left: 2px solid #D4D4D4;
  border-right: 2px solid #D4D4D4;
}
.tableArea .dl01.area01 {
  background-color: #F6C2C1;
}
.tableArea .dl01.area02 {
  background-color: #EBF1C1;
}
.tableArea .dl01.area03 {
  background-color: #F4D97F;
}
.tableArea .dl01.area04 {
  background-color: #94D4F5;
}
.tableArea .dl01.area05 {
  background-color: #C6D1BA;
}
.tableArea .dl01 .dl-header {
  font-size: 1.6rem;
  font-weight: bold;
  padding: 10px 0;
  text-align: center;
  width: 25%;
}
.tableArea .dl01 .dl-content {
  background-color: #fff;
  padding: 10px 0;
  display: flex;
  align-items: center;
  width: 75%;
}
.tableArea .dl01 .dl-content .dd01 {
  padding: 0 20px;
  font-size: 1.6rem;
}

.tel {
  text-align: center;
}

.tel2 {
  text-align: center;
  background: #07365B;
  padding: 15px 0;
  color: #fff;
}

/** ページ毎 **/
.page-career .theme-main dl dt {
  margin: 20px 0 5px 0;
  font-size: 1.8rem;
  font-weight: bold;
}
.page-career .theme-main dl dd {
  font-size: 1.4rem;
}

.page-support .theme-main ul li {
  margin: 0 0 0 -1.2em;
  font-size: 1.4rem;
  line-height: 1.8;
  text-indent: -1em;
}

.page-hall .theme-main > section {
  margin: 20px 0;
}
.page-hall .theme-main .info {
  display: flex;
}
.page-hall .theme-main .info .ly-main {
  width: 310px;
  margin: 0 20px 0 0;
}
.page-hall .theme-main .info .ly-sub dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: center;
}
.page-hall .theme-main .info .ly-sub dl dt {
  margin: 5px 0;
  width: 30%;
  color: #07365B;
  font-size: 1.8rem;
  font-weight: bold;
}
.page-hall .theme-main .info .ly-sub dl dt a {
  text-decoration: none;
  color: #07365B;
}
.page-hall .theme-main .info .ly-sub dl dd {
  margin: 5px 0;
  width: 70%;
  font-size: 1.4rem;
}
.page-hall .theme-main .detail {
  background-color: #EEE;
  box-sizing: border-box;
  padding: 0 20px 20px 20px;
  border-radius: 10px;
}
.page-hall .theme-main .detail .toggle {
  text-align: center;
  cursor: pointer;
  color: #07365B;
  padding: 10px;
  font-weight: bold;
}
.page-hall .theme-main .detail dl dt {
  font-weight: bold;
  margin: 10px 0 5px 0;
  font-size: 1.8rem;
}
.page-hall .theme-main .detail dl dt span {
  color: #07365B;
}
.page-hall .theme-main .detail dl dd {
  font-size: 1.4rem;
}
.page-hall .theme-main .detail ul {
  margin: 10px 0;
  padding: 0;
}
.page-hall .theme-main .detail ul li {
  font-size: 1.4rem;
}

.page-company .theme-main ul.link {
  margin: 50px 0 0 0;
  padding: 0;
  display: flex;
  justify-content: space-around;
}
.page-company .theme-main ul.link li {
  width: 48.5%;
  text-align: center;
}
.page-company .theme-main ul.link li a {
  padding: 20px 0;
  display: block;
  text-decoration: none;
  color: #07365B;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #D4D4D4;
}

.page-ganbarukigyo .theme-main .adList .block {
  margin: 0 0 20px 0;
  background-color: #eee;
  border-radius: 10px;
}
.page-ganbarukigyo .theme-main .adList .block .title {
  cursor: pointer;
  padding: 15px 0;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
.page-ganbarukigyo .theme-main .adList .block ul {
  margin: 0;
  padding: 20px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-items: flex-start;
}
.page-ganbarukigyo .theme-main .adList .block ul li {
  width: 31%;
  margin: 0 2.3% 10px 0;
}
.page-ganbarukigyo .theme-main .adList .block ul li a {
  color: #262626;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 10px 0 15px;
  text-decoration: none;
  display: block;
  border-bottom: 1px solid #D4D4D4;
}/*# sourceMappingURL=style.css.map */