/* Scss Document */ $color:#a08f1a; //サイトで良く使う色 $text:#000; //基本的なテキストの色 //hoverアニメーションを使いたい場合に使用 //呼び出し方法(cssに指定) → @include ani; @mixin ani { transition: 0.3s ease-in-out; } //display:flex;を使用した場合等に使用(widthが30%から70%まで)画面幅が740pxで100%に変わる //呼び出し方法(htmlに指定) → .flex_30 ~ .flex_70 @for $i from 30 through 70 { .flex_#{$i} { width: 1% * $i; } } //padding-topとpadding-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .padding100 ~ .padding300 $p: 100; @while $p < 310{ .padding#{$p}{ padding-top: $p + px; padding-bottom: $p + px; } $p: $p + 10; } //margin-topとmargin-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .margin100 ~ .margin300 $m: 100; @while $m < 310{ .margin#{$m}{ margin-top: $m + px; margin-bottom: $m + px; } $m: $m + 10; } //padding-top(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .pt-120 ~ .pt-300 $pt: 110; @while $pt < 310{ .pt-#{$pt}{ padding-top: $pt + px; } $pt: $pt + 10; } //padding-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .pb-120 ~ .pb-300 $pb: 110; @while $pb < 310{ .pb-#{$pb}{ padding-bottom: $pb + px; } $pb: $pb + 10; } //margin-top(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .mt-120 ~ .mt-300 $mt: 110; @while $mt < 310{ .mt-#{$mt}{ margin-top: $mt + px; } $mt: $mt + 10; } //margin-bottom(タブレットで全て80px、スマホで全て60px)←変更可能 //呼び出し方法(htmlに指定) → .mb-120 ~ .mb-300 $mb: 110; @while $mb < 310{ .mb-#{$mb}{ margin-bottom: $mb + px; } $mb: $mb + 10; } * { text-decoration: none !important; } .max_img100 img { max-width: 100%; height: auto; } .side_bar { position: fixed; right: 0; top: calc(50% + 63px); transform: translateY(-50%); z-index: 999; border-top: 1px solid #FFF; border-left: 1px solid #FFF; > div { width: 60px; height: 180px; font-size: 18px; writing-mode: vertical-rl; font-family: "NotoSansCJKjp-Regular_ver"; border-bottom: 1px solid #FFF; &:nth-child(1) { background-color: #2e9568; } &:nth-child(2) { background-color: #f39801; } } a { display: flex; justify-content: center; align-items: center; color: #FFF; width: 100%; height: 100%; font-weight: normal !important; letter-spacing: 0.1em; img { margin-bottom: 10px; } } } .radius10 { border-radius: 10px; } .radius20 { border-radius: 20px; } .bg_gray_fdfdfd { background-color: #fdfdfd; } /************************/ .cy_header { padding: 40px 0; } .h_flex { display: flex; justify-content: space-between; align-items: center; max-width: 1760px; width: 90%; margin: 0 auto; } .logo { width: 175px; position: relative; z-index: 99999999; } .cy_nav { width: calc(100% - 200px); ul { display: flex; justify-content: space-between; max-width: 980px; margin-left: auto; } a { color: inherit; font-weight: bold; position: relative; &:after { content: ""; border-bottom: 2px solid #ffd85f; position: absolute; bottom: -5px; left: 50%; width: 0; transform: translateX(-50%); transition: 0.3s ease; } &:hover:after { width: 100%; } } } /**********/ .top_main { max-width: calc(100% - 120px); margin: 0 auto; width: calc(100% - 120px); overflow: hidden; position: relative; } .top_main,.flexslider,.flexslider li { height: 830px; border-radius: 80px; overflow: hidden; } #fade1 { background: url("../images/fade1.jpg") 50% 0/cover no-repeat; } #fade2 { background: url("../images/fade2.jpg") 50% 0/cover no-repeat; } #fade3 { background: url("../images/fade3.jpg") 50% 0/cover no-repeat; } .flexslider li { animation: fade 4s linear forwards; transform: scale(1.1); } @keyframes fade { 0% { transform: scale(1.1); } 100% { transform: scale(1); } } .top_title { font-size: 60px; color: #FFF; font-weight: bold; position: absolute; left: 50%; transform: translateX(-50%); bottom: 130px; width: 90%; max-width: 1600px; z-index: 500; line-height: 1.5em; opacity: 0; &.titleStart { animation: title 1s ease 0.8s forwards; } } @keyframes title { 0% { opacity: 0; transform: translateX(-50%) translateY(30px); } 100% { opacity: 1; transform: translateX(-50%) translateY(0); } } /*******************/ .title_38 { font-size: 38px; font-weight: bold; } .center { text-align: center; } .eng_16 { font-size: 16px; letter-spacing: 0.2em; color: #2e9568; } .color_2e9568 { color: #2e9568; } .news { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 80px; row-gap: 80px; } .radius30 { overflow: hidden; border-radius: 30px; } .n_cate { margin: 15px 0 10px; span { display: inline-block; padding: 0 10px; line-height: 1.5em; border-radius: 50px; color: #FFF; font-size: 14px; } &.green span{ background-color: #2e9568; } &.orange span{ background-color: #f39801; } } .n_title { font-size: 14px; } .more { width: 100%; max-width: 470px; margin-left: auto; margin-right: auto; position: relative; background-color: #FFF; a { border: 2px solid #101111; border-radius: 5px; display: block; margin: 0 auto; padding: 25px 10px; letter-spacing: 0.05em; position: relative; color: inherit; text-align: center; transition: 0.5s ease; z-index: 500; } img { position: absolute; right: 25px; top: 50%; transform: translateY(-50%); transition: 0.5s ease; } &:after { content: ""; background-color: #101111; position: absolute; top: 0; right: 0; width: 0; height: 100%; transition: 0.5s ease; border-radius: 5px; } &:hover { a { color: #FFF; } .shape_off { opacity: 0; right: 0; } .shape_on { animation: shape_on2 0.5s ease 0.1s forwards; } &:after { width: 100%; left: 0; } } .shape_on { opacity: 0; right: 50px; animation: shape_on 0.5s ease 0s forwards; } &.more_w { background-color: inherit; a { border-color: #FFF; color: #FFF; } &:hover { a { color: #101111; } } &:after { background-color: #FFF; } } } @keyframes shape_on { 0% { opacity: 1; right: 25px; } 50% { opacity: 0; right: 50px; } 100% { opacity: 0; right: 50px; } } @keyframes shape_on2 { 0% { opacity: 0; right: 50px; } 50% { opacity: 0; right: 50px; } 100% { opacity: 1; right: 25px; } } /***********************/ .top_af_bg { position: relative; &:after { content: ""; background-color: #2e9568; position: absolute; top: 0; right: 0; height: 100%; max-width: 1840px; width: calc(100% - 10px); border-radius: 80px 0 0 80px; } } .w900_auto { width: 100%; max-width: 900px; margin-left: auto; margin-right: auto; } .be_af_border { display: flex; align-items: center; justify-content: center; &:before,&:after { content: ""; border-bottom: 2px solid #FFF; width: 42px; height: 2px; } &:before { margin-right: 30px; } &:after { margin-left: 30px; } } .title_24 { font-size: 24px; font-weight: bold; } .text_15 { font-size: 15px; } .letter003 { letter-spacing: 0.03em; } .line_height22 { line-height: 2.2em; } .bg_w { background-color: #FFF; } .radius100 { border-radius: 100px; } .padding50 { padding: 50px; } .title_28 { font-size: 28px;font-weight: bold; } .inline_block { display: inline-block; } .text_20 { font-size: 20px; } /****************/ .top_bg { background: url("../images/top5.jpg") 50% 0/cover no-repeat; height: 680px; } .ver_title { position: absolute; right: 0; top: -390px; z-index: 500; background-color: #FFF; width: 250px; border-radius: 15px; padding: 70px 20px; display: flex; align-items: center; writing-mode: vertical-rl; h2 { font-family: "NotoSansCJKjp-Regular_ver"; white-space: nowrap; text-align: left; } p { white-space: nowrap; text-align: left; } } .title_35 { font-size: 35px; font-weight: bold; } .big_40 { font-size: 40px; } .span_bb { background:linear-gradient(transparent 60%, #ffd85f 60%); } .text_17 { font-size: 17px; } .top_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 100px; row-gap: 100px; > div { position: relative; &:after { content: ""; background: url("../images/top7.png") 50% 50%/45px 100% no-repeat; width: 100px; height: 46px; position: absolute; right: -100px; top: 50%; transform: translateY(-50%); } &:last-child:after { display: none; } } } .top_banner { background: url("../images/top10.png") 50% 0/cover no-repeat; height: 400px; position: relative; a { display: block; color: #FFF; position: relative; z-index: 550; height: 100%; } &:after { content: ""; border: 2px solid #FFF; position: absolute; top: 20px; left: 20px; width: calc(100% - 40px); height: calc(100% - 40px); border-radius: 20px; } .banner_title { position: absolute; right: 80px; top: 50%; transform: translateY(-50%); z-index: 500; color: #FFF; h2 { font-size: 40px; font-weight: bold; line-height: 1.5em; letter-spacing: 0.15em; } p { margin-top: 30px; font-size: 15px; text-align: right; img { margin-left: 30px; } span { border-bottom: 2px solid #FFF; display: inline-block; padding-bottom: 5px; } } } } .banner_img { position: absolute; left: 40px; top: 0; z-index: 500; } /**********************/ .top_af_bg2 { position: relative; &:after { content: ""; background: url("../images/top_bg.jpg") left 0/320px 260px repeat; position: absolute; top: 0; left: 0; max-width: 1840px; width: calc(100% - 10px); height: 100%; border-radius: 0 80px 80px 0; } } .top_model { a { color: inherit; } img { transition: 0.5s ease; } a:hover { .model_off { opacity: 0; } .model_on { opacity: 1; } .model_shape{ &:after { transform: translate(-50%,-50%) scale(1.05); } } } } .model_title { position: relative; padding:10px 60px 10px 20px; font-size: 20px; font-weight: bold; p { letter-spacing: 0.15em; } span { font-size: 28px; } } .model_shape { width: 37px; height: 37px; border: 1px solid #2e9568; border-radius: 50%; position: absolute; right: 20px; top: 8px; overflow: hidden; background-color: #FFF; img { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); z-index: 500; } &:after { content: ""; background-color: #2e9568; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%) scale(0); border-radius: 50%; transition: 0.3s ease; width: 100%; height: 100%; } } .model_on { opacity: 0; } /************/ .slider.slider_style { width: calc(100% + 600px); margin-left: -35px; h3 { font-size: 22px; margin: 15px 0 20px; } p { font-size: 15px; } } .slider li { float: left; position: relative; z-index: 900; padding: 0 35px } .radius40 { border-radius: 60px; overflow: hidden; } /************************/ .bg_gray_f5f5f5 { background-color: #f5f5f5; } .blog_grid { display: flex; justify-content: space-between; flex-wrap: wrap; > div { max-width: 590px; width: 48%; margin: 25px 0; a { color: inherit; display: flex; justify-content: space-between; } } } .blog_left { width: 46%; img { width: 100%; height: auto; } } .blog_right { width: 49%; padding-top: 25px; } .b_time { font-size: 14px; } .b_title { font-weight: bold; margin-top: 5px; } /*************************/ .under_banner { display: flex; justify-content: space-between; > div { width: 50%; height: 450px; position: relative; overflow: hidden; a { display: flex; justify-content: center; align-items: center; height: 100%; position: relative; z-index: 500; &:hover { &:after { opacity: 0; } .banner_bg1,.banner_bg2 { filter: blur(0); } } &:after { content: ""; background-color: rgba(0,0,0,0.31); position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: 0.5s ease; } } } } .banner_bg1 { background: url("../images/top19.jpg") 50% 0/cover no-repeat; position: absolute; left: 0; top: 0; width: 100%; height: 100%; filter: blur(2px); transition: 0.5s ease; } .banner_bg2 { background: url("../images/top20.jpg") 50% 0/cover no-repeat; position: absolute; left: 0; top: 0; width: 100%; height: 100%; filter: blur(2px); transition: 0.5s ease; } /************************/ .f_bg { background-color: #2e9568; padding: 130px 0; color: #FFF; position: relative; } .page_top { position: absolute; right: 20px; bottom: 40px; cursor: pointer; } .f_flex { display: flex; justify-content: space-between; } .f_left { width: 400px; } .f_logo img { width: 312px; height: auto; } .f_tel { margin-top: 5px; font-size: 35px; } .f_right { width: calc(100% - 400px); } .f_links { width: 100%; max-width: 340px; margin-left: auto; a { margin: 10px 0; background-color: #FFF; display: block; padding: 20px 30px; border-radius: 10px; position: relative; color: #2e9568; font-weight: bold; img { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); } } } .f_nav { margin-top: 10px; display: flex; max-width: 500px; margin-left: auto; margin-top: 20px; > div:nth-child(1) { display: flex; align-items: center; font-size: 14px; a { color: #FFF; } p { padding: 0 20px; border-right: 1px solid #FFF; line-height: 1em; &:last-child { border-right: 0; } } } > div:nth-child(2) { display: flex; align-items: center; a { margin: 0 10px; } } } .copy { font-size: 14px; background-color: #FFF; padding: 40px 0; text-align: center; } /******************************************************************* 家づくりの想い *******************************************************************/ .concept_main { background: url("../images/concept1.jpg") 50% 0/cover no-repeat; } .main_size { width: calc(100% - 120px); max-width: calc(100% - 120px); margin: 0 auto; height: 400px; overflow: hidden; border-radius:80px; text-align: center; display: flex; justify-content: center; align-items: center; color: #FFF; h2 { font-weight: bold; font-size: 50px; line-height: 1.3em; } p { margin-top: 0; font-size: 20px; letter-spacing: 0.2em; } } /**********************/ .concept_padding { padding: 130px 0 430px; } .title_45 { font-size: 45px;font-weight: bold; } .yellow_ffd85f { color: #ffd85f; } .big_50 { font-size: 50px; } .letter005 { letter-spacing: 0.05em } .line_height24 { line-height: 2.4em; } .con_ab1 { position: absolute; left: 0; bottom: 0; } .con_ab2 { position: absolute; right: 0; bottom: 70px; } .con_ab_img1 { position: absolute; left: 0; bottom: -60px; } .con_ab_img2 { position: absolute; left: 50%; transform: translateX(-50%); text-align: right; bottom: -300px; width: 100%; max-width: 1600px; img { max-width: 430px; } } /********************/ .bg_fafa_img { background: url("../images/concept_bg.jpg") left 0/880px 623px repeat; } .radius_right_top { border-top-right-radius: 120px; } .radius_left_bottom{ border-bottom-left-radius: 120px; } .concept_flex { display: flex; justify-content: space-between; position: relative; &.right_style { .concept_left { justify-content: flex-start; position: absolute; right: 0; left: auto; } .concept_right { border-radius: 0 80px 80px 0; margin-left: 0; } } } .concept_left { width: 27%; display: flex; justify-content: flex-end; position: absolute; top: 0; left: 0; } .concept_title { .font2 { width: 108px; height: 108px; background-color: #2e9568; color: #FFF; display: flex; justify-content: center; align-items: center; font-size: 48px; border-radius: 20px; } h3 { font-family: "JPOM00H_ver"; writing-mode: vertical-rl; text-orientation: upright; font-size: 42px; line-height: 1.5em; padding:20px 0; position: relative; width: 108px; display: flex; align-items: center; white-space: nowrap; } } .concept_right { width:66%; height: 580px; border-radius: 80px 0 0 80px; margin-left: auto; padding-right: 14px; } .concept_bg1 { background: url("../images/concept5.png") 50% 0/cover no-repeat; } .w960_right { width:66%; margin-left: auto; } .concept_bg2 { background: url("../images/concept6.png") 50% 0/cover no-repeat; } .concept_bg3 { background: url("../images/concept7.png") 50% 0/cover no-repeat; } .concept_bg4 { background: url("../images/concept8.png") 50% 0/cover no-repeat; } /***********************/ .under_flex { display: flex; justify-content: space-between; > div { width: 48%; position: relative; border-radius: 50px; overflow: hidden; &:after { content: ""; background-color: rgba(0,0,0,0.5); position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: 0.5s ease; } &:hover:after { opacity: 0; } } a { color: #FFF; position: relative; z-index: 500; display: flex; justify-content: center; align-items: center; text-align: center; height: 320px; } .shape { position: absolute; right: 25px; bottom: 25px; } h3 { font-size: 30px; font-weight: bold; } } .under_bg1 { background: url("../images/concept9.png") 55% 0/cover no-repeat; } .under_bg2 { background: url("../images/concept10.png") 50% 0/cover no-repeat; } /******************************************************************* 家づくりの流れ *******************************************************************/ .flow_main { background: url("../images/flow1.jpg") 50% 0/cover no-repeat; } /*******************/ .flow_flex { display: flex; justify-content: center; flex-wrap: wrap; width: 100%; max-width: 1100px; margin: 0 auto; > div { width: calc(25% - 60px); position: relative; margin: 30px 30px; text-align: center; &:nth-child(1) .max_img100:before { display: none; } } .max_img100 { position: relative; &:before { content: ""; background: url("../images/flow3.jpg") 50% 0/20px 16px no-repeat; width: 120px; height: 16px; position: absolute; left: -90px; top: 50%; transform: translateY(-50%); } } p { margin-top: 20px; font-weight: bold; font-size: 20px; line-height: 1.2em; span { font-size: 15px; } } } .flow_bg { background: url("../images/flow10.jpg") 50% 0/cover no-repeat; height: 700px; border-radius: 0 100px 0 100px; } /***********************/ .orange_f39801 { color: #f39801; } .green_adbc32 { color: #adbc32; } .title_30 { font-size: 30px; } .flow_flex2 { background-image : linear-gradient(to right, #2e9568, #2e9568 2px, transparent 2px, transparent 8px); /* 幅2の線を作る */ background-size: 8px 2px; /* グラデーションの幅・高さを指定 */ background-position: left top; /* 背景の開始位置を指定 */ background-repeat: repeat-x; /* 横向きにのみ繰り返す */ > div { display: flex; justify-content: space-between; padding: 80px 0; background-image : linear-gradient(to right, #2e9568, #2e9568 2px, transparent 2px, transparent 8px); /* 幅2の線を作る */ background-size: 8px 2px; /* グラデーションの幅・高さを指定 */ background-position: left bottom; /* 背景の開始位置を指定 */ background-repeat: repeat-x; /* 横向きにのみ繰り返す */ } } .flow_left { max-width: 430px; width: 38%; } .flow_right { width: 60%; h3 { margin: 20px 0 10px; } } .point { color: #2e9568; font-size: 18px; letter-spacing: 0.12em; span { font-size: 30px; padding-left: 10px; } &:after { content: ""; border-bottom: 1px solid #2e9568; width: 25px; display: block; margin-top: 5px; } } /********************/ .flow_list { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 110px; row-gap: 60px; padding-right: 110px; max-width: 1210px; margin-left: auto; margin-right: auto; > div { position: relative; &:last-child .img100:after { display: none; } } h3 { text-align: center; font-size: 20px; letter-spacing: 0; line-height: 1.3em; margin-top: 20px; font-weight: bold; } .img100 { position: relative; &:after { content: ""; background: url("../images/flow15.jpg") 50% 0/28px 22px no-repeat; width: 110px; height: 22px; position: absolute; top: 50%; transform: translateY(-50%); right: -110px; text-align: center; } } } .flow_num { font-size: 35px; color: #2e9568; position: absolute; left: 15px; top: -25px; text-shadow: -1px -1px 0 #FFF, 1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px 1px 0 #FFF; z-index: 500; } .grid3 { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 60px; row-gap: 60px; h3 { text-align: center; margin-bottom: 10px; font-size: 20px; } } /******************************************************************* ごあいさつ *******************************************************************/ .greeting_main { background: url("../images/greeting1.jpg") 50% 0/cover no-repeat; } /**************/ .title_55 { font-size: 55px; font-weight: bold; line-height: 1.5em; } .big_60 { font-size: 60px; } .name_box { display: flex; justify-content: flex-end; align-items: center; p { font-size: 18px; text-align: right; } .name1 { font-size: 20px; } .name2 { font-size: 28px; } &:before { content: ""; border-bottom: 3px solid #2e9568; flex-grow: 2; margin-right: 30px; } } /******************************************************************* 沿革 *******************************************************************/ .history_main { background: url("../images/history1.jpg") 80% 0/cover no-repeat; } /*******/ .history_table { position: relative; > div { display: flex; justify-content: space-between; font-size: 17px; font-weight: bold; &:nth-child(n+2) { margin-top: 55px; } } &:after { content: ""; border-left: 1px solid #2e9568; width: 1px; height: calc(100% - 22px); position: absolute; left: 185px; top: 10px; } } .his_cell1 { width: 190px; position: relative; &:after { content: ""; background-color: #2e9568; width: 9px; height: 9px; border-radius: 50%; position: absolute; right: 0; top: 10px; } } .his_cell2 { width: calc(100% - 260px); } /******************************************************************* 制震装置MIRAIE *******************************************************************/ .miraie_main { background: url("../images/miraie1.jpg") 50% 0/cover no-repeat; } /***********/ .miraie_af_bg { position: relative; &:after { content: ""; background-color: #2e9568; border-radius: 80px 0 0 80px; width: calc(100% - 20px); max-width: 1840px; position: absolute; right: 0; top: 0; height: calc(100% - 120px); } } .flex_center { display: flex; justify-content: center; } .padding60_20 { padding: 60px 20px; } /*************/ .miraie_flex { display: flex; justify-content: space-between; > div { position: relative; width: calc(50% - 110px); border: 2px solid #d2d2d2; border-radius: 20px; padding: 70px 20px; &:nth-child(1) { &:after { content: ""; background: url("../images/miraie5.png") 50% 0/100px 101px no-repeat; position: absolute; top: 50%; right: -220px; width: 220px; height: 101px; transform: translateY(-50%); } } } .max_img100 { text-align: center; } h3 { font-size: 25px; text-align: center; border-radius: 50px; margin: 30px 0 20px; font-weight: bold; line-height: 1.3em; padding: 3px 0 0; } > div { &:nth-child(1) { h3 { color: #2e9568; border: 1px solid #2e9568; } } &:nth-child(2) { h3 { background-color: #2e9568; border: 1px solid #2e9568; color: #FFF; } } } p { padding: 0 5px; } } .miraie_width { width: 100%; max-width: 350px; margin-left: auto; margin-right: auto; } /*******************/ .miraie_flex2 { display: flex; justify-content: space-between; > div { width: 31.33%; max-width: 360px; position: relative; } .max_img100 { border: 2px solid #d2d2d2; border-radius: 30px; height: 240px; display: flex; justify-content: center; align-items: center; text-align: center; } h3 { min-height: 120px; display: flex; justify-content: center; align-items: center; font-size: 23px; text-align: center; line-height: 1.5em; } .mini { font-size: 14px; } } .miraie_num { position: absolute; left: -15px; top: -15px; z-index: 500; } /**************/ .title_33 { font-size: 33px; } .mini_17 { font-size: 17px; position: relative; top: -13px; } .padding40_20 { padding: 40px 20px; } .bg_w { background-color: #FFF; } .padding100_100 { padding: 100px; } /***************/ .text_23 { font-size: 23px; } .span_17 { font-size: 17px; position: relative; top: -15px; } /**************/ .span_13 { font-size: 13px; position: relative; top: -5px; } .text_13 { font-size: 13px; } .line_height15 { line-height: 1.5em; } /******************************************************************* モデルハウス *******************************************************************/ .model_main { background: url("../images/model1.jpg") 50% 0/cover no-repeat; } /**詳細***************/ .view_main { padding: 80px 0 150px; h2 { font-size: 50px; letter-spacing: 0.03em; line-height: 1.3em; } .eng_16 { font-size: 20px; } } .slider1 { text-align: center; li { padding: 0 140px; margin: 0; } img { width: 100%; height: auto; } } .slider2 { display: grid; grid-template-columns: repeat(10, 1fr); column-gap: 20px; row-gap: 20px; margin-top: 40px; img { width: 100%; height: auto; } li { padding: 0; margin: 0; cursor: pointer; overflow: hidden; border-radius: 25px; transition: 0.3s ease; position: relative; &.thumbnail-current:after{ content: ""; border: 2px solid #2e9568; position: absolute; top: 0; left: 0; border-radius: 25px; width: 100%; height: 100%; } } } .view_bb { padding-bottom: 20px; background-image : linear-gradient(to right, #2e9568, #2e9568 2px, transparent 2px, transparent 8px); /* 幅2の線を作る */ background-size: 8px 2px; /* グラデーションの幅・高さを指定 */ background-position: left bottom; /* 背景の開始位置を指定 */ background-repeat: repeat-x; /* 横向きにのみ繰り返す */ } .view_flex { > div { display: flex; justify-content: space-between; margin: 25px 0; font-size: 18px; } } .view_cell1 { width: 130px; background-color: #2e9568; color: #FFF; text-align: center; border-radius: 5px; padding-top: 3px; line-height: 1.3em; display: flex; justify-content: center; align-items: center; } .view_cell2 { width: calc(100% - 170px); } .more_flex { display: flex; justify-content: space-between; .more { width: 47%; margin: 0; max-width: 600px; font-size: 20px; } } /******************************************************************* ZEH *******************************************************************/ .zeh_main { background: url("../images/zeh1.jpg") 50% 0/cover no-repeat; } /**************/ .zeh_img { text-align: right; img { max-width: 100%; height: auto; } } .zeh_title { text-align: center; position: relative; max-width: 1100px; margin-left: auto; margin-right: auto; font-size: 45px; letter-spacing: 0.05em; padding: 15px 50px; &:before,&:after { content: ""; position: absolute; background: url("../images/zeh4.png") left 0/100% 100% no-repeat; width: 45px; height: 38px; } &:before { left: 0; top: 0; } &:after { right: 0; bottom: 0; transform: scale(-1,-1); } } .span_50 { font-size: 50px; } .blue_6ec4cc { color: #6ec4cc; } /********************/ .zeh_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 70px; row-gap: 70px; > div { background-color: #FFF; padding: 40px 20px; border-radius: 30px; &:nth-child(1) { border: 2px solid #f39801; h3 { color: #f39801; } } &:nth-child(2) { border: 2px solid #adbc32; h3 { color: #adbc32; } } &:nth-child(3) { border: 2px solid #6ec4cc; h3 { color: #6ec4cc; } } } h3 { font-size: 30px; text-align: center; margin: 10px 0 20px; } p { font-size: 15px; text-align: center; } } .zeh_icon { text-align: center; height: 75px; display: flex; justify-content: center; align-items: center; } .zeh_bg { background-color: #2e9568; padding: 40px; border-radius: 200px; color: #FFF; } .w860_auto { max-width: 860px; margin-left: auto; margin-right: auto; } .check_list { li { margin: 5px 0; position: relative; font-size: 25px; padding-left: 30px; } img { position: absolute; left: 0; top:12px; } } /****************/ .zeh_grid2 { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 30px; row-gap: 30px; > div { background-color: #FFF; border-radius: 30px; padding: 60px 40px; display: flex; justify-content: space-between; align-items: center; } } .zeh_left { width: 117px; } .zeh_right { width: calc(100% - 150px); } /***********************************/ .zeh_table { table { width: 100%; } th { width: 300px; } th,td { padding: 23px 0; font-weight: bold; line-height: 1.5em; text-align: center; } td { border: 1px solid #eeeeee; } tr:nth-child(1) td { background-color: #2e9568; color: #FFF; font-size: 15px; letter-spacing: 0; border-right: 1px solid #eeeeee; text-align: center; &:nth-child(2) { border-radius: 10px 0 0 0; } &:last-child { border-radius: 0 10px 0 0; border-right: 0; } } tr:nth-child(n+2) { th { background-color: #2e9568; color: #FFF; text-align: center; border-bottom: 1px solid #eeeeee; } td { font-size: 20px; } } tr:nth-child(2) { th { border-radius: 10px 0 0 0; } } tr:last-child { th { border-radius: 0 0 0 10px; } } } /******************************************************************* 標準仕様 *******************************************************************/ .iproud_main { background: url("../images/ip1.jpg") 50% 0/cover no-repeat; } /*************/ .title_40 { font-size: 40px; } .ip_border_title { background: url("../images/ip_border.png") 50% 0/100% 100% no-repeat; width: 100%; height: 113px; padding-top: 15px; } .red_e21422 { color: #e21422; } .text_18 { font-size: 18px; } /****************/ .ip_border { border: 3px solid #2e9568; border-radius: 30px; padding: 60px 20px; } /*******************/ .tab_bg { background-color: #f5f5f5; padding: 80px 0; } .tab,.tab2 { ul { display: grid; grid-template-columns: repeat(5, 1fr); column-gap: 20px; row-gap: 20px; } a { color: #62584e; border: 2px solid #62584e; display: block; padding: 20px 5px; text-align: center; font-size: 23px; border-radius: 10px; transition: 0.5s ease; &:hover { background-color: #62584e; color: #FFF; } } .active a { background-color: #62584e; color: #FFF; } } .af_bb { &:after { content: ""; display: block; border-bottom: 3px solid #2e9568; width: 60px; margin: 10px auto 0; } } .sp_pdf { display: none; } .tab_mt { margin-top: 80px; } /******************************************************************* 会社概要 *******************************************************************/ .company_main { background: url("../images/company_top1.jpg") 50% 0/cover no-repeat; } /****************/ .com_left { position: absolute; left: 0; top: 0; writing-mode: vertical-rl; max-width: 575px; width: 36%; } .com_title { font-size: 45px; white-space: nowrap; line-height: 2.2em; span { font-size: 50px; } } .com_right { width: 62%; margin-left: auto; padding-top: 100px; p { padding-right: 14px; } } .com_bg { background: url("../images/company_top2.jpg") 60% 0/cover no-repeat; height: 510px; max-width: 1180px; border-radius: 80px 0 0 80px; } /********************/ .com_flex { display: flex; justify-content: space-between; flex-wrap: wrap; > div { max-width: 480px; width: 48%; position: relative; &:nth-child(n+3) { margin-top: 70px; } } a { color: inherit; &:hover { .com_off { opacity: 0; } .com_on { opacity: 1; } } } h3 { letter-spacing: 0.05em; } } .com_shape { position: absolute; right: 20px; bottom: 10px; img { transition: 0.5s ease; } .com_on { position: absolute; right: 0; top: 0; opacity: 0; } } /******************************************************************* 会社概要 *******************************************************************/ .profile_main { background: url("../images/company1.jpg") 50% 0/cover no-repeat; } .pro_table { position: relative; > div { display: flex; justify-content: space-between; font-size: 18px; position: relative; &:after { content: ""; background-image : linear-gradient(to right, #62584e, #62584e 2px, transparent 2px, transparent 8px); /* 幅2の線を作る */ background-size: 8px 2px; /* グラデーションの幅・高さを指定 */ background-position: left bottom; /* 背景の開始位置を指定 */ background-repeat: repeat-x; /* 横向きにのみ繰り返す */ position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; } } &:before { content: ""; background-image : linear-gradient(to right, #62584e, #62584e 2px, transparent 2px, transparent 8px); /* 幅2の線を作る */ background-size: 8px 2px; /* グラデーションの幅・高さを指定 */ background-position: left top; /* 背景の開始位置を指定 */ background-repeat: repeat-x; /* 横向きにのみ繰り返す */ position: absolute; top: 0; left: 0; width: 100%; height: 2px; z-index: 500; } } .pro_cell1 { padding: 40px 30px; width: 250px; background-color: #dcede6; } .pro_cell2 { width: calc(100% - 250px); padding: 40px 20px 40px 70px; } .map { iframe { width: 100%; height: 650px; } } /******************************************************************* 資料請求・お問い合わせ *******************************************************************/ .contact_border { border: 2px solid #2e9568; border-radius: 30px; padding: 40px; text-align: center; max-width: 830px; margin-left: auto; margin-right: auto; } .title_22 { font-size: 22px; } .c_tel { font-size: 38px; line-height: 1.3em; margin: 10px 0 0; img { position: relative; margin-right: 10px; top: -3px; } } .contact_form { border-bottom: 2px solid #d9d8d7; padding-bottom: 60px; > div { display: flex; justify-content: space-between; margin: 40px 0; font-size: 15px; } } .c_cell1 { width: 320px; padding-top: 12px; position: relative; } .hissu { background-color: #f39801; padding: 0 15px; border-radius: 50px; color: #FFF; font-size: 14px; position: absolute; right: 0; top: 10px; } .c_cell2 { width: calc(100% - 340px); } .size,.area { padding: 10px 25px; width: 100%; background-color: #f5f5f5; border: 0; border-radius: 5px; } .size { height: 55px; } .half_size .size{ max-width: 330px; } .area { height: 250px; } .postal_flex { display: flex; align-items: center; justify-content: space-between; width: 100%; max-width: 330px; } .postal_cell1 { width: 20px; } .postal_cell2 { margin: 0 10px 0; flex-grow: 2; width: calc(100% - 155px); } .postal_cell3 { width: 115px !important; span { background-color: #62584e; color: #FFF; font-size: 14px; border-radius: 50px; text-align: center; display: block; padding: 5px 0; font-weight: normal; } } .label_flex { display: flex; flex-wrap: wrap; margin-top: 3px; max-width: 800px; label { } input[type=radio] { position: relative; left: -10px; } .wpcf7-list-item { display: inline-block; margin-right: 25px; padding-left: 10px; margin-top: 10px; } } .day_table { display: flex; align-items: center; justify-content: space-between; max-width: 370px; } .day_cell1 { width: 70px; } .day_cell2 { width: calc(100% - 70px); } .calendar_icon { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); } /************/ .indent_p { text-indent: -1em; padding-left: 1em; } .a_bb a{ color: #2e9568; border-bottom: 1px solid #2e9568; } .submit { width: 100%; max-width: 470px; margin-left: auto; margin-right: auto; position: relative; transition: 0.5s ease; background-color: #101111; border-radius: 5px; input { display: block; width: 100%; text-align: center; padding: 25px; color: #FFF; font-size: 20px; border: 0; position: relative; z-index: 500; background: none; } .c_shape { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); } &:hover { background-color: #2e9568; } } /******************************************************************* 来場予約 *******************************************************************/ .border_color_black.be_af_border:before, .border_color_black.be_af_border:after { border-color: #101111; } .zeh_bg.bg_w { background-color: #FFF; } .re_inline_block { font-size: 19px; display: flex; align-items: center; justify-content: space-between; width: 100%; max-width: 680px; margin: 0 auto; span { display: block; } span:nth-child(1) { width: 300px; } span:nth-child(2) { width: 20px; } span:nth-child(3) { width: calc(100% - 380px); } } /**********/ .day_flex { display: flex; justify-content: space-between; max-width: 790px; } .day_left { width: 49%; } .day_right { width: 49%; } .re_size { max-width: 180px; position: relative; .size { width: calc(100% - 30px); } } .re_span { position: absolute; right: 0; top: 50%; transform: translateY(-50%); } /******************************************************************* プライバシーポリシー *******************************************************************/ .pri_title { position: relative; font-size: 25px; letter-spacing: 0.05em; padding-left: 60px; .font2 { font-size: 18px; display: flex; justify-content: center; align-items: center; background-color: #2e9568; border-radius: 50%; width: 40px; height: 40px; position: absolute; left: 0; top: 0; padding-left: 1px; padding-bottom: 1px; color: #FFF; } } .pri_pl { padding-left: 16px; } .pri_link { width: 100%; max-width: 370px; position: relative; background-color: #FFF; a { border: 2px solid #101111; border-radius: 5px; display: block; margin: 0 auto; padding: 25px 10px 25px 20px; letter-spacing: 0.05em; position: relative; color: inherit; text-align: center; transition: 0.5s ease; z-index: 500; } &:after { content: ""; background-color: #101111; position: absolute; top: 0; right: 0; width: 0; height: 100%; transition: 0.5s ease; border-radius: 5px; } &:hover { a { color: #FFF; } &:after { width: 100%; left: 0; } img { filter: invert(100%); } } img { transition: 0.5s ease; } } .pri_mail { position: absolute; top: calc(50% - 2px); transform: translateY(-50%); left: 45px; } .pri_shape { position: absolute; top: calc(50% - 2px); transform: translateY(-50%); right: 30px; } /******************************************************************* 施工事例 *******************************************************************/ .works_main { background: url("../images/case1.jpg") 50% 0/cover no-repeat; } /**********************/ .works_flex { display: flex; justify-content: space-between; } .works_left { width: calc(100% - 320px); display: flex; justify-content: space-between; flex-wrap: wrap; > div { width: 48%; &:nth-child(n+3) { margin-top: 80px; } .img100 { border-radius: 55px; overflow: hidden; } } p { font-size: 18px; margin-top: 15px; } } .title_23 { font-size: 23px; } .works_right { width: 220px; } .title_23 { font-size: 23px; } .cate_bb { border-bottom: 1px solid #76706a; padding-bottom: 20px; margin-bottom: 40px; } .cate_list { li { margin: 15px 0; } a { color: inherit; } span { color: #2e9568; margin-right: 15px; } } /******************************************************************* お知らせ *******************************************************************/ .news_tab { background-color: #f5f5f5; padding: 15px; display: flex; justify-content: space-between; border-radius: 50px; width: 100%; max-width: 370px; margin: 0 auto; > p { width: 32.33%; a { display: block; color: #2e9568; border-radius: 50px; padding: 5px 0 2px; text-align: center; transition: 0.5s ease; &:hover { background-color: #2e9568; color: #FFF; } } } } /***************/ .b_time_in { color: #adbc32; font-size: 14px; margin-top: 15px; } .b_title { font-size: 16px; line-height: 1.6em; margin-top: 5px; } /******************************************************************* アイビーホームの家作り *******************************************************************/ .commit_main { background: url("../images/commit1.jpg") 50% 0/cover no-repeat; } /*******************/ .commit_width { width: calc(100% - 20px); max-width: 1600px; margin-left: auto; } .commit_bg { background: url("../images/commit2.jpg") 100% 0/cover no-repeat; border-radius: 100px 0 0 100px; height: 660px; width: calc(100% + 320px); } .commit_title { background-color: #FFF; display: inline-block; padding: 50px 20px 0 0; border-radius: 0 20px 0 0; margin-top: -100px; font-size: 45px; span { font-size: 50px; } } .commit_grid { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 80px; row-gap: 120px; > div { position:relative; } h3 { margin: 25px 0 25px; text-align: center; font-size: 30px; letter-spacing: 0.03em; &:after { content: ""; border-bottom: 2px solid #2e9568; width: 30px; margin: 2px auto 0; display: block; } } .more { margin-top: 40px; background-color: #FFF; &:after { background-color: #2e9568; } a { border: 2px solid #2e9568; color: #2e9568; &:hover { color: #FFF; } } } } .commit_text { font-size: 15px; } /* PC用 ------------------------------------------------------------*/ @media only screen and (max-width: 1699px) { } @media only screen and (max-width: 1400px) { } @media only screen and (max-width: 1300px) { /************************/ .cy_nav { ul { max-width: 800px; } a { font-size: 14px; } } /****************/ .ver_title { top: -500px; } } @media only screen and (max-width: 1024px) { $p: 100; $pixel:120px; @while $p < 310{ .padding#{$p}{ padding-top: $pixel; padding-bottom: $pixel; } $p: $p + 10; } $m: 100; @while $m < 310{ .margin#{$m}{ margin-top: $pixel; margin-bottom: $pixel; } $m: $m + 10; } $pt: 120; @while $pt < 310{ .pt-#{$pt}{ padding-top: $pixel; } $pt: $pt + 10; } $pb: 120; @while $pb < 310{ .pb-#{$pb}{ padding-bottom: $pixel; } $pb: $pb + 10; } $mt: 120; @while $mt < 310{ .mt-#{$mt}{ margin-top: $pixel; } $mt: $mt + 10; } $mb: 120; @while $mb < 310{ .mb-#{$mb}{ margin-bottom: $pixel; } $mb: $mb + 10; } /************************/ .cy_header { padding: 30px 0; } .cy_nav { display: none; } /**********/ .top_main,.flexslider,.flexslider li { height: 600px; border-radius: 60px; } .top_title { font-size: 40px; } /*******************/ .title_38 { font-size: 28px; font-weight: bold; } .news { column-gap: 20px; row-gap: 60px; } /****************/ .ver_title { top: -350px; } .title_35 { font-size: 26px; font-weight: bold; } .big_40 { font-size: 30px; } .top_banner { .banner_title { h2 { font-size: 30px; } } } /************/ .slider.slider_style { width: calc(100% + 200px); margin-left: 0; padding-left: 10px; h3 { font-size: 18px; margin: 15px 0 20px; } p { font-size: 15px; } } .slider.slider_style li { float: left; position: relative; z-index: 900; padding: 0 20px 0 0; img { border-radius: 50px; } } .radius40 { border-radius: 40px; overflow: hidden; } /************************/ .f_bg { padding: 130px 0; } .f_flex { display: block; } .f_left { width: 100%; text-align: center; } .f_right { width: 100%; margin-top: 40px; } .f_links { max-width: 340px; margin: 0 auto; } .f_nav { justify-content: center; max-width: 100%; margin-top: 40px; } /******************************************************************* 家づくりの想い *******************************************************************/ .main_size { h2 { font-size: 34px; } } /**********************/ .concept_padding { padding: 130px 0 200px; } .title_45 { font-size: 32px; } .big_50 { font-size: 40px; } .sp_flex { display: flex; justify-content: space-between; margin-top: 50px; img { width: 100%; height: auto; } } .con_ab_img1 { position: static; width: 48%; } .con_ab_img2 { position: static; width: 48%; transform: translateX(0); img { max-width: 100%; } } /********************/ .concept_title { h3 { font-size: 34px; } } /******************************************************************* 家づくりの流れ *******************************************************************/ .title_30 { font-size: 26px; } .flow_right { width: 57%; } /********************/ .flow_list { column-gap: 60px; padding-right: 60px; .img100 { &:after { width: 60px; right: -60px; } } } /******************************************************************* ごあいさつ *******************************************************************/ .title_55 { font-size: 35px; } .big_60 { font-size: 45px; } .padding100_100 { padding: 40px; } /******************************************************************* モデルハウス *******************************************************************/ .slider2 { column-gap: 10px; row-gap: 10px; li { border-radius: 10px; &.thumbnail-current:after{ border-radius: 10px; } } } /******************************************************************* ZEH *******************************************************************/ .zeh_title { font-size: 35px; } .span_50 { font-size: 40px; } /********************/ .zeh_grid { column-gap: 20px; row-gap: 20px; } .zeh_bg { padding: 40px; border-radius: 50px; } /****************/ .ip_border_title { height: 85px; padding-top: 15px; } /******************************************************************* 会社概要 *******************************************************************/ .com_left { position: absolute; left: 0; top: 0; writing-mode: vertical-rl; max-width: 575px; width: 30%; } .com_title { font-size: 36px; white-space: nowrap; line-height: 2.2em; span { font-size: 50px; } } .com_right { width: 66%; margin-left: auto; padding-top: 0; } .com_bg { background: url("../images/company_top2.jpg") 60% 0/cover no-repeat; height: 510px; max-width: 1180px; border-radius: 80px 0 0 80px; } /******************************************************************* 施工事例 *******************************************************************/ .works_flex { display: block; } .works_left { width: 100%; } .works_right { width: 100%; margin-top: 80px; } /******************************************************************* アイビーホームの家作り *******************************************************************/ .commit_bg { background: url("../images/commit2.jpg") 100% 0/cover no-repeat; border-radius: 100px 0 0 100px; height: 450px; width: calc(100% + 40px); } .commit_title { font-size: 30px; span { font-size: 35px; } } .commit_grid { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 40px; row-gap: 60px; h3 { font-size: 24px; } } } @media only screen and (max-width: 740px) { @for $i from 30 through 70 { .flex_#{$i} { width: 100%; } } $p: 100; $pixel:80px; @while $p < 310{ .padding#{$p}{ padding-top: $pixel; padding-bottom: $pixel; } $p: $p + 10; } $m: 100; @while $m < 310{ .margin#{$m}{ margin-top: $pixel; margin-bottom: $pixel; } $m: $m + 10; } $pt: 110; @while $pt < 310{ .pt-#{$pt}{ padding-top: $pixel; } $pt: $pt + 10; } $pb: 110; @while $pb < 300{ .pb-#{$pb}{ padding-bottom: $pixel; } $pb: $pb + 10; } $mt: 110; @while $mt < 310{ .mt-#{$mt}{ margin-top: $pixel; } $mt: $mt + 10; } $mb: 110; @while $mb < 310{ .mb-#{$mb}{ margin-bottom: $pixel; } $mb: $mb + 10; } .side_bar { position: fixed; right: 0; top: auto; bottom: 0; transform: translateY(0); width: 100%; display: flex; justify-content: space-between; border-top: 1px solid #FFF; border-left: 0; > div { width: 50%; height: 50px; font-size: 15px; writing-mode: horizontal-tb; border-bottom: 0; &:nth-child(1) { background-color: #2e9568; } &:nth-child(2) { background-color: #f39801; } } a { display: flex; justify-content: center; align-items: center; img { margin-bottom: 0; margin-right: 5px; } } } /************************/ .cy_header { padding: 20px 0; } .logo { width: 175px; img { width: 150px; height: auto; } } /**********/ .top_main { max-width: 90%; width: 90%; } .top_main,.flexslider,.flexslider li { height: 500px; border-radius: 50px; position: relative; } .top_title { font-size: 5vw; bottom: auto; top: 50%; transform: translateY(-50%); text-align: center; line-height: 1.8em; } @keyframes title { 0% { opacity: 0; transform: translateX(-50%) translateY(-40%); } 100% { opacity: 1; transform: translateX(-50%) translateY(-50%); } } /*******************/ .title_38 { font-size: 24px; } .eng_16 { font-size: 14px; } .news { grid-template-columns: repeat(2, 1fr); row-gap: 40px; &.top_news > div:nth-child(3) { display: none; } } .radius30 { border-radius: 20px; } .n_cate { margin: 10px 0 5px; span { font-size: 13px; } } .n_title { font-size: 11px; } .more { width: 100%; max-width: 240px; a { padding: 10px 10px; } } /***********************/ .top_af_bg { position: relative; &:after { width: calc(100% - 10px); border-radius: 60px 0 0 60px; } } .sp_plr20 { padding-left: 10px; padding-right: 10px; } .sp_plr10 { padding-left: 10px; padding-right: 10px; } .w900_auto { width: 100%; max-width: 900px; margin-left: auto; margin-right: auto; } .be_af_border { &:before,&:after { width: 30px; } &:before { margin-right: 20px; } &:after { margin-left: 20px; } } .title_24 { font-size: 18px; } .text_15 { font-size: 14px; } .radius100 { border-radius: 50px; } .padding50 { padding: 30px; } .title_28 { font-size: 20px; font-weight: bold; } .text_20 { font-size: 14px; } /****************/ .top_bg { height: 250px; } .sp_minus { padding-top: 0; margin-top: -40px; } .ver_title { position: static; top: 0; width: auto; border-radius: 0; padding: 0; display: inline-block;; writing-mode: horizontal-tb; margin-bottom: 40px; background-color: #FFF; margin-left: -6%; border-radius: 0 20px 0 0; padding: 10px 20px 0; h2 { font-family: "NotoSansCJKjp-Regular"; white-space: nowrap; text-align: left; } p { white-space: nowrap; text-align: left; } } .title_35 { font-size: 20px; font-weight: bold; } .big_40 { font-size: 24px; } .text_17 { font-size: 15px; } /* .top_grid { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 100px; > div { position: relative; &:after { background: url("../images/top7.png") 50% 50%/45px 100% no-repeat; width: 100%; height: 46px; position: absolute; right: 50%; top: calc(100% + 23px); transform: translateX(50%); } &:last-child:after { display: none; } } } */ .top_grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 30px; row-gap: 30px; > div { position: relative; &:after { content: ""; background: url("../images/top7.png") 50% 50%/20px 100% no-repeat; width:30px; height: 21px; position: absolute; right: -30px; top: 50%; transform: translateY(-50%); } &:last-child:after { display: none; } } } .top_banner { height: auto; a { padding: 180px 10px 80px; } &:after { top: 5px; left: 5px; width: calc(100% - 10px); height: calc(100% - 10px); border-radius: 10px; } .banner_title { position: static; padding: 0; transform: translateY(0); z-index: 500; h2 { font-size: 20px; font-weight: bold; text-align: center; } p { margin-top: 20px; font-size: 15px; text-align: center; img { margin-left: 20px; } } } } .banner_img { left: 0; width: 100%; text-align: center; img { width: 150px; height: auto; } } /**********************/ .top_af_bg2 { position: relative; &:after { width: calc(100% - 10px); border-radius: 0 60px 60px 0; } } .model_title { padding:10px 50px 10px 10px; font-size: 12px; span { font-size: 18px; } } .model_shape img { position: absolute; right: 10px; } .model_on { opacity: 0; } /************/ .slider.slider_style { width: calc(100% + 200px); margin-left: 0; padding-left: 10px; h3 { font-size: 16px; margin: 15px 0 20px; } p { font-size: 13px; } } .slider.slider_style li { float: left; position: relative; z-index: 900; padding: 0 20px 0 0; img { border-radius: 40px; } } /************************/ .blog_grid { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 20px; row-gap: 40px; > div { width: 100%; max-width: 100%; margin: 0; a { display: block; } } } .blog_left { width: 100%; } .blog_right { width: 100%; padding-top: 10px; } .b_time { font-size: 12px; } .b_title { font-size: 13px; } /*************************/ .under_banner { display: block; > div { width: 100%; height: 180px; margin-top: 2px; } } .banner_bg1 { filter: blur(0); } .banner_bg2 { filter: blur(0); } /************************/ .f_bg { padding: 60px 0; } .page_top { right: 10px; bottom: 20px; } .f_logo { margin-bottom: 30px; } .f_logo img { width: 220px; height: auto; } .f_tel { margin-top: 5px; font-size: 30px; img { margin-right: 10px; position: relative; top: -2px; } } .f_nav { margin-top: 40px; display: block; > div:nth-child(1) { display: block; align-items: center; font-size: 14px; a { color: #FFF; } p { padding: 10px 0; border-right: 0; text-align: center; } } > div:nth-child(2) { justify-content: center; margin-top: 30px; } } .copy { font-size: 12px; padding: 20px 0 65px; } /******************************************************************* 家づくりの想い *******************************************************************/ .main_size { height: 250px; border-radius:20px; width: 90%; max-width: 90%; h2 { padding-top: 15px; font-size: 26px; line-height: 1.3em; } p { font-size: 16px; letter-spacing: 0.2em; } } /**********************/ .concept_padding { padding: 60px 0 60px; } .title_45 { font-size: 22px; } .big_50 { font-size: 28px; } .letter005 { letter-spacing: 0.05em } .line_height24 { line-height: 2.2em; } .con_ab1 { position: absolute; left: 0; bottom: 0; display: none; } .con_ab2 { position: absolute; right: 0; bottom: 70px; display: none; } .center.minita-l { text-align: left; } .sp_flex { margin-top: 40px; } /********************/ .radius_right_top { border-top-right-radius: 60px; } .radius_left_bottom{ border-bottom-left-radius: 60px; } .concept_flex { display: block; &.right_style { .concept_left { justify-content: flex-start; position: static; right: 0; left: auto; } .concept_right { border-radius: 0 20px 20px 0; margin-left: 0; } } } .concept_left { width: 100%; display: flex; justify-content:space-between; position: static; top: 0; left: 0; } .concept_title { display: flex; align-items: center; justify-content: space-between; width: 90%; margin-left: auto; margin-right: auto; margin-top: 25px; .font2 { width: 60px; height: 60px; background-color: #2e9568; color: #FFF; display: flex; justify-content: center; align-items: center; font-size: 22px; border-radius: 10px; } h3 { white-space: normal; width: calc(100% - 70px); writing-mode: horizontal-tb; text-orientation: upright; font-size: 20px; line-height: 1.5em; padding:0; position: relative; display: block; } } .concept_right { width:95%; height: 250px; border-radius: 20px 0 0 20px; margin-left: auto; } .w960_right { width:90%; margin: 0 auto; } /***********************/ .under_flex { display: block; > div { width: 100%; border-radius: 20px; margin: 10px 0; &:after { content: ""; background-color: rgba(0,0,0,0.5); position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: 0.5s ease; } &:hover:after { opacity: 0; } } a { text-align: left; padding-left: 20px; height:150px; justify-content: flex-start; } .shape { position: absolute; right: 20px; bottom: auto; top: 50%; transform: translateY(-50%); } h3 { font-size: 20px; font-weight: bold; } } /******************************************************************* 家づくりの流れ *******************************************************************/ .flow_flex { > div { width: calc(50% - 40px); margin: 20px 20px; &:nth-child(1) .max_img100:before { display: none; } } .max_img100 { &:before { width: 40px; left: -40px; } } p { margin-top: 10px; font-size: 15px; line-height: 1.2em; span { font-size: 15px; } } } .flow_bg { height: 300px; border-radius: 0 20px 0 20px; } /***********************/ .title_30 { font-size: 22px; } .flow_flex2 { > div { display: block; padding: 40px 0; } } .flow_left { max-width: 430px; width: 100%; } .flow_right { width: 100%; margin-top: 20px; padding: 0 10px; h3 { margin: 15px 0 10px; } } .point { font-size: 15px; span { font-size: 26px; padding-left: 10px; } } /********************/ .flow_list { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 40px; row-gap: 30px; padding-right: 40px; > div { position: relative; &:last-child .img100:after { display: none; } } h3 { font-size: 15px; margin-top: 20px; } .img100 { &:after { background: url("../images/flow15.jpg") 50% 0/20px 15px no-repeat; width: 40px; height: 15px; right: -40px; } } } .flow_num { font-size: 30px; left: 10px; top: -25px; } .grid3 { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 10px; row-gap: 10px; } /******************************************************************* ごあいさつ *******************************************************************/ .title_55 { font-size: 23px; line-height: 1.8em; } .big_60 { font-size: 30px; } .name_box { p { font-size: 14px; line-height: 2em; } .name1 { font-size: 16px; } .name2 { font-size: 22px; } &:before { margin-right: 30px; } } /******************************************************************* 沿革 *******************************************************************/ .history_table { > div { display: flex; justify-content: space-between; font-size: 14px; font-weight: bold; &:nth-child(n+2) { margin-top: 55px; } } &:after { height: calc(100% - 18px); left: 105px; top: 10px; } } .his_cell1 { width: 110px; position: relative; &:after { top: 8px; } } .his_cell2 { width: calc(100% - 130px); } /******************************************************************* 制震装置MIRAIE *******************************************************************/ .miraie_af_bg { &:after { border-radius: 20px 0 0 20px; width: calc(100% - 10px); height: calc(100% - 60px); } } .padding60_20 { padding: 30px 30px; } /*************/ .miraie_flex { display: block; > div { width: 100%; border: 2px solid #d2d2d2; border-radius: 20px; padding: 30px 20px; &:nth-child(2) { margin-top: 100px; } &:nth-child(1) { &:after { background: url("../images/miraie5.png") 50% 0/50px 50px no-repeat; top: calc(100% + 25px); right: 50%; width: 100%; height: 50px; transform: translateX(50%); } } } .max_img100 { text-align: center; } h3 { font-size: 20px; margin: 20px 0 20px; } } /*******************/ .miraie_flex2 { display: block; > div { width: 100%; max-width: 100%; &:nth-child(n+2) { margin-top: 50px; } } .max_img100 { border-radius: 20px; height: 240px; } h3 { min-height: 0; display: block; font-size: 20px; text-align: center; margin: 20px 0; } .mini { font-size: 14px; } } .miraie_num { position: absolute; left: -5px; top: -15px; z-index: 500; img { width:60px; height: auto; } } /**************/ .title_33 { font-size: 20px; } .mini_17 { font-size: 14px; top: -5px; } .padding40_20 { padding: 30px 30px; } .bg_w { background-color: #FFF; } .padding100_100 { padding: 30px 10px; } /***************/ .text_23 { font-size: 15px; } .span_17 { font-size: 14px; top: -5px; } /**************/ .span_13 { font-size: 13px; position: relative; top: -5px; } .text_13 { font-size: 13px; } .line_height15 { line-height: 1.8em; } /******************************************************************* モデルハウス *******************************************************************/ .view_main { padding: 50px 0 60px; h2 { font-size: 26px; letter-spacing: 0.03em; line-height: 1.3em; } .eng_16 { font-size: 16px; } } .slider1 { text-align: center; li { padding: 0 40px; margin: 0; } } .slider2 { grid-template-columns: repeat(7, 1fr); margin-top: 20px; li { border-radius: 5px; &.thumbnail-current:after{ border-radius: 5px; } } } .view_bb { padding-bottom: 20px; background-image : linear-gradient(to right, #2e9568, #2e9568 2px, transparent 2px, transparent 8px); /* 幅2の線を作る */ background-size: 8px 2px; /* グラデーションの幅・高さを指定 */ background-position: left bottom; /* 背景の開始位置を指定 */ background-repeat: repeat-x; /* 横向きにのみ繰り返す */ } .view_flex { > div { display: flex; margin: 25px 0; font-size: 14px; } } .view_cell1 { width: 90px; border-radius: 5px; padding-top: 0px; } .view_cell2 { width: calc(100% - 110px); } .more_flex { display: block; .more { width: 100%; margin: 10px 0; font-size: 16px; } } /******************************************************************* ZEH *******************************************************************/ .zeh_img { text-align: center; img { max-width: 150px; height: auto; } } .zeh_title { font-size: 20px; letter-spacing: 0.05em; padding: 15px 10px; line-height: 2.2em; &:before,&:after { width: 30px; height: 23px; } &:before { top: -15px; } &:after { bottom: -15px; } } .span_50 { font-size: 28px; } /********************/ .zeh_grid { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 20px; > div { padding: 30px 20px; border-radius: 20px; } h3 { font-size: 22px; text-align: center; margin: 20px 0 15px; } p { font-size: 14px; text-align: left; } } .zeh_bg { padding: 30px; border-radius: 20px; } .check_list { li { margin: 5px 0; position: relative; font-size: 16px; padding-left: 30px; } img { top:5px; } } /****************/ .zeh_grid2 { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 20px; > div { border-radius: 20px; padding: 20px 20px; display: flex; justify-content: space-between; align-items: center; } } .zeh_left { width: 80px; img { width: 100%; height: auto; } } .zeh_right { width: calc(100% - 100px); h3 { line-height: 1.5em; } } /***********************************/ .zeh_table { overflow-x: scroll; table { width: 640px; } th { width: 100px; } th,td { padding: 15px 0; font-size: 12px; } tr:nth-child(1) td { font-size: 12px; &:nth-child(2) { border-radius: 10px 0 0 0; } &:last-child { border-radius: 0 10px 0 0; } } tr:nth-child(n+2) { td { font-size: 14px; } } tr:nth-child(2) { th { border-radius: 10px 0 0 0; } } tr:last-child { th { border-radius: 0 0 0 10px; } } } /******************************************************************* 標準仕様 *******************************************************************/ .title_40 { font-size: 20px; } /****************/ .ip_border_title { background: none; height: auto; padding-top: 0; border: 1px solid #2e9568; padding: 15px 0; border-radius: 20px; } .text_18 { font-size: 14px; } /****************/ .ip_border { border-radius: 20px; padding: 20px 20px; } /*******************/ .tab_bg { padding: 40px 0; } .tab,.tab2 { ul { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 5px; row-gap: 5px; } a { padding: 5px 5px; font-size: 15px; border-radius: 10px; transition: 0.5s ease; } } .af_bb { &:after { border-bottom: 2px solid #2e9568; width: 30px; margin: 5px auto 0; } } .sp_pdf { display: block; margin-top: 30px; text-align: center; a { background-color: #62584e; color: #FFF; width: 100%; max-width: 200px; display: block; margin: 0 auto; padding: 13px 0 10px; border-radius: 10px; img { width: 15px; height: auto; margin-right:10px; position: relative; top: -2px; } } } .tab_mt { margin-top: 30px; } /******************************************************************* 会社概要 *******************************************************************/ .com_left { position: static; left: 0; top: 0; writing-mode: horizontal-tb; max-width: 90%; width: 90%; margin-left: auto; margin-right: auto; } .com_title { font-size: 20px; line-height: 2em; margin-bottom: 30px; text-align: center; white-space: normal; span { font-size: 26px; } } .com_right { width: 90%; margin: 0 auto; p { padding: 0; } } .com_bg { width: 100%; margin-left: auto; height: 250px; max-width: 1180px; border-radius: 20px; } /********************/ .com_flex { display: flex; justify-content: space-between; flex-wrap: wrap; > div { max-width: 480px; width: 48%; position: relative; &:nth-child(n+3) { margin-top: 20px; } } a { color: inherit; &:hover { .com_off { opacity: 0; } .com_on { opacity: 1; } } } h3 { font-size: 16px; letter-spacing: 0.05em; margin: 15px 0 5px; } } .com_shape { position: static; margin-top: 0px; text-align: center; img { width: 25px; height: auto; } .com_on { display: none; } } /******************************************************************* 会社概要 *******************************************************************/ .pro_table { position: relative; > div { font-size: 14px; } } .pro_cell1 { padding: 20px 10px; width: 100px; } .pro_cell2 { width: calc(100% - 100px); padding: 20px 15px; } .map { iframe { width: 100%; height: 350px; } } /******************************************************************* 資料請求・お問い合わせ *******************************************************************/ .contact_border { border-radius: 20px; padding: 30px 10px; } .title_22 { font-size: 18px; } .c_tel { font-size: 30px; line-height: 1.3em; margin: 10px 0 0; img { margin-right: 10px; top: -2px; width: 20px; height: auto; } } .contact_form { padding-bottom: 60px; > div { display: block; margin: 40px 0; font-size: 14px; } } .c_cell1 { width: 100%; padding-top: 0; font-size: 16px; } .hissu { font-size: 12px; top:0; line-height: 1em; padding: 5px 15px } .c_cell2 { width: 100%; margin-top: 15px; } .size,.area { padding: 10px 15px; } .size { height: 50px; } .half_size .size{ max-width: 330px; } .area { height: 250px; } .postal_flex { display: flex; align-items: center; justify-content: space-between; width: 100%; max-width: 330px; } .postal_cell1 { width: 20px; } .postal_cell2 { margin: 0 10px 0; flex-grow: 2; } .postal_cell3 { width: 115px; span { font-size: 12px; padding: 5px 0 3px; font-weight: normal; } } .label_flex { display: block; .wpcf7-list-item { display: block; margin-right: 0; padding-left: 10px; margin-top: 10px; } input[type=radio] { position: relative; left: -10px; } } /************/ .submit { input { padding: 20px; font-size: 16px; } } /******************************************************************* 来場予約 *******************************************************************/ .minita-c { text-align: center; } .re_inline_block { font-size: 14px; display: block; flex-wrap: wrap; width: 100%; max-width: 680px; margin: 0 auto; &:nth-child(n+2) { margin-top: 15px; } span { display: block; } span:nth-child(1) { width: 100%; font-size: 16px; } span:nth-child(2) { display: none; width: 20px; } span:nth-child(3) { width: 100%; padding-left: 18px; display: block; margin-top: 5px; } } /******************************************************************* プライバシーポリシー *******************************************************************/ .pri_title { font-size: 18px; padding-left: 40px; .font2 { font-size: 16px; width: 30px; height: 30px; padding-left: 0px; padding-top: 0; } } .pri_pl { padding-left: 16px; } /******************************************************************* 施工事例 *******************************************************************/ .works_left { > div { width: 48%; &:nth-child(n+3) { margin-top: 40px; } .img100 { border-radius: 20px; } } p { font-size: 14px; } } .works_right { width: 100%; margin-top: 80px; } .title_23 { font-size: 20px; } .cate_bb { padding-bottom: 10px; margin-bottom: 20px; } .cate_list { li { margin: 15px 0; } } /******************************************************************* アイビーホームの家作り *******************************************************************/ .commit_bg { border-radius: 40px 0 0 40px; height: 300px; width: calc(100% + 16px); } .commit_title { padding: 20px 5px 0 0; margin-top: -50px; font-size: 18px; letter-spacing: 0em; span { font-size: 20px; } } .commit_grid { grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 40px; > div { padding-bottom: 0; } h3 { margin: 15px 0 15px; font-size: 20px; } .more { position: static; transform: translateX(0); margin-top: 20px; } } .commit_text { font-size: 13px; } } /* スマートフォン 縦(ポートレート) */ @media only screen and (max-width: 380px) { .ver_title { h2 { font-size: 18px; } p { font-size: 12px; } } }