/* Scss Document */ $color:#a5871f; //サイトで良く使う色 $text:#000; //基本的なテキストの色 $black:#000; $white:#fff; $red:#ff2c2c; $gray_828282:#828282; $gray_777777:#777777; //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; } /************************/ .logo { position: absolute; top:32px; left: 40px; z-index: 500; } /***************/ .pc_menu{ position: fixed; right: 35px; top:100px; z-index: 10; li{ font-size: 16px; text-align: right; line-height: 1.8; letter-spacing: 0.1em; } li a{ color:: $black; transition: .5s; } li a:hover{ color:: $color; } } /***************/ .top_main { background: url("../images/top2.jpg") 50% 0/cover no-repeat; display: flex; align-items: center; justify-content: center; height: 970px; padding-top: 140px; h2 { font-size: 39px; color: #FFF; line-height: 1em; opacity: 0.8; letter-spacing: 0.13em; font-weight: normal; } .t45 { font-size: 45px; } .span_plr { padding: 0 10px; } } .title_bg { background-color: rgba(0,0,0,0.85); display: inline-block; margin: 7px 0; padding: 5px 8px; } /************/ .eng_midashi { font-size: 18px; color: #a5871f; display: flex; align-items: center; &:before { content: ""; background-color: $color; width: 5px; height: 5px; margin-right: 15px; } } .text21 { font-size: 21px; } .line_hi28 { line-height: 2.8em; } /**************/ .bg_gray_f5f5f5 { background-color: #f5f5f5; } .news_flex { display: flex; justify-content: space-between; } .news_left { width: 220px; } .midashi29 { font-size: 29px; letter-spacing: 0.2em; line-height: 1.8em; } .news_right { width: calc(100% - 220px); padding-top: 5px; } .news { border-top: 1px solid $gray_777777; a { display: flex; justify-content: space-between; padding: 25px 0; border-bottom: 1px solid $gray_777777; color: inherit; position: relative; } a:hover{ border-top: 1px solid $color; border-bottom: 1px solid $color; margin: -1px 0 0; &::after{ content: ''; display: block; width: 15px; height: 1px; border-bottom:1px solid $color; position: absolute; right:0; top: 50%; transform: translateY(-50%); } } } .n_cell1 { width: 110px; letter-spacing: 0.15em; } .n_cell2 { width: 45px; position: relative; top: 6px; span { display: block; background-color: $color; line-height: 1.1em; text-align: center; color: #FFF; padding: 0 0 1px; letter-spacing: 0.05em; } } .n_cell3 { width: calc(100% - 155px); padding-left: 90px; } .more { display: flex; justify-content: center; a { color: #000; } } .more.more_right { justify-content: flex-end; } .more.more_left { justify-content: flex-start; } .btn1 { color: $color; position: relative; } .btn1:hover .shape_svg circle { stroke-dasharray: 366 366; } .shape_svg { transform: rotate(-90deg); position: absolute; z-index: 100; top: 0; right: 0; } .shape_svg circle { fill: transparent; stroke: #daaf5c; stroke-width: 2; stroke-dasharray: 0 366; transition: 1s linear 0s; } .shape { display: inline-block; vertical-align: middle; width: 50px; height: 50px; background-color: #FFF; border-radius: 50%; margin-left: 20px; position: relative; } .shape:after { content: ""; background-image: url(../images/arrow.png); background-repeat: no-repeat; width: 16px; height: 5px; display: block; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); } /************/ .eng_midashi2 { color: $color; font-size: 18px; } .center { text-align: center; } .top_bg_flex { display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 50px; row-gap: 50px; > div { height: 760px; } a { color: #FFF; display: flex; align-items: flex-end; padding: 40px; height: 100%; position: relative; &:hover { .shape { background-color: rgba(0,0,0,0.00); } .shape_svg circle { stroke-dasharray: 366 366; } &:after { opacity: 1; } .btn_text { color: $color; } } &:after { content: ""; background-color: rgba(0,0,0,0.38); position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: 0.5s ease; } } .more { position: absolute; right: 40px; bottom: 40px; z-index: 500; .btn_text { color: #FFF; transition: 0.5s ease; } } .shape { background-color: #323232; transition: 0.5s ease; &:after { filter: invert(100%) } } } .top_bg1 { background: url("../images/top4.jpg") 50% 0/cover no-repeat; } .top_bg2 { background: url("../images/top5.jpg") 50% 0/cover no-repeat; } .bg_midashi { font-size: 24px; line-height: 1em; position: relative; &:before { content: ""; position: absolute; left:28px; top: 0; height: 100%; border-left: 1px solid rgba(255,255,255,0.3); } } .bg_border { border-top: 1px solid rgba(255,255,255,0.3); border-bottom: 1px solid rgba(255,255,255,0.3); display: inline-block; padding: 8px 0; padding-right: 5px; } .bg_num { font-size: 13px; position: relative; top: -5px; padding-right: 5px; display: inline-block; } .span_bl { padding-left: 15px; letter-spacing: 0.2em; } .midashi21 { font-size: 21px; letter-spacing: 0.2em; font-weight: normal; } .bg_text { line-height: 2.4em; } /*********************/ .top_bg_flex2 { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 1px; row-gap: 0; text-align: center; a { color: #FFF; min-height: 600px; display: flex; align-items: center; justify-content: center; position: relative; padding: 20px; font-weight: normal; > div { position: relative; z-index: 500; } &:hover { .shape { background-color: rgba(0,0,0,0.00); } .shape_svg circle { stroke-dasharray: 366 366; } &:after { opacity: 1; } .btn_text { color: $color; } } &:after { content: ""; background-color: rgba(0,0,0,0.38); position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: 0.5s ease; } } h3 { font-weight: normal; } .bg_text { min-height: 120px; } .more { .btn_text { color: #FFF; transition: 0.5s ease; } } .shape { background-color: #323232; transition: 0.5s ease; &:after { filter: invert(100%) } } } .top_bg3 { background: url("../images/top6.jpg") 50% 0/cover no-repeat; } .top_bg4 { background: url("../images/top7.jpg") 50% 0/cover no-repeat; } .top_bg5 { background: url("../images/top8.jpg") 50% 0/cover no-repeat; } /*********/ .top_bg6 { background: url("../images/top9.jpg") 50% 0/cover no-repeat; height: 1100px; display: flex; justify-content: center; align-items: center; } .banner_list { .top_banner { position: relative; display: flex; align-items: center; width: 100%; max-width: 472px; margin: 20px 0 20px auto; &:nth-child(1) { background: url("../images/top_on1.jpg") 50% 0/cover no-repeat; &:after { background: url("../images/top_off1.jpg") 50% 0/cover no-repeat; } } &:nth-child(2) { background: url("../images/top_on2.jpg") 50% 0/cover no-repeat; &:after { background: url("../images/top_off2.jpg") 50% 0/cover no-repeat; } } &:after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: 0.3s ease; } &:hover:after { opacity: 0; } a { display: flex; align-items: center; height: 222px; color: inherit; position: relative; z-index: 500; padding: 0 30px; width: 100%; } h3 { font-size: 29px; display: flex; align-items: flex-end; span { color: $color; font-size: 18px; padding-left: 45px; } } p { margin-top: 25px; padding-left: 6px; } } } /*****/ .cy_footer { background-color: #000000; } .f_logo { padding: 45px 14px 65px; text-align: center; } .copy { background-color: #181818; padding: 5px; color: #FFF; text-align: center; font-size: 12px; } /************************************************************ 下層共通 ************************************************************/ .line01{ width: 100%; border-bottom: 1px solid #777777; } .pc{ display: block; } .ipad{ display: none; } .sp{ display: none; } .midashi24 { font-size: 24px; line-height: 2.2; } .line_hi22{ line-height: 2.2; } .line_hi24{ line-height: 2.4; } .note{ text-indent: -1.2em; padding-left: 1.2em; } .tel{ font-size: 15px; letter-spacing: 0.15em; span{ font-size: 24px; } a{ color: $white; } } .tel_hour{ font-size: 12px; } .contact_btn{ a{ display: block; width: 260px; background-color: $black; color: $white; padding: 10px 10px 12px; text-align: center; border-radius: 50px; transition: .5s; border: 1px solid $black; } a:hover{ background-color:#555555; border: 1px solid $color; } } .gold_a5871f { color: $color; } /************************************************************ サービス・管理 ************************************************************/ .service01_main { background: url("../images/service01_1.jpg") 50% 0/cover no-repeat; } .main_size { height: 730px; } .title_in { padding: 10px 20px 0; .font2 { font-size: 67px; letter-spacing: 0.05em; } .title_ja { font-size: 16px; color: #828282; margin-top: 15px; display: inline-block; letter-spacing: 0.15em; } } .title_span { display: inline-block; text-align: right; } /************/ .text18 { font-size: 18px; font-weight: normal; } .letter02 { letter-spacing: 0.2em; } /**************/ .service01_bg { background: url("../images/service01_2.jpg") 50% 0/cover no-repeat; height: 670px; } .w1350_auto { width: 100%; max-width: 1350px; margin-left: auto; margin-right: auto; } .se01_box { display: flex; align-items: center; padding: 15px 10px; justify-content: space-between; border-top: 1px solid #777777; border-bottom: 1px solid #777777; position: relative; h3 { width: calc(100% - 135px); font-size: 24px; } &:after { content: ""; border-left: 1px solid #777777; position: absolute; left: 120px; top: 50%; transform: translateY(-50%); height: calc(100% - 30px); } } .se01_eng { font-size: 13px; letter-spacing: 0.08em; width: 110px; line-height: 1.5em; padding: 10px 0; } /***/ .se01_flex { display: flex; justify-content: space-between; align-items: center; padding: 35px 5px 35px 20px; } .se01_bb_list .se01_flex { border-bottom: 1px solid #777777; &:last-child { border-bottom: 0; } } .se01_left { width: 415px; display: flex; align-items: center; justify-content: space-between; .img100 { width: 110px; } .midashi21 { width: calc(100% - 140px); letter-spacing: 0.15em; } } .se01_right { width: calc(100% - 415px); p { line-height: 2.4em; } } .se01_box02 { display: flex; align-items: center; padding: 15px 10px; justify-content: flex-start; border-top: 1px solid #777777; border-bottom: 1px solid #777777; position: relative; h3 { width: calc(100% - 300px); font-size: 24px; padding-left:40px ; } &:after { content: ""; border-left: 1px solid #777777; position: absolute; left: 247px; top: 50%; transform: translateY(-50%); height: calc(100% - 30px); } } .se01_eng02 { font-size: 13px; letter-spacing: 0.08em; line-height: 1.5em; padding: 10px 15px 10px 0 ; } .se01_season{ font-size: 15px; text-align: center; padding: 0 15px; width: 105px; span{ display: block; font-size: 12px; border-bottom: 1px solid $black; } &:after { content: ""; border-left: 1px solid #777777; position: absolute; left: 140px; top: 50%; transform: translateY(-50%); height: calc(100% - 30px); } } /***/ .se01_bb_list02 { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; position: relative; &::after{ content: ''; display: block; width: 1px; height: 100%; border-right: 1px solid #777777; position: absolute; left: 50%; } } .se01_flex02 { display: flex; justify-content: flex-start; align-items: center; width: 50%; &:nth-child(odd){ padding: 35px 20px 35px 0; } &:nth-child(even){ padding: 35px 0 35px 35px; } } .se01_left02 { display: flex; align-items: center; justify-content: flex-start; min-width: 300px; width: fit-content; .img100 { width: 110px; } .midashi21 { letter-spacing: 0.15em; margin-left:20px; } } .se01_right02 { width: 335px; p { line-height: 2.4em; } } /************************************************************ サービス・運用 ************************************************************/ .service02_main { background: url("../images/service02_1.jpg") 50% 0/cover no-repeat; } .service02_bg { background: url("../images/service02_2.jpg") 50% 0/cover no-repeat; height: 670px; } .se02_title{ display: flex; justify-content: space-between; align-items: center; padding: 15px 0; border-bottom: 1px solid $gray_777777; border-top: 1px solid $gray_777777; } .se02_title_eng{ font-size: 13px; letter-spacing: 0.1em; } .se02_left{ width: 410px; margin-right: 60px; } .se02_right{ width: 790px; } .service02_bg02{ background: url("../images/service02_8.jpg") 50% 0/cover no-repeat; padding-left: 3%; padding-right: 3%; } .se02_li{ width: fit-content; margin: 0 auto; li{ font-size: 14px; letter-spacing: 0.15em; line-height: 1.8; border-bottom: 1px solid $color; padding: 20px 0 10px 1em; text-indent: -1em; } } .se02_gray_bg{ margin: 0 50px; padding: 80px 0; } .se02_left02{ min-width: 400px; width: 25%; padding: 0 15px; } .se02_right02{ width: 75%; padding: 0 20px 0 60px; border-left: 1px solid $gray_777777; } /************************************************************ プラン ************************************************************/ .plan_main { background: url("../images/plan1.jpg") 50% 0/cover no-repeat; } .plan_title{ display: flex; align-items: center; border-top: 1px solid $gray_777777; border-bottom: 1px solid $gray_777777; } .plan_title_eng{ font-size: 13px; border-right: 1px solid $gray_777777; writing-mode: vertical-rl; padding: 20px 5px; margin-right: 40px; } .plan_title_li{ display: flex; margin: 0 10px 0 auto; li{ font-size: 13px; color: $white; padding: 5px 10px 7px; line-height: 1; margin-left:10px; } li:first-child{ background-color: $black; } li:nth-child(2){ background-color: $gray_828282; } li:nth-child(3){ background-color: $color; } } .plan_txt{ font-size: 21px; color: $color; } .plan_table{ width: 100%; border: 1px solid $gray_777777; th{ width: 2.5em; writing-mode: vertical-rl; font-size: 13px; text-align: center; border-right: 1px solid $gray_777777; } td{ border-right: 1px solid $gray_777777; padding: 30px; } td:first-of-type{ width: 600px; } } .plan_li{ width: 50%; li{ line-height: 2.2; } } .plan_price{ text-align: right; span{ font-size: 18px; } } /************************************************************ ご依頼の流れ ************************************************************/ .flow_main { background: url("../images/flow1.jpg") 50% 0/cover no-repeat; } .flow_bg{ width: 990px; margin: 0 auto; position: relative; } .flow_title_li{ display: flex; justify-content: space-between; li{ width: 230px; height: 100%; text-align: center; padding: 30px 0 40px; p{ font-size: 24px; letter-spacing: 2.2px; } span{ display: block; color: #c0c0c0; font-size: 12px; &::after{ content: ''; display: block; width: 30px; height: 1px; background-color: $gray_828282; margin: 0 auto ; } } } li:first-child{ background: url(../images/flow2.png) no-repeat center bottom; background-size: cover; position: absolute; left: 0; } li:last-child{ background: url(../images/flow3.png) no-repeat center bottom; background-size: cover; position: absolute; right: 0; } } .flow_dl{ width: 840px; margin:160px auto 0; display: flex; justify-content: space-between; flex-wrap: wrap; text-align: center; padding-bottom: 100px; dt{ width: 100%; background-color: #555; color:$white; padding: 50px 15px; margin-bottom: 40px; position: relative; .flex_box{ justify-content: center; } } dd{ width: 48%; background-color: #555; color:$white; padding: 50px 15px; margin-bottom: 40px; position: relative; } dt:first-of-type,dt:last-of-type,dd:first-of-type,dd:nth-of-type(2),dd:last-of-type{ &::before,&::after{ width: 190px; height: 118px; position: absolute; top: 50%; transform: translateY(-50%); background: linear-gradient(0deg, rgba($white,0) 49%, rgba($gray_777777,1) 50%, rgba($white,0) 51%); } } dt:first-of-type{ &::before{ content: url(../images/flow4.png); left: -190px; text-align: left; } &::after{ content: url(../images/flow4.png); right: -190px; text-align: right; } } dt:last-of-type{ &::before{ content: url(../images/flow5.png); left: -190px; text-align: left; } &::after{ content: url(../images/flow6.png); right: -190px; text-align: right; } } dd:first-of-type{ margin-left: auto; &::after{ content: url(../images/flow5.png); right: -190px; text-align: right; } } dd:nth-of-type(2){ &::before{ content: url(../images/flow6.png); left: -190px; text-align: left; } } dd:last-of-type{ &::after{ content: url(../images/flow7.png); right: -190px; text-align: right; } } } .flow_note{ text-indent: -1em; padding-left: 1em; text-align: left; font-size: 12px; width: fit-content; margin: 0 auto 30px; } .flow_left{ margin-right: 40px; } .flow_agreement{ width: 990px; margin: 0 auto; background: url(../images/flow8.jpg) center center no-repeat; background-size: cover; text-align: center; padding: 70px 15px; } /************************************************************ よくあるご質問 ************************************************************/ .faq_main { background: url("../images/faq1.jpg") 50% 0/cover no-repeat; } .faq_title{ color: $color; position: relative; &::before{ content: ''; position: absolute; top: 50%; transform: translateY(-50%); left: -85px; width: 65px; height: 1px; background-color: $color; } } .faq_li{ width: 100%; li{ background-color: #f5f5f5; list-style:none; margin-bottom:30px; padding:0 3px 3px; } } .question{ position: relative; margin: 0; padding: 10px 20px; font-size: 21px; cursor: pointer; display: flex; justify-content: flex-start; align-items: center; &:hover{ text-decoration:underline; } &:after{ content: ""; position: absolute; right: 25px; top: 50%; transition: all 0.2s ease-in-out; display: block; background: url(../images/arrow03.png) no-repeat; background-size: 100% auto; width: 20px; height: 8px; transform: rotate(0deg); line-height: 1; } } .question.open:after { transform: rotate(180deg); top: 45%; } .question_icon{ font-size: 21px; } .question_txt{ border-left: 1px solid $gray_777777; margin-left: 25px; padding: 10px 30px 10px 40px; } .answer{ padding: 35px 35px 35px 20px; background-color: $white; display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap; p{ line-height: 2.2; } } .answer_icon{ font-size: 21px; color: $color; } .answer_txt{ border-left: 1px solid $gray_777777; margin-left: 25px; padding: 10px 0 10px 40px; } .faq_btn{ align-self:center; margin-left: 150px; a{ display: block; background-color: $black; color: $white; width: 320px; padding: 10px; text-align: center; border-radius: 50px; position: relative; transition: .5s; &::after{ content: ''; display: block; background: url(../images/arrow02.png) no-repeat; background-size: 100% auto; width: 16px; height: 6px; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); } } a:hover{ background-color: $white; border: 1px solid $color; color: $black; &::after{ content: ''; display: block; background: url(../images/arrow.png) no-repeat; background-size: 100% auto; width: 16px; height: 6px; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); } } } /************************************************************ 会社概要 ************************************************************/ .company_main { background: url("../images/company1.jpg") 50% 0/cover no-repeat; } .company_left{ width: 580px; margin-right: 100px; } .company_right{ width: 760px; } .company_name{ font-size: 18px; line-height: 1.8; text-align: right; span{ display: block; font-size: 31px; font-family: "HG正楷書体-PRO",cursive; } } .company_table{ th{ vertical-align: top; width: 230px; padding: 40px 0; p{ &::before{ content: ''; display: inline-block; width: 7px; height: 1em; border-left: 7px solid $color; padding-left: 15px; } } } td{ vertical-align: top; padding: 40px 0; } a{ color:$black; } } .company_table_dl{ display: flex; flex-wrap: wrap; dt{ width: 10em; } dd{ width: 500px; } dd:first-of-type{ margin-bottom: 20px; } } .company_left02{ width: 10em; } .company_right02{ width: 1000px; } /************************************************************ お問い合わせ ************************************************************/ .contact_main { background: url("../images/contact1.jpg") 50% 0/cover no-repeat; } .contact_left{ min-width: 450px; text-align:center; padding: 30px 0; border-top:1px solid $gray_777777; border-bottom:1px solid $gray_777777; } .contact_right{ border:1px solid #00b900; padding: 30px 30px 30px 82px; } .contact_dl{ display: flex; align-items: center; dt{ margin-right: 20px; } dd{ width: 80px; } } .line_txt{ position: relative; &::before{ content: url(../images/contact2.jpg); display: block; width: 42px; height: 42px; position: absolute; left: -52px; } } .contact_table{ width: 100%; th{ vertical-align: center; width: 310px; padding: 25px 0; p{ &::before{ content: ''; display: inline-block; width: 7px; height: 1em; border-left: 7px solid $black; padding-left: 15px; } } .req{ &::before{ content: ''; border-left: 7px solid $red; } } } tr:last-child th{ vertical-align:top; } td{ vertical-align: top; padding: 25px 0; } a{ color:$black; } } .contact_note{ border-left: 7px solid $red; line-height: 1; font-size: 13px; padding-left: 0.5em; } .form_txt,.form_textarea{ width: 100%; border: none; padding: 10px; } .wpcf7-form-control-wrap { display: block; } .wpcf7-form-control.wpcf7-checkbox { display: flex; flex-wrap: wrap; } span.wpcf7-list-item { position: relative; margin: 0 50px 0 0 !important; } .wpcf7-list-item-label { cursor: pointer; } /*既存のチェックボックスを見えなくする*/ input[type="checkbox"] { position: absolute; opacity: 0; } /*チェックボックスの枠*/ .wpcf7-list-item-label:before { content: ''; display: inline-block; background-color: $white; width: 20px; height: 20px; position: relative; top: -3px; margin-right: 10px; vertical-align: middle; cursor: pointer; text-align: center; } /*チェックアイコン*/ input[type="checkbox"]:checked + .wpcf7-list-item-label:after { content: ""; display: block; position: absolute; top: 3px; left: 0; width: 20px; height: 20px; background: url("../images/check.png") no-repeat center; background-size: contain; } .form_btn{ a{ display: block; width: 320px; font-size: 16px; letter-spacing: 0.5em; background-color: $black; color: $white; padding: 10px 10px 12px; text-align: center; border-radius: 50px; transition: .5s; border: 1px solid $black; margin: 100px auto 0; } a:hover{ background-color:$white; color:$black; border: 1px solid $color; } } /************************************************************ お知らせ ************************************************************/ .news_main { background: url("../images/news1.jpg") 50% 0/cover no-repeat; } .pagenavi{ text-align: right; font-size: 13px; a{ color: $black; margin: 0 5px; } span{ margin: 0 5px; } } .prev,.next{ border: 1px solid $gray_777777; letter-spacing: normal; } .prev{ padding: 3px 8px 3px 0; margin-right: 20px !important; } .next{ padding: 3px 0 3px 8px; margin-left: 20px !important; } .current{ border-bottom: 1px solid $gray_777777; padding-bottom: 5px; } .news_title{ border-bottom:1px solid $gray_777777; padding-bottom: 20px; margin-bottom: 20px; } .news_date{ font-size: 13px; text-align: right; } .list_btn{ a{ display: block; width: 260px; margin: 0 auto; background-color: $black; color: $white; padding: 10px 10px 12px; text-align: center; border-radius: 50px; transition: .5s; border: 1px solid $black; } a:hover{ background-color:$white; color:$black; border: 1px solid $color; } } /* PC用 ------------------------------------------------------------*/ @media only screen and (max-width: 1699px) { } @media only screen and (max-width: 1400px) { } @media only screen and (max-width: 1200px) { /************************************************************ サービス・管理 ************************************************************/ .se01_bb_list02 { display: block; &::after{ border: none; } } .se01_flex02 { width: 100%; &:nth-child(odd){ padding: 35px 5px 35px 20px; } &:nth-child(even){ padding:35px 5px 35px 20px; } &:first-child{ border-bottom: 1px solid #777777; } } .se01_left02 { min-width: 415px; .midashi21 { margin-left:25px; } } .se01_right02 { width: calc(100% - 415px); } } @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; } /************/ .top_bg_flex { grid-template-columns: repeat(1, 1fr); column-gap: 0; > div { height: 480px; a:after { opacity: 1; transition: 0s ease; } } } /*********************/ .top_bg_flex2 { display: grid; grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 1px; text-align: center; a { min-height: 400px; padding: 20px; &:after { opacity: 1; transition: 0s ease; } } .bg_text { min-height: 0; margin-bottom: 30px; } } /*********/ .top_bg6 { height: auto; padding: 100px 0; } } @media only screen and (max-width: 740px) { @for $i from 30 through 70 { .flex_#{$i} { width: 100%; } } $p: 100; $pixel:100px; @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; } /************************/ .logo { top:20px; left: 20px; img { width: 100px; height: auto; } } /***************/ .pc_menu{ display: none; } /***************/ .top_main { height: 470px; padding-top: 140px; h2 { font-size: 18px; line-height: 1.3em; } .t45 { font-size: 28px; } .span_plr { padding: 0 10px; position: relative; top: -3px; } } .title_bg { margin: 1px 0; padding: 5px 8px; } /************/ .eng_midashi { font-size: 15px; } .text21 { font-size: 17px; } .line_hi28 { line-height: 2.4em; } /**************/ .news_flex { display: block; } .news_left { width: 100%; } .midashi29 { font-size: 22px; letter-spacing: 0.2em; } .news_right { width: 100%; padding-top: 30px; } .news { border-top: 1px solid $color; a { flex-wrap: wrap; justify-content: flex-start; padding: 20px 0; } } .n_cell1 { width: 90px; } .n_cell3 { width: 100%; padding-left: 0; margin-top: 5px; } /************/ .eng_midashi2 { font-size: 16px; } .top_bg_flex { row-gap: 1px; > div { height: 100%; } a { display: block; padding: 40px 20px; height: 100%; position: relative; &:after { opacity: 1; } } .more { position: relative; right: 0; bottom: 0; margin-top: 15px; } } .bg_midashi { font-size: 20px; line-height: 1em; position: relative; &:before { left:25px; } } .bg_num { font-size: 12px; top: -3px; } .midashi21 { font-size: 18px; } .bg_text { line-height: 2.2em; } /*********************/ .top_bg_flex2 { a { min-height: 0; padding: 40px 20px; } .bg_text { min-height: 0; margin-bottom: 30px; } } /*********/ .top_bg6 { height: auto; padding: 60px 0; } .banner_list { .top_banner { position: relative; display: flex; align-items: center; width: 100%; max-width: 472px; margin: 20px auto; a { height: 180px; padding: 0 20px; } h3 { font-size: 22px; span { font-size: 16px; padding-left: 25px; } } p { margin-top: 25px; padding-left: 6px; } } } /*****/ .f_logo { padding: 45px 14px 45px; text-align: center; img { width: 150px; height: auto; } } .copy { font-size: 10px; } /************************************************************ 下層共通 ************************************************************/ .main_size { height: 340px; } .text18{ font-size: 14px; } .title_in { .font2 { font-size: 50px; } .title_ja { font-size: 14px; } } .midashi24 { font-size: 18px; } .pc{ display: none; } .ipad{ display: block; } .sp{ display: none; } /************************************************************ サービス・管理 ************************************************************/ .service01_bg{ height: 260px; } .se01_box { padding: 10px; h3 { font-size: 20px; } } .se01_eng { font-size: 12px; } /***/ .se01_flex,.se01_flex02 { display: block; padding: 35px 5px 35px 15px; } .se01_bb_list .se01_flex ,.se01_bb_list02 .se01_flex02{ border-bottom: 1px solid #777777; &:last-child { border-bottom: 0; } } .se01_left,.se01_left02 { width: 100%; margin-bottom: 20px; .img100 { width: 80px; } .midashi21 { width: calc(100% - 100px); } } .se01_right,.se01_right02 { width: 100%; } /************************************************************ サービス・運用 ************************************************************/ .service02_bg { height: 260px; } .se02_left{ width: 100%; margin: 0 auto; } .se02_right{ width: 100%; .midashi21{ text-align: center; } } .service02_bg02{ background: url("../images/service02_8.jpg") 50% 0/cover no-repeat; } .se02_gray_bg{ margin: 0 3%; padding: 50px 30px; } .se02_left02{ min-width: auto; width: 100%; padding: 0 ; text-align: center; } .se02_right02{ width: 100%; padding: 20px 0 0 0; margin-top: 20px; border-left: none; border-top: 1px solid $gray_777777; } .img_fit{ img{ width: 100%; height: 400px; object-fit: cover; } } /************************************************************ プラン ************************************************************/ .plan_table{ border-bottom: none; tr{ display: flex; flex-wrap: wrap; } th{ width: 5%; writing-mode: vertical-rl; border-right: 1px solid $gray_777777; border-bottom: 1px solid $gray_777777; display: flex; align-items: center; justify-content: center; } td{ border-right:none; padding: 30px; min-width: auto; width: 95%; border-bottom: 1px solid $gray_777777; .flex_box{ display: flex; } } td:first-of-type{ width: 95%; } } /************************************************************ ご依頼の流れ ************************************************************/ .flow_bg{ width: 90%; } .flow_title_li{ li{ width: 180px; height: 100%; text-align: center; padding: 30px 0 40px; p{ font-size: 21px; } span{ font-size: 11px; margin-bottom: 10px; } } li:first-child{ background: url(../images/flow2.png) no-repeat center bottom; background-size: cover; position: absolute; left: 0; } li:last-child{ background: url(../images/flow3.png) no-repeat center bottom; background-size: cover; position: absolute; right: 0; } } .flow_dl{ width: 90%; margin: 160px auto 0; padding-bottom: 100px; dt{ .flex_box{ justify-content: center; } } dt:first-of-type,dt:last-of-type,dd:first-of-type,dd:nth-of-type(2),dd:last-of-type{ &::before,&::after{ width: 120px; top:calc(50% - 30px); transform: scale(0.5) translateY(-50%); } } dt:first-of-type{ &::before{ left: -90px; } &::after{ right: -90px; } } dt:last-of-type{ &::before{ left: -90px; } &::after{ right: -90px; } } dd:first-of-type{ margin-left: auto; &::after{ right: -90px; } } dd:nth-of-type(2){ &::before{ left: -90px; } } dd:last-of-type{ &::after{ right: -90px; } } } .flow_left{ width: 100%; margin-right: 0; margin-bottom: 20px; } .flow_right{ width: 100%; .contact_btn a{ margin: 0 auto; } } .flow_txt_left{ text-align: left; } .flow_agreement{ width: 100%; padding: 50px 15px; } /************************************************************ よくあるご質問 ************************************************************/ .faq_title{ &::before{ left: -25px; width: 15px; } } .question{ padding: 10px 20px; font-size: 14px; &:after{ width: 12px; right: 20px; } } .question_icon{ font-size: 18px; } .question_txt{ padding: 5px 30px 5px 25px; } .answer{ padding: 20px; } .answer_icon{ font-size: 18px; } .answer_txt{ width: 85%; padding: 10px 0 10px 25px; } .faq_btn{ margin: 20px auto 0; } /************************************************************ 会社概要 ************************************************************/ .company_left{ width: 70%; margin: 0 auto; } .company_right{ width: 100%; } .company_name{ font-size: 14px; span{ font-size: 24px; } } .company_table{ th{ width: 14em; } } .company_table_dl{ dt{ width: 10em; } dd{ width: 70%; } } .company_left02{ width: 10em; } .company_right02{ width: 100%; } /************************************************************ お問い合わせ ************************************************************/ .contact_left{ min-width:auto; width: fit-content; margin: 0 auto 40px; } .contact_right{ width: fit-content; margin: 0 auto; } .contact_table{ width: 100%; th{ display: block; width: 100%; padding: 25px 0 0; } td{ display: block; } } } /* スマートフォン 縦(ポートレート) */ @media only screen and (max-width: 480px) { /************************************************************ 下層共通 ************************************************************/ .main_size { height: 250px; } .pc{ display: none; } .ipad{ display: none; } .sp{ display: block; } .tel_hour{ font-size: 11px; } /************************************************************ サービス・管理 ************************************************************/ .service01_bg{ height: 240px; } /************************************************************ サービス・運用 ************************************************************/ .service02_bg{ height: 240px; } .se02_gray_bg{ padding: 50px 20px; } .img_fit{ img{ height: 280px; } } /************************************************************ プラン ************************************************************/ .plan_title_eng{ padding: 15px 5px; margin-right: 30px; } .plan_table{ th{ width: 8%; } td{ padding: 20px; width: 92%; .flex_box{ display: block; } } } .plan_li{ width: 100%; } /************************************************************ ご依頼の流れ ************************************************************/ .flow_agreement{ padding: 40px 15px; } /************************************************************ よくあるご質問 ************************************************************/ .faq_btn{ width: 100%; a{ width: 100%; } } /************************************************************ 会社概要 ************************************************************/ .company_left{ width: 100%; } .company_name{ font-size: 13px; span{ font-size: 21px; } } .company_table{ th{ width: 11em; } } .company_left02{ width: 8em; } .company_table_dl{ display: block; dd{ width: 100%; } } /************************************************************ お問い合わせ ************************************************************/ .contact_right{ padding: 35px 15px ; } .line_txt{ text-align: center; padding-left: 52px; &::before{ top: -0.3em; left: calc(50% - 8em); transform: translateX(-50%); } } .form_btn{ a{ width: 80%; font-size: 14px; margin: 80px auto 0; } } }