@charset "utf-8";
/* CSS Document */

/*contactbnr*/
.contact_banner {margin-top: 150px;}
.contact_banner iframe, .contact_banner object, .contact_banner embed {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: all 0.7s ease;
  -moz-transition: all 0.7s ease;
  -o-transition: all 0.7s ease;
  transition: all  0.7s ease;
margin: auto;
width: 100%;
height: 350px;
border: 2px solid #000;
box-sizing: border-box;
position: relative;
z-index: 10;
}
.contact_banner iframe:hover,
.contact_banner object:hover,
.contact_banner embed:hover {
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  filter: grayscale(0%);
}
.con_icon01 {position: absolute; top: 200px; left: -500px;}
.con_icon02 {position: absolute; top: -120px; right: -540px;}

h1,h2,h3,h4,h5 {font-weight: bold;}

/*concept*/
#concept .box01 h2 {font-size: 40px; position: relative; margin: 70px auto 70px 140px;}
#concept .box01 h2::before {content: ''; background-color: #000; width: 100px; height: 3px; left: -140px; top: 0; bottom: 0; margin: auto; position: absolute;}
#concept .box01 h3 {font-size: 35px; display: inline; line-height: 1.5;}
#concept .box01 h3 span {background-color: #1e1e1e;}
#concept .box01 p {font-size: 16px; line-height: 2; margin: 70px auto;}
#concept .box01 .icon01 {position: absolute; right: 0; top: 50px;}
#concept .box01 .icon02 {position: absolute; left: 0; top: 330px;}
#concept .box01 li:nth-child(2) {margin: 0 65px;}
#concept .box01 .big {position: relative; margin: 60px auto 40px;}
#concept .box01 .big::before,#concept .box01 .big::after {content: ''; flex-grow: 1; height: 2px; background-color: #000; display: block;}
#concept .box01 .big::before {margin-right: 40px;}
#concept .box01 .big::after {margin-left: 40px;}
#concept .box01 .big p {font-size: 30px; line-height: 1.3; margin: 0;}
#concept .box02 {padding-top: 150px;}
#concept .box02 h2 {font-size: 40px; position: relative;}
#concept .box02 h2::before {content: ''; background: url("img/concept/box02_icon01.png")no-repeat; width: 205px; height: 69px; top: -80px; left: 50px; position: absolute;}
#concept .box02 h2::after {content: ''; background: url("img/concept/box02_h2_icon.png")no-repeat; bottom: -16px; left: 0; right: 0; width: 867px; height: 8px; position: absolute; margin: auto;}
#concept .box02 .con01 h3 {font-size: 30px; line-height: 1.3; position: relative; margin-top: 80px;}
#concept .box02 .con01 h3 span {font-size: 50px; background-color: #000;}
#concept .box02 .con01 h3::after {content: ''; background: url("img/concept/box02_icon02.png")no-repeat; width: 107px; height: 123px; top: -30px; right: 150px; position: absolute;}
#concept .box02 .con01 .inner {font-size: 16px; margin-top: 50px;}
#concept .box02 .con01 .inner img {margin-right: 50px;}
#concept .box02 .con01 .inner p {box-sizing: border-box; border-top: 1px solid #000; border-bottom: 1px solid #000; position: relative; padding: 50px 0; line-height: 2.5;}
#concept .box02 .con01 .inner p::before,#concept .box02 .con01 .inner p::after {content: ''; position: absolute; background-color: #000; width: 100%; height: 3px;}
#concept .box02 .con01 .inner p::before {top: -8px; left: 0;}
#concept .box02 .con01 .inner p::after {bottom: -8px; left: 0;}
#concept .box02 .point {background: url("img/concept/box02_point_bg.jpg")top left repeat; font-size: 28px; line-height: 1.4; position: relative; margin-top: 50px;}
#concept .box02 .point p {margin-left: 40px;}
#concept .box02 .point .icon {position: absolute; right: 20px; top: -20px;}
#concept .box02 .big {font-size: 40px; position: relative; margin: 70px auto 0 140px; line-height: 1;}
#concept .box02 .big::before {content: ''; background-color: #000; width: 100px; height: 3px; left: -140px; top: 0; bottom: 0; margin: auto; position: absolute;}
#concept .box02 .pink_text {font-size: 50px; background-color: #ffa3c4; position: absolute; top: 20px; left: 0;}
#concept .box02 .con02 {margin-top: 70px;}
#concept .box02 .con02 .inner {margin-top: -80px; font-size: 16px;}
#concept .box02 h3 {font-size: 30px; line-height: 1.5; margin-bottom: 40px;}
#concept .box02 h3 span {background-color: #000;}
#concept .box02 .text_box {margin-right: 50px; position: relative;}
#concept .box02 .text_icon {position: absolute; right: 50px; top: 0;}n
#concept .box02 .con03 .pink_text {left: inherit; right: 0;}
#concept .box02 .con03 .text_box {margin-right: inherit; margin-left: 50px;}
#concept .box02 .con03 .img {margin-left: auto;}
#concept .box03 { margin-top: 70px;}
#concept .box03 h2 {font-size: 50px; line-height: 1; background: url("img/concept/box03_bg02.jpg")top left repeat; padding: 20px;}
#concept .box03 .img {margin: 40px auto 0;}
#concept .box03 p {font-size: 16px; margin: 20px 40px 0;}

/*contact*/
#contact .tel_area {box-sizing: border-box; border: 1px solid #000; padding: 40px 0; font-size: 30px; margin: 70px auto; line-height: 1;}
#contact .tel {font-size: 50px; margin-top: 10px;}
#contact .tel span {font-size: 70px;}
#contact .tel_icon01 {position: absolute; left: -100px; top: -75px;}
#contact .tel_icon02 {position: absolute; right: -90px; bottom: -40px;}
#contact ul {font-size: 16px; line-height: 1.5;}
#contact table {width: 1000px; box-sizing: border-box; border: 2px solid #d2d2d2; border-left: none; border-right: none; margin: 40px auto;}
#contact table th,#contact table td {padding: 20px; box-sizing: border-box; border-bottom: 2px solid #d2d2d2; font-size: 20px;}
#contact table th{font-weight: bold; vertical-align: middle; width: 320px;}
#contact table input,#contact table textarea {width: 100%; box-sizing: border-box; padding: 5px 10px; font-size: 20px; font-weight: bold; border: 2px solid #d2d2d2;}
#contact table textarea {font: inherit;}
.mwform-radio-field input,.mwform-checkbox-field input {width: auto!important; padding: inherit!important;}
.mwform-checkbox-field label {font-weight: bold!important;}
.mwform-radio-field-text {font-weight: bold;}
#contact table .tel_area {width: auto;}
/*確認画面へ進むボタン用*/
.mw_wp_form_input .btn input:hover { opacity: 0.7;}
.mw_wp_form_input .btn input{
    font-size: 18px;
    width: 350px;
    padding: 16px 0;
    line-height: 1;
	font-weight: bold;
	color: #fff;
	background-color: #ffa3c4;
	box-sizing: border-box;
	border: none;
	border-radius: 20px;
}
#contact .thanks {margin-bottom: 40px;}
 
/*blog*/
#blog .blog_area {font-size: 18px;}
#blog .blog_item {box-sizing: border-box; border-bottom: 1px solid #000; padding-bottom: 20px; margin-bottom: 20px; line-height: 1; font-size: 16px;}
#blog .blog_item:nth-last-child(1) {margin-bottom: 0;}
#blog .tag {background-color: #ffa3c4; width: 50px; height: 18px; margin: 0 15px;}
#blog_single .time {line-height: 1;}
#blog_single h2 {font-size: 18px; margin: 16px 0 20px;}
#blog_single .box01 {box-sizing: border-box; border: 5px solid #FFA3C4; background-color: #fff; margin-bottom: 40px; padding: 40px; border-radius: 20px; line-height: 2;}

/*lineup*/
#lineup .item {width: 380px; margin-right: 30px;}
#lineup .item:nth-child(3n) {margin-right: 0;}
#lineup .item:nth-child(n + 4) {margin-top: 30px;}
#lineup .item img {width: 100%; height: 289px; object-fit: cover;}
#lineup .text_area {padding: 20px 20px 0; font-size: 16px; line-height: 1;}
#lineup h2 {font-size: 20px; margin-bottom: 10px;}
#lineup_single .slider-container, #lineup_single .slider-nav-container {
  display: none;
  position: relative;
}
#lineup_single .slider-container.initialized, #lineup_single .slider-nav-container.initialized {
  display: block;
}
#lineup_single .slider-nav-container {
  background-color: #f0f0f0; padding: 10px; margin: 20px auto;
}
#lineup_single .slider {
  overflow: hidden;
}
#lineup_single .slider-arrow {
  position: absolute;
  top: 50%;
  height: 36px;
  margin-top: -18px;  /* 高さの半分だけネガティブマージン */
  color: #aaa;
  line-height: 36px;
  font-size: 28px;
  cursor: pointer;
  z-index: 10;  /* 重要 */
}
#lineup_single .slider-prev {
  left: 0;
}
#lineup_single .slider-next {
  right: 0;
}
#lineup_single .slick-slide {
  outline: 0; margin: 0 5px;
}
#lineup_single .slider .slick-slide > img, #lineup_single .slider-nav .slick-slide > img {
  display: block;
  width: 100%;
  height: auto;
}
#lineup_single .slider-container {width: 850px; margin: auto;}

