.display_flex {
display: flex;
justify-content: center;
align-items: center;
}
.underline {
border-radius: 6px;
font-weight: bold;
background: linear-gradient(transparent 72%, #ace7d3 80%);
}
.fv img {
width: 100%;
max-width: 100%;
height: 100%;
vertical-align: middle;
font-style: italic;
background-repeat: no-repeat;
background-size: cover;
shape-margin: 0.75rem;
object-fit: cover;
}
.fv {
width: 100%;
height: 600px;
position: relative;
}
.fv_bg {
position: absolute;
width: 100%;
height: 600px;
}
.fv_annotation {
width: 444px;
position: absolute;
top: 10%;
left: 13%;
z-index: 2;
gap: 12px;
}
.fv_annotation li {
width: 140px;
height: 34px;
background: rgba(255, 255, 255, 0.7);
color: #0f6d22;
font-size: 16px;
font-weight: bold;
border-radius: 16px;
}
.fv_logo {
width: 640px;
position: absolute;
top: 11%;
left: 7%;
z-index: 2;
}
.fv_text {
width: 432px;
position: absolute;
top: 47%;
left: 14%;
z-index: 2;
}
.main-btns {
position: absolute;
bottom: 64px;
right: 4%;
z-index: 2;
}
.karuizawa_sp {
display: none;
}
@media screen and (min-width: 1500px) {
.fv,
.fv_bg {
height: 80vh;
}
.fv_logo {
top: 11%;
}
.fv_text {
top: 44%;
}
}
@media screen and (max-width: 768px) {
.karuizawa_pc {
display: none;
}
.karuizawa_sp {
display: block;
}
}
@media screen and (max-width: 480px) {
.fv,
.fv_bg {
height: 584px;
}
.fv_annotation {
width: 96%;
top: 19%;
left: 50%;
transform: translateX(-50%);
gap: 8px;
}
.fv_annotation li {
width: 112px;
height: 30px;
font-size: 13px;
}
.fv_logo {
width: 100%;
top: 23%;
left: 0;
}
.fv_text {
width: 72%;
top: 45%;
left: 50%;
transform: translateX(-50%);
}
.main-btns {
width: 100%;
bottom: 30%;
left: 50%;
right: 0;
transform: translate(-50%, -50%);
}
.main-btns a span {
font-size: 10px;
}
.main-btns a {
width: calc((100% / 2) - 12px);
font-size: 12px;
margin: 0 4px;
padding: 12px 0 8px;
}
.main-btns a.search_btn::before {
left: 12%;
width: 18px;
}
.main-btns a.search_btn::after {
right: 10px;
}
.main-btns a.contact_btn::before {
left: 16%;
top: 15px;
transform: translateX(-50%);
}
.main-btns a.contact_btn::after {
right: 18px;
top: 50%;
}
}
.karuizawa_salon .top_salon_list {
justify-content: center;
}
.karuizawa_salon_btn {
background: #f6f4f0;
}
#karuizawa_about {
padding-top: 30px;
position: relative;
padding-bottom: 190px;
}
#karuizawa h2 span {
color: #00c2c7;
font-size: 40px;
}
.karuizawa_about_content {
margin-top: 40px;
padding: 55px 35px 35px 0;
background-color: #fff;
position: relative;
width: 740px;
box-sizing: border-box;
line-height: 2;
}
.karuizawa_about_content .hane {
position: absolute;
left: -140px;
top: -20px;
z-index: 0;
}
.karuizawa_about_content p {
position: relative;
z-index: 1;
}
.karuizawa_about_ttl {
font-size: 18px;
font-weight: bold;
margin-bottom: 35px;
}
.karuizawa_about_txt {
font-size: 14px;
}
.karuizawa_about_img {
position: absolute;
bottom: 0;
right: 0;
height: 519px;
width: calc(50% + 340px);
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/about_image.jpg) no-repeat;
background-size: cover;
background-position: 0 -132px; z-index: -1;
}
@media screen and (min-width: 1460px) {
#karuizawa_about {
padding-bottom: 240px;
}
.karuizawa_about_img {
height: 600px;
background-position: 0px -224px;
}
}
#about {
padding: 80px 0 120px;
}
.about_box {
margin: 64px 20px 0 0;
display: flex;
flex-wrap: wrap;
align-items: center;
}
.about_box .image_wrap {
width: 50%;
height: 400px;
position: relative;
box-shadow: 16px 16px 0px rgb(0 0 0 / 72%);
}
.about_box .image_wrap img {
width: 100%;
height: 400px;
object-fit: cover;
}
.about_box .text_wrap {
width: 40%;
font-size: 18px;
line-height: 1.8;
margin-left: 48px;
}
.about_box h3 {
font-size: 26px;
font-weight: bold;
text-align: center;
padding-bottom: 12px;
}
.icons {
margin-top: 24px;
}
.icons .icon {
width: 110px;
height: 110px;
border-radius: 50%;
border: 1px solid #454545;
margin: 0 6px;
position: relative;
}
.icons .icon img {
width: 56px;
height: 56px;
object-fit: contain;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.icons .icon p {
width: 100%;
text-align: center;
position: absolute;
left: 50%;
bottom: -1px;
transform: translateX(-50%);
font-size: 10px;
background: #fff;
}
.icons .icon_resort img {
width: 64px;
height: 64px;
padding: 0 0 6px 4px;
}
#about .about_items {
max-width: 1180px;
display: flex;
justify-content: center;
margin: 96px auto 0;
}
#about .about_items li {
width: 300px;
font-size: 1.5vw;
margin: 0 8px;
padding: 24px;
border: 1px solid #454545;
border-radius: 6px;
box-shadow: 0 0 6px rgba(234, 215, 131, 0.8);
}
#about .about_items h3 {
font-weight: bold;
text-align: center;
font-size: clamp(17px, 2vw, 22px);
white-space: nowrap;
}
#about .about_items p {
font-size: 16px;
letter-spacing: 0.04em;
line-height: 1.6;
}
#about .about_items div {
width: 64%;
height: 2px;
margin: 16px auto;
border-radius: 4px;
background: linear-gradient(to right, #957500 0%, #ead783 100%);
}
#about .top_btn_wrap {
text-align: center;
margin: 80px auto 0;
position: relative;
}
#about .top_contact_btn {
display: inline-block;
width: 30%;
font-size: 2rem;
font-weight: 500;
cursor: pointer;
letter-spacing: 0.1em;
min-width: 240px;
border-radius: 8px;
padding: 1.2rem;
color: #fff;
overflow: hidden;
position: relative;
border: 1px solid #8f7500;
background: #8f7500;
background: -webkit-gradient(
linear,
left bottom,
left top,
color-stop(50%, #1b7e40),
to(#ead783)
);
background: -webkit-linear-gradient(bottom, #8f7500 50%, #ead783 100%);
background: linear-gradient(15deg, #8f7500 32%, #ead783 100%);
-webkit-box-shadow: inset 0 1px 1px rgb(255 255 255 / 60%),
0 5px 10px rgb(0 0 0 / 10%);
box-shadow: inset 0 1px 1px rgb(255 255 255 / 60%),
0 5px 10px rgb(0 0 0 / 10%);
}
#about .top_btn_wrap p {
background: #fff;
position: absolute;
top: -15px;
left: 50%;
transform: translateX(-50%);
z-index: 2;
padding: 3px 3rem;
border: 1px solid #454545;
border-radius: 16px;
font-size: 11px;
}
@media screen and (min-width: 1570px) {
#about .about_items li {
font-size: 1.2vw;
}
.about_box {
margin: 64px 40px 0 0;
}
.about_box .text_wrap {
width: 33%;
margin-left: 56px;
}
}
@media screen and (max-width: 768px) {
.about_box .image_wrap {
width: 80%;
height: 350px;
margin: 0 auto;
}
.about_box {
margin: 64px auto 0;
}
.about_box .image_wrap img {
height: 350px;
}
.about_box .text_wrap {
width: 80%;
margin: 56px auto 0;
}
.icons .icon {
width: 120px;
height: 120px;
}
.icons .icon img {
width: 64px;
height: 64px;
}
.icons .icon p {
font-size: 12px;
}
#about .about_items {
margin: 40px auto 0;
}
#about .about_items li {
font-size: 1.8vw;
margin: 0 6px;
padding: 24px 16px;
}
#about .top_contact_btn {
width: 52%;
}
}
@media screen and (max-width: 480px) {
#about {
padding: 56px 0 72px;
}
.about_box {
width: 98%;
margin: 32px auto;
}
.about_box .image_wrap {
width: 96%;
height: 224px;
box-shadow: 8px 10px 0 rgb(0 0 0 /72%);
}
.about_box .image_wrap img {
width: 100%;
height: 224px;
}
.about_box .text_wrap {
width: 100%;
font-size: 16px;
margin: 16px 0 0;
padding: 0 16px;
box-sizing: border-box;
}
.about_box h3 {
line-height: 1.4;
margin-top: 16px;
letter-spacing: 2px;
}
#about .about_items {
flex-wrap: wrap;
}
#about .about_items li {
width: 74%;
margin: 8px auto;
padding: 24px 16px;
}
#about .about_items h3 {
font-size: 18px;
}
#about .about_items p {
font-size: 14px;
}
#about .about_items div {
margin: 12px auto;
}
.icons .icon {
width: 78px;
height: 78px;
margin: 0 2px;
}
.icons .icon img {
width: 40px;
height: 40px;
}
.icons .icon_resort img {
width: 48px;
height: 48px;
}
.icons .icon p {
font-size: 10px;
line-height: 1.3;
bottom: -10px;
}
.icons .icon:first-of-type p {
bottom: -4px;
}
#about .top_contact_btn {
width: 76%;
}
#about .top_btn_wrap {
margin: 56px auto 0;
}
#about .top_btn_wrap p {
padding: 3px 16px;
}
.present_in.top .present-img {
padding: 10px 0px 0;
}
} .wrapper_in {
max-width: 1080px;
}
#minimal_nayami {
background-color: rgba(226, 246, 247, 1);
background-image: repeating-linear-gradient(
52deg,
transparent,
transparent 4px,
rgba(255, 255, 255, 1) 4px,
rgba(255, 255, 255, 1) 5px
);
}
.feature_wrap {
max-width: 1094px;
display: flex;
flex-wrap: wrap;
margin: 16px auto 40px;
}
.feature_wrap h3 {
font-size: 20px;
font-weight: 600;
text-align: center;
padding-top: 16px;
}
.feature_wrap li {
width: calc((100% / 3) - 16px);
margin: 0 8px;
background: #fff;
border-radius: 2px;
box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
}
.feature_image {
width: 100%;
height: 164px;
}
.feature_image.second img {
object-position: 0 -64px;
}
.feature_wrap li img {
width: 100%;
height: 164px;
object-fit: cover;
}
.feature_wrap li p {
line-height: 1.8;
padding: 12px 16px 24px;
}
.feature_text {
font-size: 28px;
text-align: center;
margin: 0;
}
.photo_btn_wrap {
margin: 0 auto;
text-align: center;
}
.photo_btn_wrap p {
font-size: 20px;
margin-bottom: 24px;
-webkit-animation: visible 1.5s ease infinite;
animation: visible 1.5s ease infinite;
}
@-webkit-keyframes visible {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@keyframes visible {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.photo_btn_wrap p::after,
.photo_btn_wrap p::before {
content: "";
display: inline-block;
width: 20px;
height: 2px;
background-color: #081059;
vertical-align: middle;
}
.photo_btn_wrap p::before {
transform: rotate(60deg);
margin-right: 8px;
}
.photo_btn_wrap p::after {
transform: rotate(-60deg);
margin-left: 8px;
}
.photo_contact_btn {
font-size: 2rem;
font-weight: 500;
cursor: pointer;
letter-spacing: 0.1em;
width: 88%;
min-width: 290px;
position: relative;
padding: 1.8rem 6rem;
color: #fff;
overflow: hidden;
position: relative;
border: 1px solid #8f7500;
border-radius: 40px;
background: #8f7500;
background: -webkit-gradient(
linear,
left bottom,
left top,
color-stop(50%, #1b7e40),
to(#ead783)
);
background: -webkit-linear-gradient(bottom, #8f7500 50%, #ead783 100%);
background: linear-gradient(15deg, #8f7500 32%, #ead783 100%); -webkit-box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.6),
0 5px 10px rgba(0, 0, 0, 0.1);
box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.6),
0 5px 10px rgba(0, 0, 0, 0.1);
}
.make_arrow::after {
content: "";
display: inline-block;
width: 8px;
height: 8px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
margin-bottom: 2px;
transform: rotate(45deg);
}
.menu_item .make_arrow::after {
border-top: 2px solid #8f7500;
border-right: 2px solid #8f7500;
}
#campaign {
padding: 80px 0;
background-size: auto auto;
background-color: rgba(234, 234, 234, 1);
background-image: repeating-linear-gradient(
52deg,
transparent,
transparent 4px,
rgba(255, 255, 255, 1) 4px,
rgba(255, 255, 255, 1) 5px
);
}
@media screen and (max-width: 480px) {
.feature_text {
font-size: 19px;
}
.feature_wrap li {
width: auto;
margin: 8px;
}
.feature_wrap h3 {
font-size: 18px;
}
.photo_btn_wrap p {
font-size: 15px;
}
.photo_btn_wrap p::after,
.photo_btn_wrap p::before {
width: 14px;
}
.photo_btn_wrap p::before {
margin-right: 4px;
}
.photo_btn_wrap p::after {
margin-left: 4px;
}
.photo_contact_btn {
padding: 1.4rem 2.8rem;
}
} #campaign img {
width: 100%;
height: 100%;
object-fit: contain;
}
#campaign {
padding: 72px 0 96px;
background-size: auto auto;
background-color: rgba(226, 246, 247, 1);
background-image: repeating-linear-gradient(
52deg,
transparent,
transparent 4px,
rgba(255, 255, 255, 1) 4px,
rgba(255, 255, 255, 1) 5px
);
text-align: center;
}
#campaign h2 span {
font-size: 40px;
}
#campaign .sub_title {
font-size: 24px;
margin-top: 32px;
}
#campaign h3 {
font-size: 34px;
font-weight: 600;
letter-spacing: 2px;
padding-top: 32px;
}
.campaign_contents_wrap {
display: flex;
width: 94%;
max-width: 896px;
margin: 0px auto 0;
}
.karuizawa_campaign_wrap {
width: 80%;
margin: 24px auto 0;
background: #fff;
padding: 24px;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
border-radius: 4px;
position: relative;
border: 5px solid;
border-image-slice: 1;
border-width: 3px; border-image-source: linear-gradient(
to left,
#d0993d,
#f6edde,
#b16b00,
#d0993d
);
}
.last_karuizawa_campaign_wrap {
width: 100%;
margin: 24px auto 0;
}
.last_campaign_wrap {
width: 80%;
margin: 24px auto 0;
background: #fff;
padding: 24px;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
border-radius: 4px;
position: relative;
border: 5px solid;
border-image-slice: 1;
border-width: 3px; border-image-source: linear-gradient(
to left,
#d0993d,
#f6edde,
#b16b00,
#d0993d
);
}
.step_wrap {
width: 104px;
margin: 16px 0 0 92px;
}
.step_wrap:not(:first-of-type) {
margin: 32px 0 0 92px;
}
.step_wrap.congratulations {
width: 240px;
margin-top: 16px;
}
.before_arrow {
height: auto;
width: 0px;
margin: 32px 12px 0px 0px;
border-left: 2px dashed #b49b62;
position: relative;
}
.before_arrow span {
position: absolute;
top: -18px;
left: -8px;
transform: rotate(134deg);
color: #b49b62;
}
.before_arrow::after {
width: 2px;
height: 14px;
border-right: 2px solid #b49b62;
transform: rotate(134deg);
}
.before_arrow::before,
.before_arrow::after {
position: absolute;
bottom: 0;
left: -8px;
margin: auto;
content: "";
vertical-align: middle;
}
.circle {
width: 80px;
height: 80px;
background: #fff;
border: 1px solid #d0993d;
border-radius: 50%;
position: absolute;
top: -32px;
left: -24px;
box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
}
.benefit {
width: 72px;
height: 72px;
line-height: 72px;
font-size: 13px;
font-weight: 600;
color: #fff;
background: #d0993d;
border-radius: 50%;
position: absolute;
top: 4px;
left: 4px;
transform: rotate(-10deg);
}
.benefit_title {
white-space: nowrap;
font-size: clamp(14px, 4.4vw, 22px);
font-weight: bold;
}
.benefit_text {
font-size: 20px;
margin-top: 8px;
}
.icon_wrap {
width: 148px;
height: 148px;
position: absolute;
}
.icon_wrap.icon_dress {
width: 172px;
height: auto;
top: 45px;
right: -99px;
}
.icon_wrap.icon_train {
width: 122px;
height: 72px;
left: -12px;
}
.icon_wrap.icon_dish {
top: 8px;
right: -32px;
width: 156px;
height: 156px;
}
.icon_wrap.flower {
bottom: -32px;
right: -48px;
}
.last_karuizawa_campaign_wrap ul {
width: 74%;
margin: 8px auto 0;
text-align: left;
}
.benefit_conditions {
font-size: 30px;
letter-spacing: 2px;
}
.very_small {
font-size: 0.6em;
}
.small {
font-size: 0.8em;
}
.contents strong {
font-size: 56px;
letter-spacing: 2px;
color: #8a7500;
}
.karuizawa_annotation {
font-size: 10px;
}
.annotation_wrap {
width: 88%;
margin: 10px auto 0;
text-align: left;
}
.annotation {
font-size: 12px;
color: #333333;
margin-left: 32px;
padding: 16px 16px;
}
.annotation4 {
font-size: 12px;
color: #333;
}
@media screen and (max-width: 768px) {
.karuizawa_campaign_wrap {
width: 100%;
}
.karuizawa_campaign_wrap {
padding: 20px;
box-sizing: border-box;
}
.last_campaign_wrap {
width: 92%;
}
.step_wrap {
width: 96px;
margin: 16px 0 0 0px;
}
.step_wrap:not(:first-of-type) {
margin: 32px 0 0 0px;
}
.before_arrow {
display: none;
}
.annotation {
font-size: 10px;
margin: 2px 4px 0 0;
padding: 0;
}
}
@media screen and (max-width: 480px) {
#campaign {
padding: 40px 0 56px;
}
#campaign h3 {
font-size: 28px;
}
#campaign .sub_title {
font-size: 18px;
}
.last_campaign_wrap {
box-sizing: border-box;
width: 100%;
}
.last_karuizawa_campaign_wrap ul {
width: 92%;
}
.karuizawa_campaign_wrap {
padding: 18px 11px;
}
.circle {
width: 64px;
height: 64px;
top: -40px;
left: -24px;
}
.benefit {
width: 56px;
height: 56px;
line-height: 56px;
font-size: 10px;
}
.benefit_title {
font-size: clamp(12px, 4.2vw, 22px);
}
.benefit_text {
font-size: 13px;
letter-spacing: 0.04em;
}
.icon_wrap.icon_dress {
width: 98px;
top: 190px;
right: -34px;
}
.icon_wrap.icon_train {
width: 112px;
bottom: -31px;
left: inherit;
right: -20px;
}
.icon_wrap.icon_dish {
width: 80px;
top: inherit;
bottom: -24px;
right: -32px;
}
.icon_wrap.flower {
width: 108px;
bottom: -56px;
right: -40px;
}
.annotation_wrap {
width: 92%;
}
.benefit_conditions {
font-size: 16px;
padding-top: 8px;
line-height: 1.3;
letter-spacing: initial;
}
.step_wrap.congratulations {
margin-top: 28px;
}
.contents strong {
font-size: 48px;
}
}
@media screen and (max-width: 370px) {
.campaign_contents_wrap {
width: 96%;
}
.benefit_text {
font-size: 13px;
}
.last_karuizawa_campaign_wrap ul {
width: 96%;
}
} #home_salon {
padding: 72px 0;
text-align: center;
}
.salon_image_wrap {
width: 860px;
height: 480px;
margin: 32px auto 40px;
}
#home_salon .top_salon_mark span {
font-size: 20px;
padding: 10px 32px;
}
#home_salon .top_salon_mark {
margin: 0 0 40px 0;
}
.salon_image_wrap img {
width: 100%;
height: 480px;
object-fit: cover;
}
.salon_feature {
display: flex;
justify-content: space-between;
width: 100%;
max-width: 614px;
margin: 40px auto;
}
.salon_feature li {
width: 140px;
height: 140px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
border: 3px dotted #454545;
border-radius: 50%;
}
.salon_wrap {
width: 100%;
flex-wrap: wrap;
gap: 16px;
}
.salon_name {
font-size: 24px;
font-weight: bold;
color: #8f7500;
margin: 16px auto;
}
.shinjuku_salon {
width: 480px;
height: 260px;
margin: 0 auto;
position: relative;
}
.shinjuku_salon img {
width: 100%;
height: 260px;
object-fit: cover;
}
.small_salon_item {
width: calc((100% / 3) - 40px);
margin-top: 32px;
}
.small_salon {
width: 98%;
height: 160px;
margin: 0 auto;
position: relative;
}
.small_salon img {
width: 100%;
height: 160px;
object-fit: cover;
}
.small_salon_item .salon_txt {
width: 80%;
margin: 0 auto;
}
.small_salon_links {
display: block;
width: 88%;
margin: 0 auto;
}
.small_salon_links li {
margin: 0 auto;
}
.small_salon_links li a {
display: block;
border: 1px solid #8f7500;
text-align: center;
}
.small_salon_links li:first-child a.btn:after {
color: #8f7500;
}
.small_salon_links li:first-child a {
color: #8f7500;
background: #fff;
}
.small_salon_links .btn {
margin: 12px 0;
}
.salon_annotation {
font-size: 10px;
text-align: left;
line-height: 3em;
}
.small_salon_item .salon_annotation {
margin-left: 24px;
}
@media screen and (max-width: 768px) {
.salon_image_wrap,
.salon_image_wrap img {
width: 100%;
height: 386px;
}
.feature li {
width: 112px;
height: 112px;
}
}
@media screen and (max-width: 480px) {
#home_salon {
padding: 56px 0 40px;
}
.top_salon_ttl {
font-size: 16px;
margin: 24px 0;
}
.feature {
margin: 32px auto;
}
.feature li {
font-size: 10px;
width: 78px;
height: 78px;
border: 2px dotted #454545;
}
.salon_image_wrap,
.salon_image_wrap img {
width: 100%;
height: 186px;
}
.shinjuku_salon,
.shinjuku_salon img {
width: 100%;
height: 216px;
}
.salon_txt {
font-size: 12px;
min-height: 5em;
}
.salon_feature li {
width: 100px;
height: 84px;
border: 2px dotted #454545;
font-size: 12px;
}
.salon_links li {
width: 158px;
}
.second_salon_wrap {
display: block;
}
.small_salon_item {
width: 100%;
}
.small_salon_item .salon_txt {
width: 100%;
}
.small_salon_item .salon_annotation {
margin-left: 0;
}
}   #karuizawa_reason {
padding: 100px 0;
}
.karuizawa_reason_one .wrapper_in {
justify-content: space-between;
}
.karuizawa_reason_img {
width: 320px;
height: 320px;
}
.karuizawa_reason_img img {
width: 100%;
height: 100%;
object-fit: cover;
}
.karuizawa_reason_content {
width: 700px;
}
.karuizawa_reason_one {
margin-top: -8px;
gap: 16px;
position: relative;
}
.karuizawa_reason_one:nth-child(even) {
flex-direction: row-reverse;
}
.karuizawa_reason_txt {
font-size: 16px;
letter-spacing: 0.06em;
line-height: 1.8;
padding-left: 76px;
}
.karuizawa_reason_ttl {
font-size: clamp(20px, 4vw, 24px);
white-space: nowrap;
font-weight: bold;
margin-top: 16px;
}
.karuizawa_reason_in {
margin-top: 80px;
counter-reset: number 0;
}
.karuizawa_reason_ttl span {
font-size: 72px;
color: #00c2c7;
font-weight: normal;
font-family: "Quilline";
margin-right: 10px;
}
.karuizawa_reason_ttl span::before {
counter-increment: number;
content: counter(number, decimal-leading-zero);
}
.karuizawa_reason_one:before {
content: "";
width: calc(50% + 390px);
height: 10px;
position: absolute;
top: 70px;
background: rgba(0, 194, 199, 0.1);
z-index: -1;
}
.karuizawa_reason_one:nth-child(2n-1):before {
left: 0;
}
.karuizawa_reason_one:nth-child(2n):before {
right: 0;
}
@media screen and (max-width: 736px) {
.karuizawa_reason_one {
margin-top: 50px;
}
.karuizawa_reason_ttl span {
font-size: 30px;
display: block;
line-height: 1;
}
.karuizawa_reason_ttl {
font-size: 18px;
margin-left: 4%;
margin-bottom: 20px;
}
.karuizawa_reason_txt {
font-size: 14px;
padding-left: 0;
}
.karuizawa_reason_img {
width: 45%;
position: relative;
}
.karuizawa_reason_content {
width: 50%;
}
.karuizawa_reason_one:before {
content: none;
}
}
@media screen and (max-width: 480px) {
#karuizawa_reason {
padding: 64px 0;
}
.karuizawa_reason_content {
width: 86%;
}
.karuizawa_reason_one:nth-child(even) {
flex-wrap: wrap;
flex-direction: column-reverse;
}
.karuizawa_reason_one:nth-child(odd) {
flex-wrap: wrap;
flex-direction: column-reverse;
}
.karuizawa_reason_one {
gap: 0;
margin-top: 24px;
}
.karuizawa_reason_ttl {
margin-left: 0%;
}
.karuizawa_reason_img {
width: 90%;
height: auto;
position: relative;
}
}
.karuizawa_style_btn .btn {
background-color: #00c2c7;
}
#top_column.karuizawa_column {
background: rgba(0, 194, 199, 0.3);
}
#top_column.karuizawa_column h2:before {
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/bg_column_l.svg) no-repeat;
background-size: contain;
background-position: center;
}
#top_column.karuizawa_column h2:after {
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/bg_column_r.svg) no-repeat;
background-size: contain;
background-position: center;
}
.karuizawa_column #tabs li a {
background-color: #00c2c7;
}
.karuizawa_column #tabs li a.inactive {
background-color: #fff;
}
#karuizawa_how {
background: rgba(0, 194, 199, 0.1);
padding: 80px 0;
}
.karuizawa_how_txt {
text-align: center;
font-size: 18px;
margin: 30px 0;
}
.karuizawa_how_header {
display: flex;
justify-content: space-between;
}
.karuizawa_how_header_one {
width: 468px;
height: 178px;
position: relative;
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/day1.png) no-repeat; background-size: cover;
background-position: center;
}
.karuizawa_how_header_one:nth-child(2) {
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/day2.png) no-repeat;
background-size: cover;
background-position: center;
}
.karuizawa_how_header_ttl {
display: inline-block;
position: absolute;
left: 0;
top: 0;
font-size: 14px;
color: #fff;
background-color: #00c2c7;
padding: 0 15px 3px;
}
.karuizawa_how_header_one:nth-child(2) .karuizawa_how_header_ttl {
background-color: #458dff;
}
.karuizawa_how_header_ttl span {
font-size: 18px;
}
.karuizawa_how_header_txt {
font-size: 22px;
color: #fff;
font-weight: bold;
text-shadow: 0 0 3px rgba(0, 0, 0, 0.6);
}
.karuizawa_how_content {
margin-top: 40px;
display: flex;
justify-content: space-between;
}
.karuizawa_how_content_one {
display: flex;
margin-bottom: 15px;
}
.karuizawa_how_content_in {
width: 486px;
}
.karuizawa_how_content_one {
display: flex;
justify-content: flex-end;
position: relative;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one {
justify-content: flex-start;
}
.karuizawa_how_content_one img {
position: absolute;
right: -50px;
top: -20px;
z-index: 1;
}
.karuizawa_how_content_in:first-child .karuizawa_how_content_one img {
left: -50px;
right: auto;
}
.karuizawa_how_content_one span {
font-family: "renner";
color: #00c2c7;
margin-top: 10px;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one span {
color: #458dff;
}
.karuizawa_how_content_one p {
display: inline-block;
background-color: #fff;
padding: 10px 15px;
margin-right: 30px;
border-bottom: 2px solid #00c2c7;
position: relative;
}
.karuizawa_how_content_one p:after {
content: "";
position: absolute;
right: -20px;
top: 20px;
width: 20px;
height: 1px;
background-color: #00c2c7;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one p {
border-color: #458dff;
margin-right: 0;
margin-left: 30px;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one p:after {
right: auto;
left: -20px;
background-color: #458dff;
}
.karuizawa_how_content > div > img {
margin-top: 10px;
}
.time1 {
margin-top: -40px;
}
.time2 {
margin-top: -47px;
}
.time3 {
margin-top: -43px;
}
.time4 {
margin-bottom: 10px;
} #pickup {
padding-bottom: 64px; background-color: rgba(234, 234, 234, 1);
background-image: repeating-linear-gradient(
52deg,
transparent,
transparent 4px,
rgba(255, 255, 255, 1) 4px,
rgba(255, 255, 255, 1) 5px
);
}
#pickup .wrapper h2 {
margin-bottom: 32px;
}
.karuizawa_style_btn {
margin-top: 48px;
}
@media screen and (max-width: 736px) {
#karuizawa_kv {
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/main_sp.jpg) no-repeat;
background-size: cover;
background-position: center;
}
.karuizawa_about_content {
width: 100%;
padding: 40px 0;
}
.karuizawa_about_ttl {
font-size: 16px;
margin-bottom: 20px;
}
.karuizawa_about_img {
position: initial;
width: 100%;
height: auto;
background: none;
margin-bottom: 16px;
}
.karuizawa_about_img img {
width: 100%;
height: 100%;
object-fit: cover;
}
#karuizawa_about {
padding-bottom: 10px;
}
#karuizawa_how {
padding: 60px 0;
}
.karuizawa_how_txt {
font-size: 15px;
}
.karuizawa_how_header_one {
width: 42vw;
height: 26vw;
}
.karuizawa_how_header_txt {
font-size: 14px;
}
.karuizawa_how_header_ttl {
font-size: 10px;
left: 50%;
margin-left: -29px;
}
.karuizawa_how_header_ttl span {
font-size: 13px;
}
.karuizawa_how_content_one span {
font-size: 12px;
}
.karuizawa_how_content_one p {
margin-right: 15px;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one p {
margin-left: 15px;
}
.karuizawa_how_content_one p:after {
width: 10px;
right: -10px;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one p:after {
left: -10px;
}
.karuizawa_how_content_one p {
font-size: 12px;
padding: 10px 5px;
}
.karuizawa_how_content_one {
margin-bottom: 10px;
}
.karuizawa_how_content_one img {
width: 30px;
right: -20px;
}
.karuizawa_how_content_in:first-child .karuizawa_how_content_one img {
left: -20px;
}
.karuizawa_how_content_in {
width: 50%;
}
.karuizawa_how_content > div > img {
display: none;
}
.karuizawa_how_content_in:first-child {
border-right: 1px dotted #d4c493;
position: relative;
}
.karuizawa_how_content_in:first-child:before {
position: absolute;
content: "";
width: 2px;
height: 20px;
background: rgb(229, 249, 249);
right: -1px;
top: 0;
}
.karuizawa_how_content_in:first-child:after {
position: absolute;
content: "";
width: 2px;
height: 40px;
background: rgb(229, 249, 249);
right: -1px;
bottom: 0;
}
.karuizawa_how_content_in:first-child .karuizawa_how_content_one {
padding-right: 4%;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one {
padding-left: 4%;
}
.karuizawa_how_content_in:first-child .karuizawa_how_content_one:after {
position: absolute;
content: "";
width: 8%;
height: 4vw;
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/time-circle.png) no-repeat;
background-position: center;
background-size: contain;
right: -4%;
top: 12px;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one:after {
position: absolute;
content: "";
width: 8%;
height: 4vw;
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/time-circle.png) no-repeat;
background-position: center;
background-size: contain;
left: -4%;
top: 12px;
}
.karuizawa_salon .top_salon_list li {
width: 48%;
margin: 1%;
}
.karuizawa_how_content_in:last-child .karuizawa_how_content_one.time5:after {
content: none;
}
}   #service_link h2 span {
font-size: clamp(32px, 3vw, 40px);
white-space: nowrap;
}
#service_link {
padding: 64px 0;
background: #effcff;
background-size: auto auto;
background-color: rgba(234, 234, 234, 1);
background-image: repeating-linear-gradient(
52deg,
transparent,
transparent 4px,
rgba(255, 255, 255, 1) 4px,
rgba(255, 255, 255, 1) 5px
);
}
#service_link ul {
flex-wrap: wrap;
max-width: 1200px;
width: 96%;
margin: 0 auto;
gap: 16px;
align-items: start;
}
#service_link li:nth-of-type(3),
#service_link li:nth-of-type(4) {
margin-top: 40px;
}
#service_link li {
width: calc((100% / 2) - 8px);
}
#service_link h2 {
margin-bottom: 32px;
}  .service_link_img {
width: 100%;
height: 280px;
position: relative;
}
.service_link_img img {
width: 100%;
height: 280px;
object-fit: cover;
}
.style_img::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: calc(100% - 20px);
height: calc(100% - 20px);
border-image-source: repeating-linear-gradient(
45deg,
#8f7500,
#8f7500 3px,
rgba(0 0 0 / 0) 0,
rgba(0 0 0 / 0) 8px
);
border-image-slice: 20;
border-image-repeat: round;
border-style: solid;
border-width: 12px;
}
@media screen and (max-width: 736px) {
.service_link_img,
.service_link_img img {
height: 188px;
}
} .karuizawa_report_txt {
font-size: clamp(14px, 1.8vw, 17px); margin: 40px 0 48px;
text-align: center;
}
#karuizawa_report_slider {
width: 90%;
box-sizing: border-box;
margin: 0 auto;
border: 14px solid #e2f4f5;
padding: 40px 48px 32px;
background: #fff;
position: relative;
}
#karuizawa_report_slider:before {
content: "";
position: absolute;
width: 243px;
height: 88px;
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/slider_ttl.png) no-repeat;
background-position: center;
background-size: contain;
top: -30px;
left: -70px;
z-index: 10;
}
.karuizawa_report_slider {
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/slider_back.png) no-repeat;
background-size: contain;
background-position: center;
}
.karuizawa_report_slider_img {
margin-bottom: 30px;
height: 226px;
}
.karuizawa_report_slider_img img {
width: 100%;
height: 226px;
object-fit: cover;
}
#karuizawa_report_slider .slick-prev,
#karuizawa_gallery_slider .slick-prev {
width: 40px;
height: 40px;
top: 50%;
margin-top: -20px;
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/prev.png) no-repeat;
background-position: center;
background-size: contain;
left: 0;
}
#karuizawa_report_slider .slick-next,
#karuizawa_gallery_slider .slick-next {
width: 40px;
height: 40px;
top: 50%;
margin-top: -20px;
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/next.png) no-repeat;
background-position: center;
background-size: contain;
right: 0;
}
#karuizawa_report .karuizawa_style_btn {
margin-top: 25px;
}
.karuizawa_report_slider_txt {
font-size: 14px;
line-height: 1.8;
letter-spacing: 0.04em;
}
@media screen and (max-width: 736px) {
#karuizawa_report_slider {
padding: 10px;
border-width: 5px;
width: 100%;
}
.karuizawa_report_txt {
font-size: 15px;
}
#karuizawa_report_slider:before {
width: 140px;
top: -55px;
left: -10px;
}
#karuizawa_report { }
} .gallery_content {
width: 96%;
max-width: 880px;
height: 420px;
margin: 40px auto;
position: relative;
}
.gallery_content .ribbon_block {
position: relative;
}
.gallery_content .ribbon_wrap {
position: absolute;
top: -6px;
right: -6px;
z-index: 2;
overflow: hidden;
width: 108px;
height: 108px;
}
#karuizawa_gallery_slider span {
display: block;
}
.gallery_content .ribbon_wrap .ribbon {
font-size: 1em;
line-height: 1.2em;
position: relative;
top: 26px;
left: -4px;
width: 150px;
padding: 7px 0;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
text-align: center;
letter-spacing: 0.5px;
color: #333333;
color: #ffffff;
border: 1px dashed #ffffff;
box-shadow: 0px 0px 0px 3px #f48fb1;
background-color: #f48fb1;
}
.gallery_content .ribbon_wrap .ribbon:before,
.gallery_content .ribbon_wrap .ribbon:after {
position: absolute;
bottom: -6px;
content: "";
border-width: 4px 4px 0 4px;
border-style: solid;
border-color: #ec407a transparent transparent transparent;
}
.gallery_content .ribbon_wrap .ribbon:before {
left: -4px;
}
.gallery_content .ribbon_wrap .ribbon:after {
right: 3px;
}
.gallery_content .gallery_image {
display: block;
width: 95%;
height: 374px;
border: 10px solid #fff;
box-shadow: 0 0 4px #999;
overflow: hidden;
margin-bottom: 16px;
}
.gallery_content a img {
width: 100%;
height: 400px;
object-fit: cover;
}
.gallery_content span {
font-size: 16px;
text-align: center;
}
.gallery_content {
background: url(//www.weddingtable.jp/wordpress/wp-content/themes/wedding_table_theme/img/karuizawa/slider_back.png) no-repeat;
background-size: contain;
background-position: center;
}
#karuizawa_gallery_slider {
width: 90%;
box-sizing: border-box;
margin: 0 auto;
border: 14px solid #e2f4f5;
padding: 40px 56px 32px;
background: #fff;
position: relative;
}
#karuizawa_gallery_slider .slick-track {
top: 4px;
}
@media screen and (max-width: 736px) {
#karuizawa_gallery_slider {
width: 100%;
border: 6px solid #e2f4f5;
padding: 34px 40px;
}
.gallery_content .gallery_image {
width: 92%;
}
}
@media screen and (max-width: 480px) {
#service_link {
padding: 24px 0;
}
#service_link h2 {
margin-bottom: 24px;
}
#service_link ul {
display: block;
margin: 0 auto;
width: 90%;
}
#service_link li {
width: 100%;
margin: 32px 0;
}
#minimal_flow .slick-next,
#minimal_flow .slick-prev {
top: 50%;
transform: translateY(-50%);
}
.gallery_content {
width: 100%;
height: 420px;
margin: 24px auto;
}
.karuizawa_report_txt {
margin: 24px 0;
}
#service_link li:nth-of-type(4) {
margin-top: 134px;
}
}