@charset "UTF-8";
:root {
  --max-width: 1000px;
  --ab-padding:4% 0 0;
  --ab-lineH-hd:2;
  --ab-lineH-hd2:2.6;
  --ab-lineH-fhd:2.5;
  --ab-lineH-fhd2:3;
}

.main {
  position: relative;
}

.section {
  width: 100%;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.box {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/bg_01.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box .child {
  color: #fff;
  font-family: eb-garamond, serif;
  font-size: 125px;
  text-align: center; /* 横方向に中央揃え */
}
.box.footer_box {
  height: auto;
}

/*company*/
.box1-cp {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/company/company_bg_01.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box1-cp .child {
  color: #fff;
  font-family: eb-garamond, serif;
  font-size: 125px;
  text-align: center; /* 横方向に中央揃え */
}

.box2-cp {
  width: 100%;
  height: 100vh;
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url(../img/company/company_bg_02.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box2-cp .box_cont {
  width: 100%;
  padding: 25% 20% 30% 20%;
  text-shadow: 0 0 8px #464646;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box2-cp .box_cont {
    padding: 2% 20% 10% 20%;
  }
}
.box2-cp .box_cont .company_ttl_b {
  width: 100%;
  height: 100%;
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: bold;
  font-size: 2rem;
  text-align: left;
  line-height: 3;
}
.box2-cp .box_cont .company_cont_b {
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  text-align: left;
  line-height: 2;
}
.box2-cp .box_cont .ms_name {
  margin: 0;
  text-align: right;
  color: #fff;
  display: inline-block;
}
.box2-cp .box_cont .ms_name span {
  display: inline-block;
  text-align: center;
}
.box2-cp .box_cont .ms_name img {
  margin-left: 1%;
  width: 14%;
  vertical-align: middle;
}

.box3-cp {
  height: 100vh;
  background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url(../img/company/company_bg_03.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box3-cp .box_cont {
  width: 100%;
  padding: 5% 0 10% 50%;
  text-shadow: 0 0 8px #464646;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box3-cp .box_cont {
    padding: 10% 0 10% 45%;
  }
}
.box3-cp .box_cont .company_ttl_w {
  width: 100%;
  height: 100%;
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: bold;
  font-size: 2rem;
  text-align: left;
  line-height: 3;
}
.box3-cp .box_cont .table_wrap {
  width: 100%;
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 1.2rem;
  text-align: left;
  line-height: 2;
}
.box3-cp .box_cont .table_wrap th {
  width: 15%;
}
.box3-cp .box_cont .table_wrap td {
  width: 85%;
  padding-left: 2%;
  font-size: 1.2rem;
  color: #fff;
}

/*about */
.box1-ab {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/about/about_bg_01.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box1-ab .child {
  color: #fff;
  font-family: eb-garamond, serif;
  font-size: 125px;
  text-align: center; /* 横方向に中央揃え */
}

.box2-ab, .box3-ab, .box4-ab, .box5-ab, .box6-ab {
  width: 100%;
  height: 100vh;
}
.box2-ab .box_cont, .box3-ab .box_cont, .box4-ab .box_cont, .box5-ab .box_cont, .box6-ab .box_cont {
  width: 100%;
  max-width: var(--max-width);
  padding: var(--ab-padding);
  display: flex;
  justify-content: center;
  align-items: center;
  text-shadow: 0 0 8px #000000;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box2-ab .box_cont, .box3-ab .box_cont, .box4-ab .box_cont, .box5-ab .box_cont, .box6-ab .box_cont {
    margin: 0 2%;
  }
}

.box2-ab {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(255, 255, 255, 0.1)), url(../img/about/about_bg_02.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box2-ab .box_cont {
  flex-flow: row-reverse;
}
.box2-ab .box_cont .about_ttl_b {
  width: 100%;
  height: 100%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: bold;
  font-size: 2.3rem;
  text-align: center;
  line-height: 7;
}
@media (max-width: 768px) {
  .box2-ab .box_cont .about_ttl_b {
    margin: 0 2%;
  }
}
.box2-ab .box_cont .about_cont_b {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: 500;
  font-size: 1.25rem;
  text-align: left;
  line-height: var(--ab-lineH-fhd2);
}
@media (max-width: 1366px) {
  .box2-ab .box_cont .about_cont_b {
    line-height: var(--ab-lineH-hd2);
  }
}

.box3-ab {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(255, 255, 255, 0.1)), url(../img/about/about_bg_03.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box3-ab .box_cont .about_ttl_b {
  width: 100%;
  height: 100%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: bold;
  font-size: 2.3rem;
  text-align: center;
  line-height: 7;
}
@media (max-width: 768px) {
  .box3-ab .box_cont .about_ttl_b {
    margin: 0 2%;
  }
}
.box3-ab .box_cont .about_cont_b {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: 500;
  font-size: 1.25rem;
  text-align: left;
  line-height: var(--ab-lineH-fhd);
}
@media (max-width: 1366px) {
  .box3-ab .box_cont .about_cont_b {
    line-height: var(--ab-lineH-hd);
  }
}

.box4 {
  background: #f1f5fa;
}
.box4 .box_cont {
  width: 100%;
  max-width: var(--max-width);
  padding: var(--ab-padding);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box4 .box_cont {
    margin: 0 2%;
  }
}
.box4 .box_cont .corp_icon {
  width: 4%;
}
.box4 .box_cont .corp_icon img {
  width: 100%;
}
@media all and (-ms-high-contrast: none) {
  .box4 .box_cont .corp_icon img {
    line-height: 0;
    margin: 0;
    padding: 0;
  }
}
.box4 .box_cont .access_ttl {
  color: #231c1c;
  font-family: arial, sans-serif;
  font-size: 2.5rem;
  text-align: center;
}
@media all and (-ms-high-contrast: none) {
  .box4 .box_cont .access_ttl {
    line-height: 0;
    margin: 0;
    padding: 0.5% 0 3% 0;
  }
}
.box4 .box_cont #map {
  width: 100%;
}
.box4 .box_cont #map iframe {
  margin: 1% 0;
}

.box4-ab {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(255, 255, 255, 0.1)), url(../img/about/about_bg_04.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box4-ab .box_cont {
  flex-flow: row-reverse;
}
.box4-ab .box_cont .about_ttl_b {
  width: 100%;
  height: 100%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: bold;
  font-size: 2.3rem;
  text-align: center;
  line-height: 1.5em;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box4-ab .box_cont .about_ttl_b {
    margin: 0 2%;
    line-height: 1.5;
  }
}
.box4-ab .box_cont .about_cont_b {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: 500;
  font-size: 1.25rem;
  text-align: left;
  line-height: var(--ab-lineH-fhd2);
}
@media (max-width: 1366px) {
  .box4-ab .box_cont .about_cont_b {
    line-height: var(--ab-lineH-hd2);
  }
}

.box5-ab {
  background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(255, 255, 255, 0.2)), url(../img/about/about_bg_05.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box5-ab .box_cont .about_ttl_b {
  width: 100%;
  height: 100%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: bold;
  font-size: 2.3rem;
  text-align: center;
  line-height: 2;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box5-ab .box_cont .about_ttl_b {
    line-height: 1.5;
  }
}
.box5-ab .box_cont .about_cont_b {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #fff;
  font-weight: 500;
  font-size: 1.25rem;
  text-align: left;
  line-height: var(--ab-lineH-fhd);
}
@media (max-width: 1366px) {
  .box5-ab .box_cont .about_cont_b {
    line-height: var(--ab-lineH-hd);
  }
}

.box6-ab {
  background: #f1f5fa;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.box6-ab .corp_icon img {
  width: 60%;
}
.box6-ab .product_ttl {
  color: #231c1c;
  font-family: arial, sans-serif;
  font-size: 58px;
  text-align: center;
  margin: 1% 0;
}
.box6-ab .product_cont {
  color: #231c1c;
  padding: 0 20%;
  line-height: 2.5;
}

/*products*/
.box1-pd {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/products/products_bg_01.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.box1-pd .child {
  color: #fff;
  font-family: eb-garamond, serif;
  font-size: 8rem;
  text-align: center; /* 横方向に中央揃え */
}

.box2-pd {
  width: 100%;
  max-width: 1400px;
  height: auto;
  margin: 0 auto;
  padding: 0 0 2% 0;
  background: #f1f5fa;
}
.box2-pd .product_cont {
  width: 100%;
  height: 100%;
  padding: 1% 0;
  display: flex;
  flex-wrap: wrap;
  align-content: stretch;
  justify-content: center;
  align-items: flex-start;
}
.box2-pd .product_cont .product_ttl {
  width: 30%;
  text-align: center;
  display: block;
  font-family: toppan-bunkyu-midashi-go-std, sans-serif;
  font-weight: 500;
  font-size: 60px;
  line-height: 1.3;
}
.box2-pd .product_cont .product_ttl img {
  padding: 10% 0;
  width: 38%;
}
.box2-pd .product_cont .product_list {
  width: 70%;
  display: flex;
  display: -ms-flexbox;
  /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
}
.box2-pd .product_cont .product_list::after {
  content: "";
  display: block;
  background: #64666b;
  height: 1px;
  width: 98%;
  margin: 5% 0;
}
.box2-pd .product_cont .product_list a {
  font-size: 1.2rem;
  color: #231c1c;
  text-decoration: none;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
}
.box2-pd .product_cont .product_list .product_thumb {
  width: 40%;
  margin: 0 0 3% 0;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box2-pd .product_cont .product_list .product_thumb {
    margin: 0 0 5% 0;
  }
}
.box2-pd .product_cont .product_list .product_thumb .p_image {
  margin: 0 2%;
}
.box2-pd .product_cont .product_list .product_thumb img {
  width: 100%;
}
.box2-pd .product_cont .product_list .product_thumb .p_info {
  margin: 0;
  display: block;
  text-align: center;
}
.box2-pd .product_cont .product_list .product_thumb .p_info .item_option {
  font-size: 1rem;
  display: block;
  text-align: center;
}
.box2-pd .product_cont .product_list .product_thumb .p_info span {
  font-size: 16px;
  margin: 0 3%;
}
.box2-pd .product_cont .product_list_b {
  width: 70%;
  display: flex;
  display: -ms-flexbox;
  /* IE10 */
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
}
.box2-pd .product_cont .product_list_b a {
  font-size: 22px;
  color: #231c1c;
  text-decoration: none;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
}
.box2-pd .product_cont .product_list_b .product_thumb {
  width: 40%;
}
.box2-pd .product_cont .product_list_b .product_thumb .p_image {
  margin: 0 2%;
}
.box2-pd .product_cont .product_list_b .product_thumb img {
  width: 100%;
}
.box2-pd .product_cont .product_list_b .product_thumb .p_info {
  width: 100%;
  margin: 0;
  display: block;
  text-align: center;
}
.box2-pd .product_cont .product_list_b .product_thumb .p_info .item_option {
  font-size: 18px;
}
.box2-pd .product_cont .product_list_b .product_thumb .p_info span {
  font-size: 16px;
  margin: 0 3%;
}
@media (max-width: 1024px) and (min-width: 768px) {
  .box2-pd .product_cont .product_list_b .product_thumb .sp_lim_space {
    margin-bottom: 8%;
  }
}
.box2-pd .product_cont .container_box_2 {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 1% 0;
  display: flex;
  flex-wrap: wrap;
  align-content: stretch;
  justify-content: center;
  align-items: flex-start;
}
.box2-pd .product_cont .container_box_2 .product_ttl {
  width: 20%;
  text-align: center;
  display: block;
  font-family: toppan-bunkyu-midashi-go-std, sans-serif;
  font-weight: 500;
  font-size: 60px;
  line-height: 1.3;
}
.box2-pd .product_cont .container_box_2 .product_ttl img {
  padding: 10% 0;
  width: 50%;
}
.box2-pd .product_anno_txt {
  margin: 7% auto 0;
}

.product_anno_txt {
  color: #979797;
  font-size: 0.8rem;
}

#item_page {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  height: auto;
  background: #f1f5fa;
  text-align: center;
  padding: 3% 0;
}
@media (max-width: 1024px) and (min-width: 768px) {
  #item_page {
    padding: 8% 0;
  }
}
#item_page .item_page_wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
#item_page .item_page_wrap .cf:before,
#item_page .item_page_wrap .cf:after {
  content: "";
  display: table;
}
#item_page .item_page_wrap .cf:after {
  clear: both;
}
#item_page .item_page_wrap .cf {
  zoom: 1;
}
#item_page .item_page_wrap #content {
  max-width: 84%;
  margin: 7rem auto 1rem;
  text-align: center;
}
@media all and (-ms-high-contrast: none) {
  #item_page .item_page_wrap #content {
    width: 84%;
    margin: 2% 0.1%;
  }
}
#item_page .item_page_wrap #content_5 {
  max-width: 84%;
  margin: 3rem auto;
  text-align: center;
}
#item_page .item_page_wrap #featured_img img,
#item_page .item_page_wrap #thumb_img img {
  max-width: 100%;
}
#item_page .item_page_wrap #thumb_img {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1%;
}
#item_page .item_page_wrap #thumb_img img {
  max-width: 15%;
  width: 15%;
  cursor: pointer;
  margin: 0 0.5%;
  border: 2px solid #eee;
  box-sizing: border-box;
}
#item_page .item_page_wrap #thumb_img img:hover {
  opacity: 0.7;
  cursor: pointer;
}
#item_page .item_page_wrap #thumb_img img.active {
  border: 1px solid #cac6b8;
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.8));
  -moz-filter: grayscale(100%) brightness(90%);
  -ms-filter: grayscale(100%) brightness(90%);
  -o-filter: grayscale(100%) brightness(90%);
  filter: grayscale(100%) brightness(90%);
}
#item_page .item_page_wrap #thumb_img img:last-child {
  margin-right: 0;
}
#item_page .item_page_wrap img {
  width: 80%;
}
#item_page .item_page_wrap .txt_wrap {
  width: 100%;
  text-align: left;
  padding: 0 15%;
}
#item_page .item_page_wrap .txt_wrap::after {
  content: "";
  display: block;
  background: #3f4554;
  width: 98%;
  height: 1px;
  margin: 5% 0;
}
#item_page .item_page_wrap .txt_wrap h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 2rem;
}
#item_page .item_page_wrap .txt_wrap h3 span {
  margin: 0 0 1% 1%;
  font-size: 1.2rem;
}
#item_page .item_page_wrap .txt_wrap .caution {
  margin: 0 0 1em;
}
#item_page .item_page_wrap .txt_wrap tr {
  width: 100%;
  line-height: 1.8;
}
#item_page .item_page_wrap .txt_wrap tr th {
  width: 50%;
  letter-spacing: 0.15em;
}
#item_page .item_page_wrap .txt_wrap tr td {
  width: 50%;
}
#item_page .item_page_wrap .txt_wrap .detail .catch {
  margin: 0 0 1% 0;
  color: #ac9c69;
  font-size: 1.1rem;
}
#item_page .item_page_wrap .txt_wrap .buybtn {
  width: 100%;
  text-align: right;
  padding-right: 4%;
}
#item_page .item_page_wrap .txt_wrap .buybtn .button {
  display: inline-block;
  margin: 0;
  width: 200px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
  font-size: 16px;
  color: #231c1c;
  background: #fff;
  border: 1px solid #231c1c;
  box-sizing: border-box;
  transition: all 0.3s;
}
@media (max-width: 768px) {
  #item_page .item_page_wrap .txt_wrap .buybtn .button {
    width: 160px;
    height: 50px;
    font-size: 14px;
  }
}
#item_page .item_page_wrap .txt_wrap .buybtn .button:hover {
  background: #231c1c;
  color: #fff;
  border: 1px solid #fff;
}
#item_page .item_page_wrap .txt_wrap .buybtn .button::before, #item_page .item_page_wrap .txt_wrap .buybtn .button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: "";
}
#item_page .item_page_wrap .txt_wrap .buybtn .button::before, #item_page .item_page_wrap .txt_wrap .buybtn .button::after {
  box-sizing: border-box;
  transition: all 0.3s;
}
#item_page .item_page_wrap .txt_wrap .supple_wrap {
  margin: 2% 0 0;
}
#item_page .item_page_wrap .info_wrap {
  width: 100%;
  text-align: left;
  padding: 0 15%;
}
#item_page .item_page_wrap .info_wrap h4 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  margin-bottom: 2%;
}
#item_page .item_page_wrap .info_wrap ul {
  margin: 0 1.8%;
  line-height: 2;
}
#item_page .item_page_wrap .product_anno_txt {
  width: 70%;
  margin: 0 auto 6%;
}
#item_page .item_page_wrap .product_anno_txt span {
  display: inline-block;
}

/* ----------------------------------------
 * お問い合わせ
 * ---------------------------------------- */
.contact {
  width: 100%;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/contact/contact_bg_01.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.contact .child {
  color: #fff;
  font-family: eb-garamond, serif;
  font-size: 90px;
  text-align: center; /* 横方向に中央揃え */
}

#tel_contact {
  width: 100%;
  background: #f1f5fa;
  max-width: 900px;
  height: auto;
  margin: 5% auto 2% auto;
  padding: 0;
}
#tel_contact .txt_box01 {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0;
  font-size: 1rem;
  line-height: 1.8em;
  text-align: center;
}
#tel_contact .txt_box02 {
  width: 100%;
  height: auto;
  margin: 2% auto;
  padding: 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 2.2rem;
  line-height: 1.8em;
  text-align: center;
  font-weight: bold;
}
#tel_contact .txt_box02 span {
  font-size: 1.5rem;
  margin-right: 0.5%;
}
#tel_contact .txt_box02 a {
  text-decoration: none;
  color: #231c1c;
}
#tel_contact h3 {
  width: 100%;
  height: auto;
  margin: 0 auto 3% auto;
  padding: 1% 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8em;
  color: #231c1c;
  text-align: center;
  border-top: #E5E5E5 1px solid;
  border-bottom: #E5E5E5 1px solid;
}

#mail_contact {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0;
}

#mail_complete {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 10% 0;
}
@media (max-width: 1024px) and (min-width: 768px) {
  #mail_complete {
    height: 70vh;
  }
}

#form {
  width: 100%;
  max-width: 900px;
  height: auto;
  margin: 0 auto;
  padding: 0;
}
#form h3 {
  width: 100%;
  height: auto;
  margin: 0 auto 3% auto;
  padding: 1% 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8em;
  color: #231c1c;
  text-align: center;
  border-top: #E5E5E5 1px solid;
  border-bottom: #E5E5E5 1px solid;
}
#form .form_box {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0 0;
}
#form .form_txt {
  width: 100%;
  height: auto;
  margin: 10% auto;
  padding: 3%;
  font-size: 18px;
  line-height: 1.8em;
  color: #000;
}
#form .form_txt strong {
  font-size: 24px;
  color: #0d6f69;
}
#form .form_txt ul {
  width: 96%;
  height: auto;
  margin: 0 auto;
  padding: 0;
}
#form .form_txt li {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  list-style: disc;
  font-size: 16px;
}
#form .group {
  text-align: left;
  padding: 0;
  height: auto;
  overflow: hidden;
}
#form .gLeft {
  display: inline-block;
  width: 100%;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding: 2% 0 2% 0;
  margin: 0 auto;
  vertical-align: middle;
  font-size: 16px;
}
#form .gRight {
  margin: 0 auto;
  padding: 2% 0 2% 0;
  width: 100%;
  line-height: 30px;
  font-size: 16px;
}
#form .typeBox {
  width: 70%;
  color: #555;
  background-color: #eeeeee;
  border: 1px solid #fff;
  display: block;
  font-size: 14px;
  line-height: 1.42857;
  padding: 6px 10px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  margin: 0;
  text-align: left;
  border-radius: none;
  -webkit-appearance: none;
}
#form .typeBox2 {
  width: 20%;
  color: #555;
  background-color: #eeeeee;
  border: 1px solid #fff;
  display: block;
  font-size: 14px;
  line-height: 1.42857;
  padding: 6px 10px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  margin: 0;
  text-align: left;
  border-radius: none;
  -webkit-appearance: none;
}
#form .form_box {
  color: rgb(50, 50, 50);
}
#form .confirm_btn {
  position: relative;
  width: 100%;
  height: auto;
  text-align: center;
  margin: 0;
  padding: 5% 0 10% 0;
  color: #fff;
  font-size: 16px;
}
#form .confirm_btn_confirm {
  width: 300px;
  height: 60px;
  display: block;
  margin: 0;
  position: relative;
  top: 100px;
  border: none;
  background: #de7341;
  color: #fff;
  font-weight: bold;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  font-size: 18px;
  border-radius: 0;
  -webkit-appearance: none;
}
#form .confirm_btn_confirm[type=submit] {
  width: 300px;
  height: 60px;
  display: block;
  margin: 0 auto;
  padding: 0;
  position: relative;
  top: 2%;
  border-radius: 25px;
  -webkit-appearance: none;
}
#form button[type=submit]:hover {
  cursor: pointer;
  background: #666;
  transition: 0.5s ease-in-out;
}
#form button[type=submit][disabled] {
  cursor: pointer;
  background: #fff;
  color: #666;
  transition: 0.5s ease-in-out;
  border: #de7341 1px solid;
}
#form .confirm_btn_confirm2 {
  width: 300px;
  height: 60px;
  display: block;
  margin: 0 auto;
  padding: 0;
  position: relative;
  top: 0;
  border: none;
  background: #de7341;
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  font-size: 18px;
  border-radius: 25px;
  -webkit-appearance: none;
}
#form .confirm_btn_confirm2:hover {
  cursor: pointer;
  background: #666;
  transition: 0.5s ease-in-out;
}
#form .confirm_btn_reset {
  width: 300px;
  height: 60px;
  display: block;
  margin: 0 auto 20px auto;
  padding: 0;
  position: relative;
  top: 0;
  border: #de7341 1px solid;
  background: #fff;
  color: #231c1c;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  font-size: 18px;
  border-radius: 25px;
  -webkit-appearance: none;
}
#form .confirm_btn_reset:hover {
  cursor: pointer;
  background: #666;
  color: #fff;
  transition: 0.5s ease-in-out;
  border: none;
}
#form .form_box .req {
  margin-right: 10px;
  margin-left: 5px;
  padding: 0.5% 1%;
  text-align: center;
  line-height: 20px;
  color: #fff;
  font-size: 14px;
  background: #de7341;
}
#form .form_box .no_req {
  margin-right: 10px;
  margin-left: 5px;
  padding: 0.5% 1%;
  text-align: center;
  line-height: 20px;
  color: #fff;
  font-size: 14px;
  background: #A5A5A5;
}
#form .form_box .radio {
  margin-left: 1%;
}
#form .form_box .typeBox {
  width: 100%;
  height: auto;
  padding: 10px 5px 10px 10px;
}
#form textarea::placeholder, #form textarea:-ms-input-placeholder, #form textarea::-ms-input-placeholder {
  color: #c7c6c6;
}
#form .bb {
  border-bottom: 1px solid #dfdfdf;
}
#form .bt {
  border-top: 1px solid #dfdfdf;
}
#form input[type=checkbox] {
  display: none;
}
#form .checkbox {
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  margin: 10px 0 0 0;
  padding: 12px;
  cursor: pointer;
}
#form .checkbox:hover:after {
  border-color: #2E81C7;
}
#form .checkbox:after {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  margin-top: -10px;
  width: 25px;
  height: 25px;
  border: 2px solid #bbb;
  content: "";
}
#form .checkbox:before {
  transition: opacity 0.2s linear;
  position: absolute;
  top: 55%;
  left: 9px;
  display: block;
  margin-top: -7px;
  width: 8px;
  height: 12px;
  border-right: 3px solid #2550A6;
  border-bottom: 3px solid #2550A6;
  content: "";
  opacity: 0;
  transform: rotate(45deg);
}
#form input[type=checkbox]:checked + .checkbox:before {
  opacity: 1;
}
#form span {
  color: #000000;
  font-size: 85%;
  padding-left: 1%;
}
#form .link {
  display: block;
  margin: 1% auto 3% auto;
  font-size: 14px;
  text-decoration: underline;
}
#form .link:hover {
  color: #2E81C7;
}

/* IE */
/* Edge */
/* IE */
/* Edge */
/* ----------------------------------------
 * プライバシーポリシー
 * ---------------------------------------- */
.pv_p {
  width: 100%;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/privacy/privacy_bg_01.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.pv_p .child {
  color: #fff;
  font-family: eb-garamond, serif;
  font-size: 90px;
  text-align: center; /* 横方向に中央揃え */
}

#privacy {
  width: 100%;
  background: #f1f5fa;
  max-width: 1200px;
  height: auto;
  margin: 0 auto;
  padding: 5% 0;
}
@media (max-width: 1024px) and (min-width: 768px) {
  #privacy {
    max-width: 900px;
  }
}
@media (max-width: 768px) {
  #privacy {
    max-width: 720px;
  }
}
#privacy .txt_box01 {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0;
  font-size: 1rem;
  line-height: 1em;
  text-align: left;
}
@media (max-width: 1024px) and (min-width: 768px) {
  #privacy .txt_box01 {
    margin: 0 1.2%;
  }
}
#privacy .txt_box02 {
  width: 100%;
  height: auto;
  margin: 2% auto;
  padding: 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-size: 2.2rem;
  line-height: 1.8em;
  text-align: center;
  font-weight: bold;
}
#privacy .txt_box02 span {
  font-size: 1.5rem;
  margin-right: 0.5%;
}
#privacy .txt_box02 a {
  text-decoration: none;
  color: #231c1c;
}
#privacy h3 {
  width: 100%;
  height: auto;
  margin: 0 auto 3% auto;
  padding: 1% 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.8em;
  color: #231c1c;
  text-align: left;
}
@media (max-width: 1024px) and (min-width: 768px) {
  #privacy h3 {
    margin: 0 1%;
  }
}
#privacy dl {
  width: 100%;
  padding: 3%;
}
#privacy dl dt {
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 1%;
}
#privacy dl .contact_box {
  color: #cc753e;
  font-size: 1.3rem;
  font-weight: bold;
  margin: 2% 0 1% 0;
}
#privacy dl dd {
  font-size: 1rem;
  margin-bottom: 1%;
}
#privacy dl dd ol {
  width: 100%;
  padding: 0 2%;
}

/*# sourceMappingURL=style.css.map */