/* Scss Document */ //hoverアニメーションを使いたい場合に使用 //呼び出し方法(cssに指定) → @include ani; @mixin cover { width: 100%; height: 100%; object-fit: cover; } //display:flex;を使用した場合等に使用(widthが30%から70%まで)画面幅が740pxで100%に変わる //呼び出し方法(htmlに指定) → .flex_30 ~ .flex_70 @for $i from 30 through 70 { .flex_#{$i} { width: 1% * $i; } } //縮めた際の最小サイズ :root { --min-size: 100px; --clamp-vw: 18vw; // 通常の preferred 値 } @media (max-width: 1024px) { :root { --min-size: 80px; --clamp-vw: 10vw; // スマホで適度に小さくする } } $p: 100; @while $p < 310{ .padding#{$p}{ padding-top: clamp(var(--min-size),var(--clamp-vw), #{$p}px); padding-bottom: clamp(var(--min-size),var(--clamp-vw), #{$p}px); } $p: $p + 10; } $m: 100; @while $m < 310{ .margin#{$m}{ margin-top: clamp(var(--min-size),var(--clamp-vw), #{$m}px); margin-bottom: clamp(var(--min-size),var(--clamp-vw), #{$m}px); } $m: $m + 10; } $pt: 110; @while $pt < 310{ .pt-#{$pt}{ padding-top: clamp(var(--min-size),var(--clamp-vw), #{$pt}px); } $pt: $pt + 10; } $pb: 110; @while $pb < 310{ .pb-#{$pb}{ padding-bottom: clamp(var(--min-size),var(--clamp-vw), #{$pb}px); } $pb: $pb + 10; } $mt: 110; @while $mt < 310{ .mt-#{$mt}{ margin-top: clamp(var(--min-size),var(--clamp-vw), #{$mt}px); } $mt: $mt + 10; } $mb: 110; @while $mb < 310{ .mb-#{$mb}{ margin-bottom: clamp(var(--min-size),var(--clamp-vw), #{$mb}px); } $mb: $mb + 10; } a, a:hover, a:focus, a:active, a:visited, a:focus-visible { text-decoration: none; } /**タイトルの動き**/ .titleMove { visibility: hidden; .char { display: inline-block; opacity: 0; transform: translateY(20px); clip-path: inset(100% 0 0 0); } .charStart { animation: clipFadeIn 1.2s cubic-bezier(.17,.74,.3,.77) forwards; } } @keyframes clipFadeIn { to { transform: translateY(0); opacity: 1; clip-path: inset(0% 0 0 0); } } /**テキスト動き**/ .textMove { visibility: hidden; .char_text { display: inline-block; opacity: 0; transform: translateY(5px); filter: blur(10px); } .charStart_text { animation: clipFadeInText 0.8s cubic-bezier(.17,.74,.3,.77) forwards; } } @keyframes clipFadeInText { to { transform: translateY(0); opacity: 1; filter: blur(0); } } /****fadeInUp*******/ .fadeInUp { opacity: 0; transform: translateY(50px); transition: 1.0s cubic-bezier(0,.34,.76,.8) 0.2s; &.delay04 { transition-delay: 0.3s; } &.delay05 { transition-delay: 0.4s; } } .target.active { .fadeInUp { opacity: 1; transform: translateY(0); } &.fadeInUp { opacity: 1; transform: translateY(0); } } /***************/ .bg_w { background-color: #FFF; } /****サイドバナー****/ .pc_side_fixed { position: fixed; right: 25px; top: calc(50% + 80px); transform: translateY(-50%); z-index: 990; opacity: 0; animation: pc_slide_load 0.3s ease 0.2s forwards; p { writing-mode: vertical-rl; letter-spacing: -0.2em; padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid #bfbfbf; white-space: nowrap; &:last-child { padding-bottom: 0; border-bottom: 0; } } a { display: flex; align-items: center; column-gap: 10px; font-size: 15px; color: inherit; } } .sp_under_fixed { display: none; } @keyframes pc_slide_load { 0% { opacity: 0; } 100% { opacity: 1; } } /************************/ .header { position: absolute; top: 0; left: 0; width: 100%; z-index: 9999; background-color: #FFF; padding: 25px 0 25px 0; transition: 0.3s ease; &.open { background: none; #logo { opacity: 0; } } &.scrolled { position: fixed; padding: 10px 0; #logo { position: static; transform: scale(1) translateY(0); img { width: 50px; height: auto; } } } } .h_flex { display: flex; justify-content: space-between; align-items: center; position: relative; width: 94%; max-width: 1760px; margin: 0 auto; padding-right: 95px; } #logo { position: absolute; top: 0; left: 0; transition: 0.3s ease; transform-origin: center left; img { transition: 0.3s ease; } } .h_banner { max-width: 630px; width: calc(100% - 150px); display: flex; column-gap: 20px; margin-left: auto; a { height: 50px; display: flex; align-items: center; justify-content: center; border-radius: 5px; color: #FFF; width: 200px; column-gap: 5px; letter-spacing: 0.14em; font-size: 15px; transition: 0.3s ease; } .line a { background-color: #6b9c5b; img { transform: scale(0.8); } &:hover { background-color: #438d2b; } } .pc a { background-color: #222222; img { transform: scale(0.8); } &:hover { background-color: #131313; } } .document a { background-color: #786f68; img { transform: scale(0.9); } &:hover { background-color: #6c625a; } } } /*************************/ .top_main { position: relative; width: 94%; max-width: 1760px; margin-left: auto; margin-right: auto; } .main_mt { margin-top: 100px; } .top_main,.flexslider,.flexslider .slides li { height: clamp(700px, 50vw, 960px); } .flexslider { overflow: hidden; } .flexslider .slides li { animation: mainZoom 6s linear forwards; transform: scale(1.1); } @keyframes mainZoom { to { transform: scale(1); } } .top_main { .flexslider { width: 90%; max-width: 1600px; margin-left: auto; } } #fade1 { background: url("../images/fade1.png") 50% 0/cover no-repeat; } #fade2 { background: url("../images/fade2.png") 40% 0/cover no-repeat; } #fade3 { background: url("../images/fade3.png") 50% 0/cover no-repeat; } .top_title_cont { position: absolute; bottom: -30px; left: 0; z-index: 500; } .top_eng { font-size: clamp(40px,7.5vw, 85px); letter-spacing: 0.14em; line-height: 1.3em; } .top_title { font-size: clamp(24px,2.3vw, 28px); margin-top: 30px; } .top_main_banner { position: absolute; right: 45px; bottom: 45px; z-index: 999; img { transition: 0.3s ease; } &:hover img { opacity: 0.7; } } /*****************************/ .sec01_padding { padding: 220px 0; } .title_55 { font-size: clamp(30px,5.0vw, 55px); letter-spacing: 0.3em; } .sec01_text { letter-spacing: 0.28em; line-height: 2.85em; font-weight: 400; } .more { a { display: flex; justify-content: center; align-items: center; border: 1px solid #222222; border-radius: 100px; width: 260px; height: 60px; color: inherit; text-align: center; font-size: 15px; position: relative; transition: 0.3s ease; } &.center a { margin: 0 auto; } .arrow { background: url("../images/arrow_b.png") left 0/100% 100% no-repeat; position: absolute; right: 30px; top: 50%; transform: translateY(-50%); width: 5px; height: 8px; transition: 0.3s ease; } a:hover { background-color: #222222; color: #FFF; .arrow { background-image: url("../images/arrow_w.png"); } } } .sec01_rellax_cont { height: clamp(400px, 50vw, 900px); overflow: hidden; position: relative; } .rellax { position: absolute; bottom: 0; left: 0; width: 100%; will-change: transform; } /**************************/ .bg_fbfafa { background-color: #fbfafa; } .sec02_af_bg { position: relative; &:after { content: ""; background-color: #FFF; position: absolute; left: 0; top: 0; max-width: 1760px; width: 90%; height: 100%; } } .sec02_flex { display: flex; justify-content: space-between; align-items: flex-start; gap: 40px 40px; } .title_17 { font-size: 17px; letter-spacing: 0.22em; } .sec02_left { p,h2 { white-space: nowrap; } } .eng_48 { font-size: clamp(35px,4.0vw, 48px); letter-spacing: 0.2em; } .sec02_right { flex-grow: 2; max-width: max-content; padding-top: 60px; } .letter22 { letter-spacing: 0.22em; } .line_height24 { line-height: 2.4em; } /**slider**/ .top_slider { opacity: 0; height: auto !important; animation: loadShow 0.3s ease 0.2s forwards; } @keyframes loadShow { to {opacity: 1;} } .slick-track { display: flex !important; } .slick-slide { height: auto !important; } .top_slider li { position: relative; z-index: 200; height: 100%; margin: 0 20px; } .top_slider li .img100 { overflow: hidden; } .top_slider li .img100 img { transition: 0.3s ease; } .top_slider li a:hover .img100 img { transform: scale(1.05); } .clip_img { width: 100%; overflow: hidden; height: auto; display: block; clip-path: polygon(15px 0%,calc(100% - 15px) 0%,100% 15px,100% calc(100% - 15px),calc(100% - 15px) 100%,15px 100%,0% calc(100% - 15px),0% 15px); } .slider li:hover { border: none !important; outline: none !important; } .slider li:focus { border: none !important; outline: none !important; } .slider li a { color: inherit; height: 100%; } .slider li a:hover { outline: 0; } .slider li a:hover { border: none !important; outline: none !important; } .slider li a:focus { border: none !important; outline: none !important; } .campaign_time { font-size: 14px; color: #c8ab7a; letter-spacing: 0.01em; margin: 20px 0 15px; } .campaign_title { font-size: clamp(17px,2.0vw, 20px); letter-spacing: 0.12em; min-height: 65px; font-weight: 500; } /****************************/ .sec03_flex { display: flex; justify-content: space-between; gap: 40px; } .sec03_left { width: 100px; display: flex; justify-content: flex-end; flex-direction: row-reverse; h2,p { writing-mode: vertical-rl; } p { margin-right: 20px; } } .sec03_right { max-width: 1050px; flex-grow: 2; } .news { li:nth-child(1) a { border-top: 1px solid #dcdcdc; } a { display: flex; justify-content: space-between; position: relative; padding: 50px 40px 50px 10px; color: inherit; border-bottom: 1px solid #dcdcdc; } .arrow { background-color: #f4f3f2; width: 37px; height: 37px; border-radius: 50%; display: flex; justify-content: center; align-items: center; position: absolute; top: 50%; right: 10px; transform: translateY(-50%); transition: 0.3s ease; &:after { content: ""; background: url("../images/arrow2_b.png") 50% 0/100% 100% no-repeat; width: 12px; height: 9px; transition: 0.3s ease; } } } .n_cell1 { width: 110px; font-size: 13px; padding-top: 5px; font-weight: 100; letter-spacing: 0.1em; } .n_cell2 { width: calc(100% - 110px); max-width: 800px; font-size: 17px; font-weight: 500; letter-spacing: 0.12em; } .more.right a { margin-left: auto; } /*************************/ .sec04_grid { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 80px; row-gap: 90px; h3 { margin: 25px 0; } } .title_32 { font-size: clamp(22px,2.6vw, 32px); } .sec04_rellax_cont { position: relative; overflow: hidden; height: clamp(400px, 50vw, 680px); max-width: 1840px; margin-left: auto; width: 94%; } /**************************/ .sec05_tab { display: grid; grid-template-columns: repeat(8, 1fr); gap: 20px; a { display: block; font-size: clamp(17px,1.9vw, 24px); text-align: center; color: inherit; border: 1px solid #3e3d3b; border-radius: 3px; padding: 8px 8px 10px; font-weight: 400; transition: 0.3s ease; &:hover { background-color: #3e3d3b; color: #FFF; } } .now a { background-color: #3e3d3b; color: #FFF; } } .anchor_pt80 { padding-top: 160px; margin-top: -80px; } .sec05_grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 50px 40px; h3,p { font-weight: 400; } h3 { font-size: 18px; padding: 15px 0 10px; border-bottom: 1px solid #626262; } .add { font-size: 14px; margin-top: 10px; } .tel { font-size: 14px; margin-top: 5px; } a { color: inherit; } } .event_none_list a, .event_none_list a * { pointer-events: none; } .page { display: none; } /*******************************************/ .footer { position: relative; &:after { content: ""; background-color: #3e3d3b; position: absolute; bottom: 0; left: 0; width: 100%; height: calc(100% - 150px); } } .f_contact_bg { background-color: #4f4c49; color: #FFF; padding: clamp(40px, 11%, 100px) 20px; border-radius: 10px; } .f_flex { max-width: 1200px; width: 100%; margin: 0 auto; display: flex; justify-content: space-between; > div { width: 50%; &:nth-child(1) { padding-right: 20px; border-right: 1px solid #aaaaaa; } &:nth-child(2) { padding-left: 20px; } } h3{ font-weight: 400; } } .title_30 { font-size: clamp(24px,2.4vw, 30px); } .f_more { a { width: 100%; max-width: 480px; margin-left: auto; margin-right: auto; height: 60px; border-radius: 5px; color: #FFF; display: flex; justify-content: center; align-items: center; column-gap: 10px; position: relative; transition: 0.3s ease; } &.contact a { height: 130px; background-color: #222222; &:hover { background-color: #131313; } } &.line a { background-color: #6b9c5b; &:hover { background-color: #438d2b; } } &.mail a { background-color: #222222; &:hover { background-color: #131313; } } img { transition: 0.3s ease; } } .arrow_absolute { position: absolute; right: 25px; top: 50%; transform: translateY(-50%); background: url("../images/arrow_w.png") left 0/100% 100% no-repeat; width: 5px; height: 8px; } /************/ .footer_padding { padding: 80px 0; } .f_flex2 { display: flex; justify-content: space-between; align-items: flex-end; column-gap: 40px; } .f_banner { a { display: flex; align-items: center; justify-content: center; column-gap: 20px; color: #FFF; width: 310px; height: 55px; border-radius: 5px; background-color: #786f68; position: relative; letter-spacing: 0.14em; font-size: 15px; transition: 0.3s ease; &:hover { background-color: #6c625a; } } .arrow_absolute { right: 20px; } } .f_sns { display: flex; align-items: center; column-gap: 20px; a { display: flex; align-items: center; column-gap: 10px; color: #FFF; font-size: 14px; letter-spacing: 0.14em; } } .f_nav { flex-grow: 2; max-width: 630px; display: flex; justify-content: space-between; margin-top: -80px; a { color: #FFF; letter-spacing: 0.08em; font-size: 15px; } li:nth-child(n+2) { margin-top: 35px; } } .copy { margin-top: 120px; font-size: 13px; color: #FFF; letter-spacing: 0.3em; } /********************************************************* コンセプト *********************************************************/ .title_in { height: 360px; display: flex; align-items: center; justify-content: center; text-align: center; padding-top: 20px; } .title_ja_in { font-size: 20px; font-weight: 400; letter-spacing: 0.22em; } .title_eng_in { font-size: clamp(38px,6.5vw, 75px); letter-spacing: 0.14em; } .main_rellax { height: 600px; overflow: hidden; position: relative; } /*********************/ .con01_flex { display: flex; justify-content: space-between; gap: 40px; } .con01_left { display: flex; justify-content: flex-end; flex-direction: row-reverse; width: 100px; h2,p { writing-mode: vertical-rl; } p { margin-right: 20px; } } .con01_right { flex-grow: 2; max-width: 900px; } .con01_text { font-size: 18px; letter-spacing: 0.28em; line-height: 3em; font-weight: 400; } /*******************************/ .con02_grid { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 60px; row-gap: 40px; > div { position: relative; padding: 35px 0 35px 35px; } h3 { margin: 30px 0 25px; } } .con02_num { font-size: 38px; width: 90px; height: 90px; border-radius: 50%; display: flex; justify-content: center; align-items: center; border: 1px solid #222222; position: absolute; top: 0; left: 0; padding: 0 0 2px 4px; } .title_30 { font-size: clamp(23px,2.4vw, 30px); letter-spacing: 0.15em; } .con02_text { line-height: 2.4em; font-weight: 400; } /***************************/ .memory_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 80px; row-gap: 100px; a { color: inherit; display: block; } .time { color: #959493; font-size: 14px; letter-spacing: 0.1em; margin-top: 20px; } .title { letter-spacing: 0.12em; font-size: 20px; margin-top: 10px; } } /*********************/ .con04_flow { > div { position: relative; padding-left: 130px; padding-bottom: 100px; &:last-child { padding-bottom: 0; &:after { display: none; } } &:after { content: ""; border-left: 1px solid #222222; position: absolute; top: calc(83px + 10px); left: 42px; height: calc(100% - 103px); } } h3 { margin-left: -5px; } } .con04_num { width: 83px; height: 83px; background-color: #222222; border-radius: 7px; display: flex; justify-content: center; align-items: center; color: #FFF; font-size: 35px; letter-spacing: 0.08em; position: absolute; top: 0; left: 0; padding-bottom: 5px; } .con04_flex { display: flex; justify-content: space-between; gap: 30px 40px; padding-top: 15px; p { font-weight: 400; } } .con04_left { width: 65%; max-width: 650px; } .title_35 { font-size: clamp(24px,2.9vw, 35px); letter-spacing: 0.12em; font-weight: 400; &.letter22 { letter-spacing: 0.22em; } } .more_flex { display: flex; justify-content: space-between; column-gap: 15px; p { width: 50%; max-width: 300px; } } .icon_more { a { width: 100%; max-width: 300px; display: flex; align-items: center; justify-content: center; column-gap: 15px; color: #FFF; height: 70px; border-radius: 5px; position: relative; } .arrow { background: url("../images/arrow_w.png") left 0/100% 100% no-repeat; width: 5px; height: 8px; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); } &.web a { background-color: #222222; } &.line a { background-color: #6b9c5b; } } .con04_right { width: 35%; max-width: max-content; img { width: 100%; height: auto; } } .sec04_rellax_cont { &.w1850 { max-width: 1850px; margin-left: auto; width: 96%; } } /*****************************/ .faq_table { > div { border-bottom: 1px solid #dcdcdc; &:nth-child(1) { border-top: 1px solid #dcdcdc; } } } .q_table { display: flex; align-items: flex-start; position: relative; padding: 45px 10px; column-gap: 30px; cursor: pointer; } .q_cell1 { font-size: 35px; flex-shrink: 0; text-box: trim-both cap alphabetic; } .q_cell2 { font-size: 22px; padding-right: 40px; position: relative; top: -3px; } .plus { position: absolute; right: 10px; top: 30px; font-size: 40px; font-weight: 100; } .toggleCont { display: none; } .a_table { display: flex; align-items: flex-start; position: relative; padding: 0 10px 45px; column-gap: 30px; cursor: pointer; } .a_cell1 { font-size: 35px; flex-shrink: 0; color: #c8ab7a; text-box: trim-both cap alphabetic; } .a_cell2 { padding-right: 0; .line_height24 { line-height: 2.2em; } } /********************************************************* 撮影プラン *********************************************************/ .plan01_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 35px; row-gap: 70px; p { text-align: center; font-size: clamp(17px,1.7vw, 24px); font-weight: 500; margin-top: 15px; } a { display: block; color: inherit; &:hover { .img100 { background-color: #786f68; } .img100:after { content: "View Details"; font-family: "Satoshi-Regular"; position: absolute; top: 50%; left: 0; width: 100%; transform: translateY(-50%); color: #FFF; text-align: center; font-size: 18px; letter-spacing: 0.16em; } .img100 img { opacity: 0.5; } } } .img100 { position: relative; clip-path: polygon(20px 0%,calc(100% - 20px) 0%,100% 20px,100% calc(100% - 20px),calc(100% - 20px) 100%,20px 100%,0% calc(100% - 20px),0% 20px); transition: 0.3s ease; img { transition: 0.3s ease; display: block; } } } /*************************/ .plan02_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 40px; row-gap: 40px; > div { background-color: #FFF; padding: 20px; } h3 { text-align: center; margin-top: 25px; font-weight: 400; } } .title_22 { font-size: clamp(20px,2.0vw, 22px); letter-spacing: 0.2em; } .plan02_price { text-align: center; font-size: 15px; margin-top: 30px; letter-spacing: 0.1em; font-weight: 500; .mini { font-size: 30px; } .font_eng { font-size: 33px; } } .plan02_list { margin-top: 30px; border-top: 1px solid #dcdcdc; > p { padding: 18px 5px; border-bottom: 1px solid #dcdcdc; font-size: 15px; &:last-child { border-bottom: 0; padding-bottom: 0; } } } .indent_list { li { letter-spacing: 0.22em; text-box-trim: none; text-indent: -1.2em; padding-left: 1.2em; font-size: 14px; &:nth-child(n+2) { margin-top: 10px; } } } /*************************************/ .plan03_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 70px; row-gap: 60px; h3 { margin-top: 20px; text-align: center; font-weight: 400; } .plan02_price { margin-top: 25px; } } .plan03_bg_text { background-color: #fbfafa; padding: 50px 30px; li { font-size: 14px; } } /***********************/ .price_banner { background: url("../images/price_banner.png") 50% 0/cover no-repeat; height: 300px; width: 100%; max-width: 1000px; margin-left: auto; margin-right: auto; a { display: flex; align-items: center; height: 100%; color: #FFF; position: relative; padding: 0 80px 15px; } p { font-size: 48px; letter-spacing: 0.2em; } h2 { letter-spacing: 0.22em; font-size: 18px; font-weight: 400; margin-top: 10px; } .arrow { display: flex; justify-content: center; align-items: center; border: 1px solid #FFF; width: 50px; height: 50px; border-radius: 50%; position: absolute; right: 30px; bottom: 30px; &:after { content: ""; background: url("../images/arrow2_w.png") left 0/100% 100% no-repeat; width: 17px; height: 13px; } } } /********************************************************* 料金案内 *********************************************************/ .price01_grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 90px; > div { display: flex; justify-content: center; align-items: center; color: #FFF; height: 200px; border-radius: 5px; position: relative; &:nth-child(1) { background-color: #786f68; } &:nth-child(2) { background-color: #a19286; } &:nth-child(3) { background-color: #8d8986; } &:nth-child(4) { background-color: #c8ab7a; } &:after { content: ""; background: url("../images/price6.png") 50% 0/30px 31px no-repeat; width: 90px; height: 31px; position: absolute; right: -88px; top: 50%; transform: translateY(-50%); } &:nth-child(3):after { background: url("../images/price7.png") 50% 0/30px 16px no-repeat; height: 16px; } &:last-child:after { display: none; } } .icon { height: 42px; display: flex; justify-content: center; align-items: center; } p { margin-top: 10px; font-size: clamp(20px,2.2vw, 27px); letter-spacing: 0.16em; } } /*************/ .af_bb { &:after { content: ""; display: block; border-bottom: 1px solid #222222; width: 50px; margin-top: 20px; } &.center:after { margin-left: auto; margin-right: auto; position: relative; left: -2px; } } .price_bb_title { font-size: 22px; letter-spacing: 0.18em; border-bottom: 1px solid #222222; padding-bottom: 20px; font-weight: 400; &.size30 { font-size: clamp(24px,2.4vw, 30px); } } .indent_p { text-indent: -1.2em; padding-left: 1.2em; } .text_14 { font-size: 14px; } .price_table { table { width: 100%; } tr { border-bottom: 1px solid #dcdcdc; } th,td { padding: 35px 0 20px; vertical-align: top; } th { font-size: 18px; padding-right: 15px; } td { text-align: right; } .span_22 { font-size: 22px; } .mini_14 { font-size: 14px; } .span_15 { font-size: 15px; } } .price02_flex { display: flex; align-items: center; justify-content: flex-end; .price_p { position: relative; padding-right: 25px; margin-right: 15px; } .price_p:after { content: ""; width: 0; height: 0; border-style: solid; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 9px solid #c8ab7a; border-right: 0; position: absolute; top: calc(50% + 1px); transform: translateY(-50%); right: 0; } } .price_p { .mini { font-size: 18px; letter-spacing: 0.2em; } .p_mark { font-size: 26px; letter-spacing: -0.04em; font-weight: 500; } .font_eng { font-size: 28px; font-weight: 500; } .tax { font-size: 15px; letter-spacing: 0.1em; font-weight: 500; } } /**********/ .price05_flex { display: flex; align-items: flex-start; justify-content: flex-end; column-gap: 15px; } .price05_area { color: #FFF; background-color: #222222; text-align: center; width: 90px; height: 28px; display: flex; align-items: center; justify-content: center; border-radius: 50px; font-size: 18px; position: relative; top: -2px; } /*******************************/ .text_13 { font-size: 13px; line-height: 1.8em; } .color_red { color: #d82121; } /********************************************************* キャンペーン *********************************************************/ .campaign_tab { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; a { height: 45px; display: flex; justify-content: center; align-items: center; border: 1px solid #3e3d3b; transition: 0.3s ease; border-radius: 3px; color: inherit; font-size: 15px; letter-spacing: 0.14em; &:hover { background-color: #3e3d3b; color: #FFF; } } } .tabPage { display: none; } /*************/ .anchor_pt100 { padding-top: 200px; margin-top: -100px; } .campaign_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 40px; row-gap: 60px; a { color: inherit; } .campaign_time { letter-spacing: 0.1em; margin-bottom: 10px; } .campaign_title { min-height: 0; } .img100 img { width: 100%; height: 280px; display: block; object-fit: cover; } } .campaign_text { font-size: 16px; margin-top: 10px; letter-spacing: 0.22em; } /*Pagenation*/ .pagenation ul { margin: 0; display: flex; justify-content: center; align-items: center; column-gap: 40px; font-size: 28px; } .pagenation li { list-style: none outside none; padding: 0 3px; } .pagenation li.active { cursor: not-allowed; color: #222222; position: relative; &:after { content: ""; border-bottom: 1px solid #222222; position: absolute; bottom: -5px; left: 0; width: 100%; } } .pagenation li a { color: #bebebe; } .pagenation .prev { margin-right: 20px; position: relative; top: -3px; img { transform: scale(-1,1); } } .pagenation .next { margin-left: 20px; position: relative; top: -3px; } /********************************************************* 店舗紹介 *********************************************************/ .store_style .sec05_grid { grid-template-columns: repeat(3, 1fr); h3 { position: relative; padding-bottom: 20px; padding-top: 20px; font-size: 20px; &:after { content: ""; background: url("../images/arrow2_b.png") 51% 13px/12px 8px no-repeat; background-color: #f4f3f2; width: 35px; height: 35px; border-radius: 50%; position: absolute; right: 0; top: 17px; } } a { pointer-events: auto; &:hover { .img100 img { transform: scale(1.05); } } } .img100 { overflow: hidden; img { transition: 0.3s ease; } } } /********************************************************* 店舗詳細 *********************************************************/ .title_eng_store { font-size: 21px; letter-spacing: 0.18em; } .title_ja_store { font-size: clamp(28px,5.5vw, 62px); letter-spacing: 0.22em; margin-top: 10px; } .max_img100 img { max-width: 100%; height: auto; } .w1280_auto { max-width: 1280px; width: 100%; margin-left: auto; margin-right: auto; } .store_insta { position: absolute; right: 30px; bottom: -40px; z-index: 500; } /******************/ .store_table { > div { display: flex; justify-content: space-between; &.none { display: none; } } p { color: #3e3d3b; letter-spacing: 0.14em; line-height: 2.2em; } a { color: inherit; } } .store_cell1 { width: 250px; padding: 35px 10px; border-bottom: 1px solid #222222; } .store_cell2 { width: calc(100% - 290px); padding: 35px 10px; border-bottom: 1px solid #a0a0a0; } .store_map { iframe { width: 100%; height: clamp(300px, 50vw, 560px); } } /********************/ .store_hidden { position: relative; overflow: hidden; height: 560px; width: 100%; } .store_scroll { display: flex; column-gap: 20px; position: absolute; top: 0; left: 0; } @keyframes scroll-left { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } } /********************************************************* フォトギャラリー *********************************************************/ .gallery_grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; a { color: inherit; } } .gallery_grid.photo { .img100 { aspect-ratio: 400 / 280; img { width: 100%; height: 100%; object-fit: cover; } } } .campaign_grid.costume { .img100 { aspect-ratio: 400 / 310; img { width: 100%; height: 100%; object-fit: cover; } } } /****モーダル***/ #lightboxOverlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.85); z-index: 9999; display: flex; justify-content: center; align-items: center; } #lightboxContent { position: relative; max-width: calc(100% - 160px); max-height: calc(100% - 120px); margin: 0 auto; overflow-y: scroll; -ms-overflow-style: none; scrollbar-width: none; &::-webkit-scrollbar { display: none; } } #lightboxContent img { max-width: 100%; height: auto; } .lightboxClose { position: fixed; font-size: 30px; background: #FFF; color: #000; cursor: pointer; z-index: 10000; border: 0; top: 30px; right: 30px; transform: none; border-radius: 50%; width: 40px; padding-bottom: 5px; height: 40px; display: flex; justify-content: center; align-items: center; } .lightboxPrev, .lightboxNext { position: absolute; top: 50%; transform: translateY(-50%); cursor: pointer; z-index: 10000; background: none; width: 0; height: 0; border-style: solid; border-top: 15px solid transparent; border-bottom: 15px solid transparent; border-right: 20px solid #ffffff; border-left: 0; } .lightboxPrev { left: 30px; } .lightboxNext { right: 30px; transform: translateY(-50%) scale(-1,1); } /********************************************************* 衣装ギャラリー *********************************************************/ .cos_tab { display: flex; column-gap: 13px; a { display: block; padding: 0 0 25px 40px; font-size: 17px; width: 310px; border-bottom: 1px solid #222222; position: relative; color: inherit; .font_satoshi { font-size: 16px; } } .arrow { background: url("../images/arrow_under.png") left 0/100% 100% no-repeat; width: 10px; height: 6px; position: absolute; right: 40px; top: 10px; } } .campaign_tab.column4 { grid-template-columns: repeat(4, 1fr); } .g_cate { display: flex; gap: 10px; margin-top: 20px; letter-spacing: 0.14em; flex-wrap: wrap; span { color: #FFF; width: 75px; border-radius: 50px; height: 25px; display: flex; align-items: center; padding-bottom: 2px; justify-content: center; font-size: 14px; } .cate1 { background-color: #dbadb4; } .cate2 { background-color: #d5c37b; } .cate3 { background-color: #aac4e0; } } .g_tag { display: flex; flex-wrap: wrap; margin-top: 15px; gap: 5px 10px; font-size: 13px; letter-spacing: 0.16em; } /********************************************************* お知らせ *********************************************************/ .news.news_in { max-width: 1200px; margin-left: auto; margin-right: auto; a { padding-top: 50px; padding-bottom: 50px; } .n_cell1 { font-weight: 100; } .n_cell2 { max-width: 100%; width: calc(100% - 150px); } } /********************************************************* 会社概要 *********************************************************/ .company01_title { text-align: center; font-size: clamp(30px,4.0vw, 45px); letter-spacing: 0.3em; padding-left: 20px; line-height: 1.7em; } .com01_text { text-align: center; letter-spacing: 0.28em; line-height: 3em; } .com01_img { text-align: right; img { max-width: 100%; height: auto; } } /***********************/ .com02_flex { display: flex; justify-content: space-between; gap: 40px; } .com02_right { width: 50%; max-width: 560px; } .com02_ver { display: flex; justify-content: flex-end; flex-direction: row-reverse; h2,p { writing-mode: vertical-rl; } p { margin-right: 20px; } } .com02_width { padding-left: 135px; margin-top: -15px; .title_35 { letter-spacing: 0.3em; line-height: 1.8em; } } .line_height3 { line-height: 3.2em; } .letter28 { letter-spacing: 0.28em; } .com02_left { width: 50%; max-width: max-content; img { @include cover; } } /***************************/ .com03_rellax_cont { position: relative; overflow: hidden; height: clamp(400px, 50vw, 700px); max-width: 1680px; margin-left: auto; width: 94%; .img100 img{ transform: translateY(-120px); } } /***********/ .com_map { iframe { width: 100%; height: clamp(300px, 50vw, 460px); } } /********************************************************* 資料請求 *********************************************************/ .req_text { color: #c8ab7a; font-size: 15px; letter-spacing: 0.22em; margin-top: 45px; padding-top: 30px; border-top: 1px solid #dcdcdc; } .contact_table { > div { display: flex; justify-content: space-between; column-gap: 30px; &:nth-child(n+2) { margin-top: 40px; } } ::placeholder { color: rgba(172,172,172,1.00); } } .con_cell1 { width: 220px; letter-spacing: 0.22em; padding-top: 15px; } .req { color: #c8ab7a; margin-left: 10px; } .con_cell2 { width: calc(100% - 220px); max-width: 960px; } .size,.area { border: 0; width: 100%; background-color: #fafafa; } .size { max-width: 680px; } .tel_input .size { max-width: 330px; } .size { height: 50px; padding: 0 15px; } .area { height: 280px; padding: 15px; } .name_flex { max-width: 680px; display: flex; justify-content: space-between; column-gap: 25px; > div { flex-grow: 2; } } .label_flex { padding-top: 13px; } .label_flex .wpcf7-form-control { display: flex; flex-wrap: wrap; column-gap: 20px; } .label_flex label { cursor: pointer; } input[type=radio] { position: relative; width: 25px; height: 25px; border: 1px solid #222222; border-radius: 50%; vertical-align: -8px; margin-right: 10px; -webkit-appearance: none; -moz-appearance: none; appearance: none; } input[type=radio]:checked:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 10px; height: 10px; border-radius: 50%; background: #222222; content: ""; } .postal_flex { display: flex; align-items: center; justify-content: space-between; max-width: 700px; width: 100%; &.w340 { max-width: 340px; } &.w270 { max-width: 270px; } > p { width: 105px; } > div { width: calc(100% - 105px); } } .postal { display: flex; align-items: center; &.w100 { width: 100%; } > div { display: flex; align-items: center; &:nth-child(1) { &:after { content: ""; width: 15px; border-bottom: 1px solid #222222; margin: 0 10px; display: block; } } } } .select_box { width: 160px; } .select_box2 { max-width: 330px; } select { -webkit-appearance: none; appearance: none; background-image: url("../images/arrow_under.png"); background-repeat: no-repeat; background-size: 10px auto; /* 画像のサイズ(幅 高さ)*/ background-position: right 12px center; /* 画像の位置 */ } .check_box { display: flex; justify-content: center; letter-spacing: 0.22em; a { color: inherit; border-bottom: 1px solid #CCC; } } .check_box input[type=checkbox] { position: relative; width: 23px; height: 23px; border: 1px solid #adacab; background-color: #FFF; vertical-align: -6px; margin-right: 15px; border-radius: 3px; -webkit-appearance: none; -moz-appearance: none; appearance: none; } .check_box input[type=checkbox]:checked { background-color: #212121; } .check_box input[type=checkbox]:checked:before { position: absolute; top: 2px; left: 8px; transform: rotate(50deg); width: 6px; height: 12px; border-right: 2px solid #FFF; border-bottom: 2px solid #FFF; content: ""; } .submit_btn { display: flex; justify-content: center; align-items: center; border: 1px solid #222222; width: 260px; height: 60px; border-radius: 50px; font-size: 16px; text-align: center; position: relative; margin-left: auto; margin-right: auto; transition: 0.3s ease; input { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; background: none; border: 0; border-radius: 50px; position: relative; z-index: 500; } .arrow { position: absolute; right: 25px; top: 50%; transform: translateY(-50%); background: url("../images/arrow_b.png") 50% 0/100% 100% no-repeat; width: 5px; height: 8px; transition: 0.3s ease; } &:hover { background-color: #222222; color: #FFF; .arrow { background-image: url("../images/arrow_w.png"); } } } .line_height22 { line-height: 2.2em; } .a_color a { color: inherit; } /**************************************************************************** FLOR ****************************************************************************/ .flor_pc_side_fixed { display: none; position: fixed; top: calc(50% + 60px); transform: translateY(-50%); right: 0; z-index: 990; height: fit-content; overflow: hidden; border-radius: 5px 0 0 5px; a { width: 90px; height: 90px; display: flex; justify-content: center; align-items: center; font-size: 14px; color: #FFF; letter-spacing: 0.1em; font-weight: 500; padding-top: 5px; } img { display: block; margin: 0 auto 5px; } .line a { background-color: #6b9c5b; img { width: 28px; height: auto; } } .web a { background-color: #222222; img { width: 30px; height: auto; } } .doc a { background-color: #786f68; img { width: 25px; height: auto; } } .photo { display: none; } } /***************************/ .header_flor { position: absolute; top: 0; left: 0; width: 100%; z-index: 999; background-color: #FFF; &.scrolled { position: fixed; #flor_logo { height: 90px; } .flor_nav { margin-top: 10px; } .flor_nav { a { &:after { bottom: -15px; } } } } } .h_flor_flex { display: flex; justify-content: space-between; width: 96%; column-gap: 30px; margin: 0 auto; } #flor_logo { height: 125px; transition: 0.3s ease; display: flex; align-items: center; } .h_flor_right { flex-grow: 2; max-width: max-content; font-size: 14px; .contact { display: flex; justify-content: flex-end; a { background-color: #434343; border-radius: 0 0 5px 5px; color: #FFF; height: 45px; width: 200px; display: flex; align-items: center; justify-content: center; column-gap: 7px; letter-spacing: 0.1em; } } } .flor_nav { margin-top: 25px; transition: 0.3s ease; ul { display: flex; justify-content: space-between; column-gap: 20px; } a { color: inherit; letter-spacing: 0.18em; position: relative; &:after { content: ""; border-bottom: 1px solid #222222; position: absolute; bottom: -35px; left: 0; width: 0; transition: 0.3s ease; } &:hover:after { width: 100%; } } } /*************/ .flor_main { margin-top: 125px; background: url("../images/flor1.png") 60% 0/cover no-repeat; height: clamp(600px, 60vw, 960px); } .flor_main_title { padding-top: clamp(100px, 11%, 200px); max-width: 1520px; width: 90%; margin: 0 auto; } .flor_title { font-size: clamp(32px,5.5vw, 62px); letter-spacing: 0.14em; line-height: 1.6em; } .flor_eng { font-size: clamp(15px,2.0vw, 20px); letter-spacing: 0.16em; margin-top: 30px; } .flor_sub_title { font-size: clamp(18px,2.0vw, 22px); letter-spacing: 0.14em; margin-top: 30px; display: flex; align-items: center; &:before { content: ""; border-bottom: 1px solid #222222; width: 130px; margin-right: 30px; } } /***********************/ .flor01_flex { display: flex; justify-content: space-between; gap: 40px 20px; } .flor01_right { width: 53%; display: flex; align-items: center; } .flor01_width { max-width: 825px; width: 90%; margin-left: auto; } .flor01_text { font-size: 15px; letter-spacing: 0.28em; line-height: 3em; } .flor01_left { width: 47%; max-width: max-content; img { @include cover; border-radius: 0 8px 8px 0; } } /***************************************/ .flor02_container { width: 90%; max-width: 1670px; margin-left: auto; margin-right: auto; position: relative; .slick-slider { padding: 0 100px; } .slick-track { padding-left: 0; } .slider li { margin: 0 20px; } .campaign_time { margin-top: 25px; letter-spacing: 0.1em; margin-bottom: 10px; } } /***************************************/ .flor03_plan { margin-top: 110px; > div { position: relative; &:nth-child(n+2) { margin-top: 160px; } } } .flor03_num { position: absolute; top: -70px; left: 0; display: flex; align-items: center; column-gap: 5px; .ver { font-size: 40px; writing-mode: vertical-rl; transform: scale(-1,-1); letter-spacing: 0.05em; position: relative; top: 4px; } .num { font-size: 85px; letter-spacing: 0.05em; } } .flor03_flex { padding: 50px 0; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #3e3d3b; gap: 20px 30px; h3 { font-weight: 500; } } .flor03_right { .price05_flex { display: block; > div { display: flex; justify-content: space-between; column-gap: 20px; &:nth-child(n+2) { margin-top: 20px; } } } .price05_area { width: 80px; height: 25px; font-size: 15px; padding-bottom: 2px; } .price_p { font-weight: 500; .mini { font-size: 20px; } .p_mark { font-size: 30px; } .font_eng { font-size: 33px; } } } .flor03_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 40px; row-gap: 20px; p { letter-spacing: 0.22em; background-color: #f4f3f2; text-align: center; border-radius: 50px; display: flex; align-items: center; justify-content: center; min-height: 40px; padding: 10px 5px; } } .flor03_border { border: 1px solid #222222; border-radius: 10px; padding: clamp(30px, 8%, 75px); } .flor03_flex2 { display: flex; justify-content: space-between; column-gap: 30px; > div { width: 48%; max-width: 530px; } h3 { width: fit-content; } } .title_24 { font-size: clamp(20px,1.9vw, 24px); border-bottom: 1px solid #222222; padding-bottom: 5px; font-weight: 400; letter-spacing: 0.22em; } .square_list { p:nth-child(n+2) { margin-top: 10px; } } .square_p { display: flex; align-items: flex-start; column-gap: 10px; letter-spacing: 0.22em; line-height: 2em; &:before { content: ""; background-color: #c8ab7a; width: 10px; height: 10px; flex-shrink: 0; position: relative; top: 12px; } &.text_14:before { top: 9px; } } .flor03_table { > div { display: flex; justify-content: space-between; column-gap: 20px; &:nth-child(n+2) { margin-top: 10px; } } } .flor03_price { text-align: right; .span_14 { font-size: 14px; } .font_eng { font-size: 15px; } .tax { font-size: 13px; } } /*****************************/ .con04_flex { display: flex; justify-content: space-between; gap: 30px 40px; padding-top: 15px; p { font-weight: 400; } } .con04_left { width: 65%; max-width: 650px; } .flor04.con04_flow { .con04_left { max-width: 680px; } .more a{ width: 280px; } } /**************************/ .flor05_rellax_cont { height: clamp(400px, 50vw, 680px); overflow: hidden; position: relative; img { transform: translateY(20px); } } /************************/ .flor_faq { > div { border-bottom: 1px solid #dcdcdc; &:nth-child(1) { border-top: 1px solid #dcdcdc; } } .plus { top: 25px } } .flor_q_table { display: flex; align-items: flex-start; position: relative; padding: 30px 10px; column-gap: 30px; cursor: pointer; } .flor_q_cell1 { font-size: 22px; color: #c8ab7a; border: 1px solid #c8ab7a; width: 50px; height: 50px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; padding-bottom: 8px; padding-left: 2px; text-box: trim-both cap alphabetic; } .flor_q_cell2 { font-size: 20px; padding-right: 40px; position: relative; top: 8px; } .flor_a_table { display: flex; align-items: flex-start; position: relative; padding: 0 10px 30px; column-gap: 30px; cursor: pointer; } .flor_a_cell1 { font-size: 22px; color: #FFF; background-color: #c8ab7a; width: 50px; height: 50px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; padding-bottom: 7px; padding-left: 3px; text-box: trim-both cap alphabetic; } .flor_a_cell2 { padding-right: 0; padding-top: 12px; line-height: 2.2em; } /****************************/ .flor_style .sec05_grid { h3 { position: relative; padding-bottom: 20px; padding-top: 20px; &:after { content: ""; background: url("../images/arrow2_b.png") 51% 13px/12px 8px no-repeat; background-color: #f4f3f2; width: 35px; height: 35px; border-radius: 50%; position: absolute; right: 0; top: 17px; } } a { pointer-events: auto; &:hover { .img100 img { transform: scale(1.05); } } } .img100 { overflow: hidden; img { transition: 0.3s ease; } } } /***************************/ .flor_contact_bg { background: url("../images/flor12.png") 50% 0/cover no-repeat; } .flor_f_more { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; a { display: flex; justify-content: center; align-items: center; height: 100px; border-radius: 5px; color: #FFF; column-gap: 10px; position: relative; background-color: #222222; font-weight: 500; } .line a { background-color: #6b9c5b; } .arrow { background: url("../images/arrow_w.png") 50% 0/100% 100% no-repeat; width: 7px; height: 11px; position: absolute; right: 35px; top: 50%; transform: translateY(-50%); } .line img { position: relative; top: 1px; } .mail img { position: relative; top: 2px; } } .flor_insta_bannner { background: url("../images/flor_insta.png") 50% 0/cover no-repeat; border-radius: 10px; position: relative; top: 100px; a { height: auto; display: flex; justify-content: center; align-items: center; width: 100%; color: #FFF; text-align: center; font-size: 17px; letter-spacing: 0.14em; font-weight: bold; border-radius: 10px; overflow: hidden; position: relative; img { display: block; margin: 0 auto 5px; } } .font_eng { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 100%; text-align: center; } } .flor_insta_flex { display: grid; grid-template-columns: repeat(4, 1fr); img { width: 100%; height: auto; } } /***********/ .flor_footer_bg { background-color: #3e3d3b; color: #FFF; padding: calc(250px + 60px) 0 80px; margin-top: -60px; } .flor_f_logo { text-align: center; border-bottom: 1px solid #707070; padding-bottom: 65px; margin-bottom: 65px; } .flor_f_flex { display: flex; justify-content: space-between; gap: 40px 30px; } .flor_f_left { width: 313px; .arrow { background: url("../images/arrow_w.png") left 0/100% 100% no-repeat; width: 5px; height: 8px; position: absolute; right: 25px; top: 50%; transform: translateY(-50%); } } .flor_f_more1 { a { display: flex; align-items: center; justify-content: center; column-gap: 15px; color: #FFF; height: 55px; background-color: #786f68; border-radius: 5px; position: relative; font-size: 15px; font-weight: 500; } } .flor_f_more2 { margin-top: 20px; a { display: flex; align-items: center; justify-content: center; column-gap: 15px; color: #FFF; height: 85px; background-color: #707070; border-radius: 5px; position: relative; font-size: 15px; font-weight: 500; } img { width: 40px; height: auto; } } .flor_f_nav { max-width: 690px; flex-grow: 2; display: flex; justify-content: space-between; column-gap: 20px; a { color: #FFF; font-size: 15px; display: flex; align-items: center; column-gap: 7px; font-weight: 500; letter-spacing: 0.08em; &:before { content: ""; border-bottom: 1px solid #FFF; width: 8px; } } li:nth-child(n+2) { margin-top: 25px; } } .copy { text-align: center; font-size: 13px; letter-spacing: 0.3em; margin-top: clamp(40px, 8%, 120px); } .wp_bb { border-bottom: 1px solid #CCC; padding-bottom: 25px; } /* PPC用 ------------------------------------------------------------*/ @media only screen and (max-width: 1699px) and (min-width: 1025px) { .sec05_grid { h3 { font-size: 20px; } .add,.tel { font-size: 17px; } } .f_banner { a { font-size: 17px; } } .f_sns { a { font-size: 17px; } } .f_nav { a { font-size: 17px; } } .plan03_bg_text { li { font-size: 17px; } } .text_14 { font-size: 16px; } .campaign_tab a { font-size: 17px; } .h_flor_right { font-size: 17px; } .flor01_text { font-size: 17px; } } @media only screen and (max-width: 1699px) { .com02_width { padding-left: 80px; margin-top: -15px; .title_35 { letter-spacing: 0.3em; line-height: 1.8em; } } } @media only screen and (max-width: 1200px) { } @media only screen and (max-width: 1024px) { /****サイドバナー****/ .pc_side_fixed { display: none; } .sp_under_fixed { display: grid; grid-template-columns: repeat(4, 1fr); justify-content: space-between; position: fixed; bottom: 0; left: 0; width: 100%; z-index: 999; a { display: flex; align-items: center; justify-content: center; color: #FFF; text-align: center; height: 80px; } .line a { background-color: #6b9c5b; } .web a { background-color: #222222; } .photo a { background-color: #8dc4c1; } .costume a { background-color: #dea2a4; } .icon { height: 40px; display: flex; justify-content: center; align-items: center; } } /************************/ .h_flex { padding-right: 40px; } .h_banner { max-width: 500px; a { width: 150px; } } /*************************/ .top_main { width: 100%; } .top_main { .flexslider { width: 92%; max-width: 1600px; margin-left: auto; } } .top_title_cont { position: absolute; bottom: -30px; left: 50%; transform: translateX(-50%); width: 94%; z-index: 500; } .top_eng { font-size: clamp(32px,6.5vw, 85px); } .top_title { font-size: clamp(24px,2.3vw, 28px); } .top_main_banner { position: absolute; right: 30px; bottom: -45px; img { width: 250px; height: auto; } } /*****************************/ .sec01_padding { padding: 150px 0; } .sec01_rellax_cont { overflow: hidden; position: relative; img { height: 700px; width: 100%; object-fit: cover; object-position: 40% 0; } } /**************************/ .sec02_af_bg { &:after { width: 94%; height: 100%; } } .sec02_flex { flex-wrap: wrap; gap: 40px 40px; } .sec02_right { padding-top: 0; } /*************************/ .sec04_grid { column-gap: 40px; row-gap: 60px; } .sec04_rellax_cont { img { height: 900px; width: 100%; object-fit: cover; object-position: left 0; } } /**************************/ .sec05_tab { grid-template-columns: repeat(8, 1fr); gap: 10px; } .anchor_pt80 { padding-top: 120px; margin-top: -60px; } .sec05_grid { grid-template-columns: repeat(3, 1fr); gap: 40px 30px; } /************/ .f_flex2 { column-gap: 20px; } .f_banner { a { width: 250px; } } .f_sns { flex-wrap: wrap; width: 250px; column-gap: 20px; grid-row-gap: 10px; } /********************************************************* コンセプト *********************************************************/ .main_rellax { height: 400px; position: relative; img { width: 100%; height: 650px; object-fit: cover; display: block; } } .con02_grid { grid-template-columns: repeat(2, 1fr); column-gap: 30px; row-gap: 30px; } /***************************/ .memory_grid { column-gap: 30px; row-gap: 50px; } /*********************/ .more_flex { display: flex; justify-content: space-between; gap: 15px; flex-wrap: wrap; p { width: 100%; max-width: 300px; } } /********************************************************* 撮影プラン *********************************************************/ .plan02_grid { grid-template-columns: repeat(2, 1fr); column-gap: 40px; row-gap: 40px; } /*************************************/ .plan03_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 20px; row-gap: 40px; } /********************************************************* 料金案内 *********************************************************/ .price01_grid { gap: 30px; > div { height: 150px; &:after { background: url("../images/price6.png") 50% 0/15px 15px no-repeat; width: 30px; height: 15px; right: -30px; } &:nth-child(3):after { background: url("../images/price7.png") 50% 0/20px 10px no-repeat; height: 10px; } } } /********************************************************* 衣装ギャラリー *********************************************************/ .campaign_tab.column4 { grid-template-columns: repeat(3, 1fr); } /********************************************************* 会社概要 *********************************************************/ .com02_width { padding-left: 40px; margin-top: 40px; .title_35 { letter-spacing: 0.3em; line-height: 1.8em; } } /***************************/ .com03_rellax_cont { position: relative; height: clamp(400px, 50vw, 700px); max-width: 1680px; margin-left: auto; width: 94%; .img100 img{ transform: translateY(-120px); height: 650px; width: 100%; object-fit: cover; } } /**************************************************************************** FLOR ****************************************************************************/ .h_flor_right { padding-right: 100px; } .flor_nav { display: none; } /***************************************/ .flor02_container { width: 90%; max-width: 1670px; margin-left: auto; margin-right: auto; position: relative; .slick-slider { padding: 0 0; } .campaign_time { margin-top: 25px; letter-spacing: 0.1em; margin-bottom: 10px; } } /**************************/ .flor05_rellax_cont { img { transform: translateY(-100px); height: 600px; width: 100%; object-fit: cover; } } /***********/ .flor_footer_bg { padding: 250px 0 80px; margin-top: -60px; } .flor_f_flex { flex-wrap: wrap; gap: 60px 30px; } .flor_f_left { width: 313px; order: 2; margin-left: auto; margin-right: auto; } .flor_f_nav { max-width: 100%; width: 100%; flex-grow: 2; display: flex; justify-content: space-between; column-gap: 20px; } } @media only screen and (max-width: 768px) { @for $i from 30 through 70 { .flex_#{$i} { width: 100%; } } /****サイドバナー****/ .sp_under_fixed { a { height: 70px; font-size: 14px; letter-spacing: 0; } .icon { height: 35px; img { transform: scale(0.8); } } } /************************/ .header { padding: 15px 0; } .h_flex { width: 90%; padding-right: 0; } .h_banner { display: none; } /*************************/ .main_mt { margin-top: 70px; } .top_main,.flexslider,.flexslider .slides li { height:600px; } .top_main { .flexslider { width: 90%; } } .top_title_cont { bottom: -10px; width: 92%; } .top_eng { font-size: 38px; letter-spacing: 0.14em; line-height: 1.3em; } .top_title { font-size: 20px; margin-top: 30px; } .top_main_banner { position: absolute; right: 20px; bottom: -60px; img { width: 140px; height: auto; } } /*****************************/ .sec01_padding { padding: 120px 0 60px; .title_55 { padding-left: 30px; white-space: nowrap; } } .sec01_text { letter-spacing: 0.15em; line-height: 2.6em; } .sec01_rellax_cont { height: 350px; img { height: 600px; width: 100%; object-fit: cover; object-position: bottom 50%; } } /**************************/ .sec02_af_bg { &:after { width: 90%; height: 100%; } } .title_17 { font-size: 17px; letter-spacing: 0.22em; } .line_height24 { line-height: 2.2em; } /**slider**/ .top_slider { width: calc(100% + 100px); margin-left: -30px; } .top_slider li { margin: 0 15px; } .slick-track { padding-left: 40px; } .campaign_time { font-size: 14px; margin: 15px 0 10px; } .campaign_title { font-size: clamp(16px,2.0vw, 20px); min-height: 50px; } /****************************/ .sec03_flex { flex-wrap: wrap; gap: 40px; } .sec03_left { width: 100%; display: block; text-align: center; h2,p { writing-mode: horizontal-tb; } p { margin-right: 0; margin-top: 10px; } } .news { a { padding: 30px 40px 30px 5px; display: block; } } .n_cell1 { width: 100%; font-size: 14px; padding-top: 0; } .n_cell2 { width: 100%; font-size: 17px; margin-top: 15px; } .more.right a { margin: 0 auto; } /*************************/ .sec04_grid { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 60px; h3 { margin: 25px 0 20px; font-size: 26px; } } .title_32 { font-size: clamp(22px,2.6vw, 32px); } .sec04_rellax_cont { height: clamp(300px, 50vw, 680px); img { height: 500px; width: 100%; object-fit: cover; object-position: left 0; transform: translateY(-50px) } } /**************************/ .sec05_tab { grid-template-columns: repeat(4, 1fr); a { font-size: clamp(17px,1.9vw, 24px); padding: 3px 0 3px; } } .anchor_pt80 { padding-top: 80px; margin-top: -40px; } .sec05_grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 35px 25px; h3 { font-size: 17px; padding: 13px 0 10px; } .add { font-size: 13px; letter-spacing: 0.05em; margin-top: 15px; } } /*******************************************/ .footer { &:after { height: calc(100% - 150px); } } .f_contact_bg { padding: 60px 30px; border-radius: 10px; width: 100%; } .f_flex { display: block; > div { width: 100%; &:nth-child(1) { padding-right: 0; padding-bottom: 40px; margin-bottom: 40px; border-right: 0; border-bottom: 1px solid #aaaaaa; } &:nth-child(2) { padding-left: 0; } } } .f_more { &.contact a { height: 60px; } } /************/ .footer_padding { padding: 80px 0 130px; } .f_logo { text-align: center; } .f_flex2 { flex-wrap: wrap; column-gap: 20px; } .f_left2 { width: 100%; order: 2; } .f_banner { a { column-gap: 20px; width: 100%; height: 65px; font-size: 17px; } .arrow_absolute { right: 20px; } } .f_sns { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; width: auto; column-gap: 20px; grid-row-gap: 10px; a { column-gap: 10px; font-size: 16px; } } .f_nav { flex-grow: 2; max-width: 100%; display: block; margin-top: 40px; border-top: 1px solid rgba(255,255,255,0.6); a { font-size: 18px; display: block; padding: 25px 10px; border-bottom: 1px solid rgba(255,255,255,0.6); position: relative; } li:nth-child(n+2) { margin-top: 0; } .sp_arrow { width: 30px; height: 30px; border-radius: 50%; background-color: #f4f3f2; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); display: flex; align-items: center; justify-content: center; &:after { content: ""; background: url("../images/arrow2_b.png") left 0/100% 100% no-repeat; width: 12px; height: 9px; } } } .copy { margin-top: 60px; font-size: 13px; text-align: center; } /********************************************************* コンセプト *********************************************************/ .title_in { height: 200px; padding: 20px 14px 0; } .main_mt.container1280 { width: 100%; } .main_mt .img100 img{ width: 100%; height: 300px; object-fit: cover; } .main_rellax { height: 300px; position: relative; .img100 img { width: 100%; transform: translateY(-130px); height: 450px; object-fit: cover; display: block; } } /*********************/ .con01_flex { flex-wrap: wrap; gap: 100px; } .con01_left { display: block; width: 100%; text-align: center; h2,p { writing-mode: horizontal-tb; } p { margin-right: 0; } } .con01_right { text-align: center; h2 { padding-left: 30px; } } .con01_text { font-size: 18px; letter-spacing: 0.22em; line-height: 2.2em; font-weight: 400; } /*******************************/ .con02_grid { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 30px; row-gap: 10px; > div { position: relative; padding: 35px 0 35px 35px; } h3 { margin: 20px 0 20px; } } .con02_num { font-size: 35px; width: 80px; height: 80px; top: 0; left: 0; } .con02_text { line-height: 2em; font-weight: 400; } /***************************/ .memory_grid { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 20px; row-gap: 30px; .time { margin-top: 15px; } .title { font-size: 16px; margin-top: 5px; } } /*********************/ .con04_flow { > div { padding-left: 80px; padding-bottom: 60px; &:after { content: ""; top: calc(50px + 10px); left: 25px; height: calc(100% - 73px); } } h3 { margin-left: -5px; } .line_height24 { line-height: 1.8em; } } .con04_num { width: 50px; height: 50px; font-size: 25px; padding-bottom: 3px; border-radius: 3px; } .con04_flex { flex-wrap: wrap; gap: 40px 0; padding-top: 6px; } .con04_left { width: 100%; max-width: 100%; } .more_flex { p { width: 100%; max-width: 100%; line-height: 2em; } } .icon_more { a { width: 100%; max-width: 300px; display: flex; align-items: center; justify-content: center; column-gap: 15px; color: #FFF; height: 70px; border-radius: 5px; position: relative; } .arrow { background: url("../images/arrow_w.png") left 0/100% 100% no-repeat; width: 5px; height: 8px; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); } &.web a { background-color: #222222; } &.line a { background-color: #6b9c5b; } } .con04_right { width: 100%; max-width: 100%; img { object-fit: cover; height: 250px; } } .sec04_rellax_cont { &.w1850 { max-width: 1850px; margin-left: auto; width: 94%; } } /*****************************/ .q_table { padding: 25px 10px; column-gap: 15px; cursor: pointer; } .q_cell1 { font-size: 28px; } .q_cell2 { font-size: 20px; padding-right: 40px; } .plus { right: 10px; top: 18px; font-size: 30px; } .toggleCont { display: none; } .a_table { padding: 0 10px 25px; column-gap: 15px; } .a_cell1 { font-size: 28px; } .a_cell2 { padding-left: 5px; .line_height24 { line-height: 1.8em; } } /********************************************************* 撮影プラン *********************************************************/ .plan01_grid { display: block; column-gap: 0; .slick-track { padding-left: 0; } p { font-size: 20px; margin-top: 15px; } li { margin: 0 10px; } .img100 img{ width: 100%; height: auto; } } /*************************/ .plan02_grid { grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 30px; } .plan02_price { margin-top: 20px; text-box-trim: trim-end; } /*************************************/ .plan03_grid { grid-template-columns: repeat(1, 1fr); column-gap: 20px; row-gap: 40px; h3 { margin-top:20px; } .plan02_price { margin-top: 15px; } } .plan03_bg_text { padding: 30px 20px; li { font-size: 15px; } } /***********************/ .price_banner { height: 200px; width: 88%; margin-left: auto; margin-right: auto; border-radius: 5px; a { padding: 0 30px 15px; } p { font-size: 35px; } h2 { font-size: 18px; margin-top: 5px; } } /********************************************************* 料金案内 *********************************************************/ .price01_grid { display: grid; grid-template-columns: repeat(1, 1fr); gap: 80px; > div { width: 350px; height: 250px; margin: 0 auto; border-radius: 10px; &:after { content: ""; background: url("../images/price6.png") 50% 50%/30px 30px no-repeat; width: 30px; height: 80px; position: absolute; right: 50%; top: auto; bottom: -80px; transform: translateX(50%); } &:nth-child(3):after { background: url("../images/price7.png") 50% 50%/30px 16px no-repeat; height: 80px; transform: rotate(90deg); right: calc(50% - 16px); } &:last-child:after { display: none; } } .icon { height: 42px; display: flex; justify-content: center; align-items: center; } p { margin-top: 15px; font-size: 24px; letter-spacing: 0.16em; } } /*************/ .af_bb { &.title_35 { font-size: 30px; } } .price_bb_title { font-size: 20px; padding-bottom: 15px; &.size30 { font-size: 22px; } } .indent_p { text-indent: -1.2em; padding-left: 1.2em; } .text_14 { font-size: 16px; } .price_table { table { width: 100%; } tr { border-bottom: 1px solid #dcdcdc; } th,td { vertical-align: top; display: block; } th { font-size: 17px; padding: 15px 0 0; } td { padding: 25px 0 15px; text-align: right; } .span_22 { font-size: 15px; } .mini_14 { font-size: 14px; } .span_15 { font-size: 15px; } .text_18 { font-size: 16px; } } .price02_flex { .price_p { padding-right: 20px; margin-right: 10px; } } .price_p { .mini { font-size: 15px; letter-spacing: 0.2em; } .p_mark { font-size: 18px; } .font_eng { font-size: 24px; } .tax { font-size: 14px; } } /**********/ .price05_flex { display: flex; align-items: flex-start; justify-content: flex-end; column-gap: 15px; } .price05_area { width: 60px; height: 20px; font-size: 14px; top: 4px; } /*******************************/ .text_13 { font-size: 13px; line-height: 1.8em; } .color_red { color: #d82121; } /********************************************************* キャンペーン *********************************************************/ .campaign_tab { grid-template-columns: repeat(3, 1fr); a { height: 35px; } } /*************/ .anchor_pt100 { padding-top: 120px; margin-top: -60px; } .campaign_grid { display: block; column-gap: 0; row-gap: 0; .slick-track { padding-left: 0; } .campaign_time { letter-spacing: 0.05em; margin-bottom: 10px; font-size: 13px; } .img100 img { width: 100%; height: auto; } li { margin: 0 15px; } } .campaign_text { font-size: 14px; } /*Pagenation*/ .pagenation ul { column-gap: 30px; font-size: 22px; } /********************************************************* 店舗紹介 *********************************************************/ .store_style .sec05_grid { grid-template-columns: repeat(2, 1fr); h3 { padding-bottom: 15px; padding-top: 15px; font-size: 15px; &:after { content: ""; background: url("../images/arrow2_b.png") 50% 50%/10px 7px no-repeat; background-color: #f4f3f2; width: 25px; height: 25px; top: 17px; } } } /********************************************************* 店舗詳細 *********************************************************/ .title_eng_store { font-size: 18px; letter-spacing: 0.18em; } .title_ja_store { font-size: 30px; letter-spacing: 0.22em; margin-top: 5px; } .max_img100 img { max-width: 100%; height: auto; } .store_insta { position: absolute; right: 20px; bottom: -60px; z-index: 500; img { width: 110px; height: auto; } } /******************/ .store_table { p { letter-spacing: 0.14em; line-height: 2em; font-size: 15px; } } .store_cell1 { width: 140px; padding: 20px 5px; } .store_cell2 { width: calc(100% - 150px); padding: 20px 5px; } /********************/ .store_hidden { height: 200px; } .store_scroll { column-gap: 10px; img { height: 200px; width: auto; } } /********************************************************* フォトギャラリー *********************************************************/ .gallery_grid { grid-template-columns: repeat(2, 1fr); gap: 15px; } /****モーダル***/ #lightboxContent { max-width: calc(100% - 40px); max-height: calc(100% - 80px); } .lightboxClose { font-size: 24px; top: 20px; right: 20px; width: 40px; padding-bottom: 5px; height: 40px; } .lightboxPrev, .lightboxNext { position: absolute; top: 50%; transform: translateY(-50%); cursor: pointer; z-index: 99999; background: none; width: 0; height: 0; border-style: solid; border-top: 10px solid transparent; border-bottom: 10px solid transparent; border-right: 12px solid #ffffff; border-left: 0; filter: drop-shadow(0 0 1px #424242) drop-shadow(1px 1px 0 #424242) drop-shadow(-1px -1px 0 #424242); } .lightboxPrev { left: 10px; } .lightboxNext { right: 10px; transform: translateY(-50%) scale(-1,1); } /********************************************************* 衣装ギャラリー *********************************************************/ .cos_tab { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 0; > p { width: 48%; } a { display: block; padding: 0 0 10px 5px; font-size: 16px; width: 100%; .font_satoshi { font-size: 14px; } } .arrow { right: 10px; top: 10px; } } .campaign_tab.column4 { grid-template-columns: repeat(2, 1fr); } .g_cate { margin-top: 15px; span { height: 25px; padding-bottom: 0; font-size: 13px; } } .g_tag { margin-top: 150x; gap: 3px 10px; } /********************************************************* お知らせ *********************************************************/ .news.news_in { a { padding-top: 20px; padding-bottom: 20px; } .n_cell1 { font-weight: 100; } .n_cell2 { max-width: 100%; width: 100%; padding-right: 50px; } } /********************************************************* 資料請求 *********************************************************/ .contact_table { > div { display: block; &:nth-child(n+2) { margin-top: 30px; } } } .con_cell1 { width: 100%; padding-top: 0; border-top: 1px solid #dcdcdc; padding-top: 20px; font-size: 18px; } .con_cell2 { width: 100%; margin-top: 15px; } .size,.area { border: 0; width: 100%; background-color: #fafafa; } .area { height: 220px; } .name_flex { column-gap: 20px; } .label_flex { padding-top: 5px; } input[type=radio] { vertical-align: -6px; } /********************************************************* 会社概要 *********************************************************/ .company01_title { font-size: 26px; } .com01_text { text-align: center; letter-spacing: 0.24em; line-height: 2.4em; } /***********************/ .com02_flex { flex-wrap: wrap; gap:60px; } .com02_right { width: 100%; max-width: 100%; } .com02_ver { display: block; justify-content: flex-end; flex-direction: row-reverse; h2,p { writing-mode: horizontal-tb; } p { margin-right: 20px; } } .com02_width { padding-left: 0; margin-top: 40px; .title_35 { letter-spacing: 0.3em; line-height: 1.8em; } .line_height3 { line-height: 2.4em; } .letter28 { letter-spacing: 0.2em; } } .line_height3 { line-height: 2.4em; } .letter28 { letter-spacing: 0.2em; } .com02_left { width: 100%; max-width: 100%; order: 2; img { width: 100%; height: auto; } } /***************************/ .com03_rellax_cont { height: 350px; width: 94%; .img100 img{ transform: translateY(-40px); height: 580px; width: 100%; object-fit: cover; object-position: 70% 0; } } /***********/ .com_map { iframe { width: 100%; height: 250px; } } .line_height22 { line-height: 2em; } /**************************************************************************** FLOR ****************************************************************************/ .flor_pc_side_fixed { display: flex; position: fixed; top: auto; bottom: 0; transform: translateY(0); right: 0; width: 100%; height: 70px; > p { width: 33.33%; } a { width: 100%; height: 100%; font-size: 13px; padding-top: 5px; } img { display: block; transform: scale(0.8); margin: 0 auto 0; } .doc { display: none; } .photo { display: flex; background-color: #8dc4c1; img { transform: scale(1); } } } /***************************/ .header_flor { padding: 10px 0; &.scrolled { #flor_logo { height: auto; } } } .h_flor_flex { width: 90%; } #flor_logo { height: auto; img { width: 140px; height: auto; } } .h_flor_right { display: none; } /*************/ .flor_main { margin: 75px auto 0; width: 90%; background: url("../images/flor1_sp.png") 60% 0/cover no-repeat; height: 700px; display: flex; justify-content: center; align-items: center; } .flor_main_title { padding-top: 40px; max-width: 1520px; width: 90%; margin: 0 auto; } .flor_title { white-space: nowrap; } .flor_eng { font-size: 10px; margin-top: 15px; } .flor_sub_title { font-size: 12px; margin-top: 10px; white-space: nowrap; &:before { width: 70px; margin-right: 10px; } } /***********************/ .flor01_flex { flex-wrap: wrap; gap: 80px; } .flor01_right { width: 100%; display: flex; align-items: center; } .flor01_width { max-width: 90%; width: 100%; margin-left: auto; margin-right: auto; } .flor01_text { font-size: 16px; letter-spacing: 0.18em; line-height: 2.4em; } .flor01_left { width: 100%; max-width: 94%; order: 2; img { height: 320px; object-position: left 30%; } } /***************************************/ .flor02_container { width: 100%; max-width: auto; margin-left: auto; margin-right: auto; position: relative; .slider { //width: calc(100% + 300px); li { margin: 0 15px; } } .slick-slider { padding: 0; } .campaign_time { margin-top: 15px; letter-spacing: 0.1em; margin-bottom: 10px; } } /***************************************/ .flor03_plan { margin-top: 70px; > div { position: relative; &:nth-child(n+2) { margin-top: 70px; } &:nth-child(1) { .img100 img { object-position: 100% 0; } } } .img100 img { height: 250px; object-fit: cover; } } .flor03_num { top: -35px; left: 15px; column-gap: 2px; .ver { font-size: 20px; top: 2px; } .num { font-size: 45px; letter-spacing: 0.05em; } } .flor03_flex { padding: 25px 0; flex-wrap: wrap; border-bottom: 1px solid #3e3d3b; gap: 20px 30px; h3 { text-align: center; width: 100%; font-size: 26px; } } .flor03_right { width: fit-content; margin-left: auto; margin-right: auto; .price05_flex { display: block; > div { display: flex; justify-content: space-between; column-gap: 15px; &:nth-child(n+2) { margin-top: 10px; } } } .price05_area { width: 60px; height: 20px; font-size: 13px; padding-bottom: 0; position: relative; top: 2px; } .price_p { font-weight: 500; .mini { font-size: 15px; } .p_mark { font-size: 20px; } .font_eng { font-size: 26px; } } } .flor03_grid { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 10px; p { letter-spacing: 0.18em; min-height: 0; padding: 5px 5px 7px; } } .flor03_border { border: 1px solid #222222; border-radius: 10px; padding: clamp(30px, 8%, 75px); } .flor03_flex2 { flex-wrap: wrap; gap: 40px; > div { width: 100%; max-width: 100%; } h3 { width: fit-content; } } .square_p { &.text_14:before { top: 12px; } } .flor03_table { > div { display: block; &:nth-child(n+2) { margin-top: 15px; } } } .flor03_price { text-align: left; padding-left: 20px; .span_14 { font-size: 14px; } .font_eng { font-size: 15px; } .tax { font-size: 13px; } } /**************************/ .flor05_rellax_cont { height: 300px; img { transform: translateY(-100px); height: 450px; } } /************************/ .flor_faq { > div { border-bottom: 1px solid #dcdcdc; &:nth-child(1) { border-top: 1px solid #dcdcdc; } } .plus { top: 13px; } } .flor_q_table { display: flex; align-items: flex-start; position: relative; padding: 20px 10px; column-gap: 15px; cursor: pointer; } .flor_q_cell1 { font-size: 18px; width: 35px; height: 35px; padding-bottom: 4px; } .flor_q_cell2 { font-size: 18px; padding-right: 30px; position: relative; top: 2px; } .flor_a_table { padding: 0 10px 20px; column-gap: 15px; } .flor_a_cell1 { font-size: 18px; width: 35px; height: 35px; padding-bottom: 3px; padding-left: 2px; } .flor_a_cell2 { padding-right: 0; padding-top: 7px; line-height: 2.0em; } /****************************/ .flor_style .sec05_grid { h3 { position: relative; padding-bottom: 15px; padding-top: 15px; font-size: 15px; &:after { content: ""; background: url("../images/arrow2_b.png") 50% 50%/10px 7px no-repeat; background-color: #f4f3f2; width: 25px; height: 25px; top: 17px; } } } /***************************/ .flor_f_more { grid-template-columns: repeat(1, 1fr); gap: 15px; a { height: 70px; column-gap: 10px; } .mail img { top: 1px; } } .flor_insta_bannner { background: url("../images/flor_insta.png") 50% 0/cover no-repeat; border-radius: 10px; position: relative; top: 60px; a { height: 100%; font-size: 17px; border-radius: 0; img { display: block; margin: 0 auto 5px; } } .font_eng { position: absolute; left: 0; top: calc(50% + 15px); transform: translateY(-50%); width: 100%; text-align: center; } } .flor_insta_flex { display: grid; grid-template-columns: repeat(2, 1fr); img { width: 100%; height: auto; } } /***********/ .flor_footer_bg { padding: 120px 0 110px; margin-top: 0; } .flor_f_logo { padding-bottom: 40px; margin-bottom: 0; img { width: 230px; height: auto; } } .flor_f_flex { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 40px 30px; } .flor_f_left { width: 100%; order: 2; } .flor_f_more1 { a { height: 70px; font-size: 17px; } } .flor_f_more2 { margin-top: 15px; a { height: 70px; font-size: 17px; line-height: 1.3em; } img { width: 30px; height: auto; } } .flor_f_nav { max-width: 100%; display: block; column-gap: 0; li:not(.block) { display: none; } a { font-size: 16px; display: block; border-bottom: 1px solid #707070; position: relative; padding: 20px 0; &:before { display: none; } &:after { content: ""; background-color: #FFF; background: url("../images/arrow2_b.png") 50% 50%/10px 7px no-repeat; width: 30px; height: 30px; border-radius: 50%; background-color: #FFF; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } } li:nth-child(n+2) { margin-top: 0; } } .copy { text-align: center; font-size: 13px; letter-spacing: 0.3em; margin-top: clamp(40px, 8%, 120px); } .wp_bb { border-bottom: 1px solid #CCC; padding-bottom: 20px; } } /* スマートフォン 縦(ポートレート) */ @media only screen and (max-width: 480px) { }