// ブレイクポイントの初期設定 $breakpoints: ( 'xs': 'screen and (min-width: 480px)', 'sm': 'screen and (min-width: 600px)', 'md': 'screen and (min-width: 768px)', 'lg': 'screen and (min-width: 1024px)', 'xl': 'screen and (min-width: 1200px)', 'xxl': 'screen and (min-width: 1400px)', 'wd': 'screen and (min-width: 1600px)', ) !default; @mixin mq($breakpoint: md) { @media #{map-get($breakpoints, $breakpoint)} { @content; } } @mixin en-font() { font-family: 'Noto Serif', serif; } // minxin設定 @mixin wrapper($inner: 1140px) { width: 100%; max-width: $inner; margin: 0 auto; } // flex @mixin flex($alin: center, $justyfy: space-between) { display: flex; align-items: $alin; justify-content: $justyfy; } @mixin bg-icon($size: cover) { background-repeat: no-repeat; background-size: $size; background-position: center center; } @mixin shadow-box() { background-color: $white; padding: 1.5rem; box-shadow: $shadow; width: 100%; margin: 0 auto; } // 変数の設定 $white: #fff; $black: #2e2e2e; $gray: #f5f5f5; $gray2: #efefef; $base: #333; $color2: #F0B43C; $color3: #82B446; $btn1: rgb(54, 51, 51 ); $btn2: #254191; $btn3: #F0B43C; $btn4: #F0B43C; $blue: #0E5A89; $l-blue: #7CD1F3; $red: #DD0000; $yellow: #FDD826; $shadow: rgba(0, 0, 0, 0.1) 0px 5px 7px; /*=================================== 基本設定 ====================================*/ html { font-size: 62.5%; } body { margin: 0px; overflow-x: hidden; color: #333; line-height: 1.6; font-size: 1.4rem; letter-spacing: 1.2px; font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; @include mq() { font-size: 1.6rem; } } p { line-height: 1.8; margin-bottom: 1.6rem; @include mq() { line-height: 1.6; } &:last-child { margin-bottom: 0; } } a { display: inline-block; color: $black; text-decoration: none; } a:hover { opacity: .7; transition: all.3s ease-in-out; } img { width: 100%; height: auto; object-fit: cover; object-position: top; } h2, h3, h4 { line-height: 1.2; @include mq() { line-height: 1.3; } @include mq('lg') { line-height: 1.4; } } /*=================================== common(共通設定) ====================================*/ .section { padding: 3rem 0; @include mq() { padding: 6rem 0; } } .content { margin: 0 auto; padding: 0 4vw; margin: 0 auto; @include mq() { max-width: 1140px; padding: 0 3rem; } } .time { display: block; font-size: 1.2rem; font-weight: normal; margin-bottom: 1rem; text-align: center; color: $black; font-weight: 700; @include mq('xs') { @include flex(center, center); font-size: 1.4rem } @include mq('lg') { font-size: 2rem } span { display: block; } span+span { margin-left: 1.6rem } i { margin-right: .5rem } } // サムネイルがない時の画像指定 .noImg { @include flex(center, center); background-color: #ccc; width: 100%; min-width: 100%; height: 200px; @include mq() { height: 350px; } i { font-size: 5rem; color: $white; @include mq() { font-size: 7vw; } @include mq('lg') { font-size: 5rem; } } } .home .genreMid .noImg { height: 250px; @include mq() { height: 350px; } @include mq('lg') { height: 450px; } } // 各セクションのタイトル .section-title { font-size: 2.4rem; color: $black; text-align: center; margin-bottom: 2rem; line-height: 1.6; font-family: 'Noto Sans JP', sans-serif; font-weight: 900; position: relative; z-index: 1; @include mq(lg) { font-size: 3rem; margin-bottom: 3rem; } } .home { .genre01, .genre02 { .section-title { font-size: 1.4rem; color: $black; text-align: center; margin-bottom: 2rem; line-height: 1.6; font-family: 'Noto Sans JP', sans-serif; font-weight: 900; position: relative; z-index: 1; @include mq('xs') { font-size: 1.6rem; } @include mq('sm') { font-size: 2.4rem; } @include mq(lg) { font-size: 3rem; margin-bottom: 3rem; } } } } .bg-main { background: $base; } .bg-selection_1 { background: rgba($blue, 80%); } .bg-selection_2 { background: rgba($color2, 80%); } .bg-selection_3 { background: rgba($color3, 80%); } .bg-01 { //メインカラー01 background-color: $blue; } .bg-02 { //メインカラー02 background-color: $color2; } .bg-03 { //メインカラー03 background-color: $color3; } .bg-gray { background-color: $gray; } .bg-black { background-color: $black; } /*=================================== 独自のパーツ(今回のみ使用する共通パーツ) ====================================*/ .img-wrap { position: relative; h3 { @include flex(center, normal); padding: 1rem 1.5rem; color: $white; position: absolute; top: 0; left: 0; } } .icon-wrap { display: block; line-height: 1; } .icon { width: 30px; height: 30px; display: inline-block; margin-right: .5rem; color: $white; } /*=================================== Button(ボタン) ====================================*/ .btn-wrap { @include flex(center, center); flex-direction: column; @include mq() { flex-direction: row; } } .btn+.btn { margin-top: 1.6rem; @include mq() { margin: 0 0 0 1rem; } } .btn { text-align: center; width: 100%; @include mq('xs') { max-width: 350px; } .copy { @include flex(center, center); margin-bottom: .7rem; font-size: 1.2rem; @include mq() { font-size: 1.4rem; } &::before, &::after { content: ''; display: block; width: 2px; height: 18px; background-color: $btn1; } &::before { margin-right: 1rem; transform: rotate(-20deg); } &::after { margin-left: 1rem; transform: rotate(20deg); } } a { display: block; width: 100%; font-size: 1.6rem; background-color: $l-blue; color: $black; font-weight: 700; border-radius: 50px; text-align: center; padding: 1.5rem 4.5rem; transition: all.3s; border: 2px solid $black; position: relative; i { position: absolute; top: 50%; right: 20px; transform: translateY(-50%); } &:hover { background-color: $white; color: $l-blue; border: 2px solid $l-blue; transition: all.3s; } } } .btn.btn2 { .copy { &::before, &::after { background-color: $btn2; } } a { background-color: $yellow; border-color: $black; color: $black; &:hover { background-color: $white; color: $yellow; transition: all.3s; } } } .btn.btn3 { .copy { &::before, &::after { background-color: $btn3; } } a { background-color: $yellow; border-color: $black; color: $black; border: 2px solid $black; &:hover { background-color: $white; color: $yellow; border: 2px solid $yellow; transition: all.3s; } } } .btn.btn4 { max-width: 550px !important; a { background-color: $btn4; border-color: $btn4; border: 2px solid $black; &:hover { background-color: $white; color: $btn4; border: 2px solid $btn4; transition: all.3s; } } } /*=================================== パンくず ====================================*/ .pankuz { background-color: $gray; .inner { font-size: 1.2rem; padding: 0 4vw; max-width: 1140px; margin: 0 auto; @include mq() { font-size: 1.4rem; padding: 0 3rem; } } } /*=================================== PAGER(ページネーション) ====================================*/ .pager { margin: 0 auto; text-align: center; .page-numbers+.page-numbers { margin-right: 1.5rem; } .page-numbers.current { background-color: $base; padding: .5rem 1rem; } .next, .prev { font-size: 30px; vertical-align: -9%; } } /*=================================== BLOG CARD(ブログカード) ====================================*/ .blog-card { background: rgba(110, 115, 130, 0.05); padding: 1rem; @include mq() { padding: 1.5rem; } a { display: flex; cursor: pointer; .blog-card-thumbnail { width: 30%; min-width: 125px; @include mq() { min-width: 150px; } img { width: 100%; height: 100%; margin: 0; } } .blog-card-content { padding: .7rem 0 0 .7rem; @include mq() { padding: 1rem 0 0 1rem; } .blog-card-title { font-size: 1.6rem; font-weight: 700; border-bottom: 3px solid $base; margin-bottom: 1rem; @include mq() { font-size: 2rem; margin-bottom: 1.6rem; } } .blog-card-excerpt { text-decoration: underline; color: blue; font-size: 1rem; @include mq('sm') { font-size: 1.2rem; } @include mq() { font-size: 1.4rem; } } } } } /*=================================== BANNER(フッター固定バナー) ====================================*/ .footer-banner { position: fixed; bottom: 0; left: 0; padding: 4px 0; width: 100%; background: rgb(10 10 10 / 70%); display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: center; -ms-align-items: center; align-items: center; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; -o-flex-wrap: wrap; flex-wrap: wrap; z-index: 99; } .footer-banner-txt { display: block; max-width: 1140px; width: 95%; font-size: 15px; justify-content: space-between; -ms-align-items: center; align-items: center; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; line-height: 1.4; text-align: center; @include mq() { width: 85%; } } .footer-banner .btn-wrap { margin: 22px 0 14px; } a.btn-f { font-size: 1.6rem; padding: .5rem 2rem 1rem; color: $white; background: #c52929; -webkit-box-shadow: 0 5px 0 #880e0e; box-shadow: 0 5px 0 #880e0e; width: 100%; position: relative; @include mq() { font-size: 2.2rem; padding: 1.5rem 2.5rem; width: 100%; } @include mq('xl') { font-size: 2.2rem; padding: 1.5rem 2.5rem; width: 70%; } span { font-size: 1.4rem; font-weight: 400; position: absolute; top: -15px; left: calc(50% - 38%); display: block; width: 77%; padding: .5rem; color: #c52929; border: 2px solid #c52929; border-radius: 0.5rem; background: $white; -webkit-box-shadow: 0 3px 3px rgb(0 0 0 / 20%); box-shadow: 0 3px 3px rgb(0 0 0 / 20%); @include mq() { top: -11px; padding: 1rem; } } i { position: absolute; bottom: 15px; right: 3%; transition: all.3s ease-in-out; } } #wpfront-scroll-top-container { /* background-color: $base; color: $black !important; */ display: block; font-size: 20px; width: 50px; height: 50px; line-height: 2; position: fixed; bottom: 18rem !important; right: 10px !important; text-align: center; z-index: 9999; @include mq() { font-size: 30px; width: 60px; height: 60px; } i { color: $white; } } /********************************* 目次 *********************************/ #toc_container { padding: 2rem 6rem; background: #ffffff; color: #333; max-width: 700px; width: 80% !important; margin: 0rem auto; border: 0; border-radius: 1rem; border: 3px solid $blue; } #toc_container ul { padding-left: 0; list-style: none; font-size: 110%; } .toc_title { font-size: 27px; color: #333; margin-bottom: 3rem; font-weight: bold; padding: 0 0 1rem; position: relative; text-align: center; letter-spacing: 4px; } .toc_title span { font-size: 1.4rem; display: block; } .toc_title span a { display: inline-block; color: $blue; padding: 0.4rem 2rem; border-radius: 30px; } .toc_title small { font-size: 60%; } .single #toc_container .toc_list>li, #toc_container .contents-subheading { font-size: 1.6rem; counter-increment: title; margin-bottom: 2rem; display: flex; align-items: center; flex-wrap: wrap; background-color: #ffffff; font-weight: 700; @include mq() { font-size: 2.2rem; } } .single #toc_container .toc_list>li a, #toc_container .contents-subheading { position: relative; padding-left: 5rem; &:before { position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 40px; height: 40px !important; } } .single #toc_container .toc_list>li a, #toc_container .contents-subheading a { line-height: 1.2; color: #1e1e1e; } .contents-subheading a:hover { text-decoration: underline; opacity: 0.5; transition: 0.3s; } .single #toc_container .toc_list>li:before, #toc_container .contents-subheading:before { content: "0" counter(title); display: inline-block; font-weight: bold; background: $blue; width: 40px; height: 40px; line-height: 30px; text-align: center; color: #ffffff; margin-right: 1rem; padding: 0.5rem; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; } .single #toc_container .contents-subheading { padding-left: 5rem; margin: 3rem 0; } .toc_list:last-child { margin: 0; } .toc-link { font-size: 1.6rem; border: none; margin: 0 0 1.5rem; font-weight: 700; padding: 1rem; position: relative; transition: 0.3s; background: #f5f5f5; } .toc-link:last-child { margin: 0; } .toc-link a:hover { text-decoration: underline; opacity: 0.5; transition: 0.3s; } .single #toc_container { margin: 4rem auto !important; } .single #toc_container .toc_list { width: 100% !important; } .single #toc_container .toc_list li { margin-top: 1.6rem; position: relative; } .single #toc_container .toc_list li a { // padding-left: 1.2rem; } .single #toc_container .toc_list li a .toc_number.toc_depth_1 { display: none; visibility: hidden; } .single #toc_container .toc_list li ul { width: 100%; margin-left: 0; } .single #toc_container .toc_list li ul li a { position: relative; display: block; background: #f5f5f5; padding: 1rem; padding-left: 2.4rem; font-size: 16px; } .single #toc_container .toc_list li ul li a:after { position: absolute; top: 0; left: 1rem; font-size: 14px; bottom: 0; display: block; margin: auto; font-family: "Font Awesome 5 Free"; font-weight: 900; width: 14px; height: 14px; color: #0FA0F8; line-height: 1; content: ""; } @media screen and (max-width: 768px) { #toc_container { padding: 1.5rem 4vw; margin: 0 auto; width: 90% !important; } .toc_title { font-size: 24px; margin: 0 !important; } .toc_title:before { font-size: 2.8vw; padding: 1.5vw; margin-right: 0.5rem; vertical-align: 7%; } #toc_container .contents-subheading { font-size: 16px; margin-bottom: 1.3rem; line-height: 25px; } .toc_list { margin-bottom: 3vw; } .toc-link { font-size: 14px; margin-bottom: 0.8rem; padding-left: 2rem; } .toc-link:before { width: 3px; height: 3px; margin-right: 0.5rem; } } @media screen and (max-width: 500px) { .toc_title { font-size: 20px; } .toc_title:before { font-size: 3.5vw; padding: 2vw; vertical-align: 15%; } .toc-link { margin-bottom: 0.5rem; padding-left: 1.5rem; } } .toc_toggle a { font-size: 12px; } #toc_container span.toc_toggle { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; } #toc_container .contents-subheading { margin: 2rem 0; } #toc_container .toc-link { display: block; margin-bottom: 1rem; } #toc_container .toc-link a { position: relative; display: block; background: #f5f5f5; padding: 1rem; padding-left: 2.4rem; } #toc_container .toc-link a:after { position: absolute; top: 0; left: 1rem; font-size: 14px; bottom: 0; display: block; margin: auto; font-family: "Font Awesome 5 Free"; font-weight: 900; width: 14px; height: 14px; color: #0FA0F8; line-height: 1; content: ""; } /*=================================== 基本情報 ====================================*/ /* table.table, table.table tbody, table.table tbody tr th, table.table tbody tr td { display: block; width: 100%; } .table { tbody { tr+tr { margin-top: 1.6rem } tr { @include flex(center, normal); flex-direction: column; @include mq() { flex-direction: row; } th { font-size: 1.4rem; width: 100%; color: $white; font-weight: 700; padding: .7rem; text-align: center; background-color: $base; @include mq() { font-size: 1.6rem; max-width: 150px; min-width: 150px; padding: 1rem; } } td { padding: .7rem; line-height: 1.2; font-size: 1.2rem; @include mq() { font-size: 1.4rem; padding: 0 0 0 1rem; } } } } } //TOPページの基本情報 .table.top { tbody { tr+tr { margin: 0; } tr { margin-bottom: 0; @include mq() { flex-direction: column; } th { max-width: 100%; } td { padding: .7rem; } } } } //詳細ページ .single .table { tbody { tr { @include mq() { display: flex; } } } } */ //3選詳細ページ .single .selections .table { tbody { tr { th { color: $white; } } } } .table.list { tbody tr { th { font-size: 1.6rem; max-width: 120px; min-width: 120px; } td { text-align: left; font-size: 1.4rem; } } } /*=================================== Point(ポイント) ====================================*/ .point { ul { li { position: relative; z-index: 1; i { margin-right: .5rem; } } } } /*=================================== Feature(特徴・強み) ====================================*/ .feature {} /*=================================== 口コミ ====================================*/ .review { .wrap+.wrap { margin-top: 4rem; } .wrap { //border: 2px solid; background: rgba($blue, 0.1); .review_title, .admin_title { //共通タイトル //background-color: $base; padding: .7rem; font-size: 1.4rem; color: $white; position: relative; @include mq() { font-size: 1.6rem; } } .review_title { &::after { border-top: 15px solid $base; } } blockquote { padding: 2rem 1.5rem; font-size: 1.2rem; @include mq() { font-size: 1.4rem; padding: 2rem; } } .quote { text-align: right; font-size: 1.2rem; padding-right: 2rem; @include mq() { font-size: 1.4rem; } a { font-size: 1.2rem; @include mq() { font-size: 1.4rem; } color: blue; } } } .review_comment { border-color: $base; padding-bottom: 2rem; } .admin_comment { border-color: $gray; p { padding: 2rem 1.5rem; font-size: 1.2rem; @include mq() { font-size: 1.4rem; padding: 2rem; } } } } //TOP .review.top { display: block; @include mq() { display: flex; } .wrap+.wrap { @include mq() { margin: 0 0 0 1.5%; } } .wrap { @include mq() { width: 48.5%; } } } /*=================================== Selection_1(軸1) ====================================*/ .home .genre01 { background: rgba($l-blue, 0.3); } .genre01 { .section-title::after { background-color: $blue; } } /*=================================== Selection_2(軸2) ====================================*/ .home .genre02 { background: $yellow; } .genre02 { .section-title::after { background-color: $color2; } } /*=================================== HEADER(ヘッダー) ====================================*/ .header { position: fixed; top: 0; left: 0; display: flex; align-items: center; width: 100%; height: 70px; background: $white; z-index: 100; } .header-inner { width: 100%; margin: 0 auto; padding: 0 1.5rem; // @include mq() { // padding: 0 6rem; // } a { display: block; text-align: left; } } /*=================================== MENU(ハンバーガーメニュー) ====================================*/ .burgerBtn_wrapper { background: $blue; position: fixed; top: 10px; right: 10px; z-index: 9999; } .burgerBtn { position: relative; /*ボタン内側の基点となるためrelativeを指定*/ width: 50px; height: 50px; cursor: pointer; } /*ボタン内側*/ .burgerBtn { span { display: inline-block; transition: all .4s; /*アニメーションの設定*/ position: absolute; left: 14px; height: 2px; border-radius: 2px; background: $white; &:nth-of-type(1) { top: 15px; width: 45%; } &:nth-of-type(2) { top: 23px; width: 45%; } &:nth-of-type(3) { top: 31px; width: 45%; } } &.active span:nth-of-type(1) { top: 18px; left: 18px; transform: translateY(6px) rotate(-135deg); width: 30%; } &.active span:nth-of-type(2) { opacity: 0; } &.active span:nth-of-type(3) { top: 30px; left: 18px; transform: translateY(-6px) rotate(135deg); width: 30%; } } .menu-content { background: rgba($base, .9); width: 100%; height: 100vh; position: fixed; top: 0%; left: -150%; z-index: 998; transition: all.2s ease-in-out; @include mq() { width: 70vw; } &.active { left: 0; transition: all.2s ease-in-out; } #menu-header-menu { margin: 0 auto; padding: 3rem 4vw 0; width: 90%; position: relative; @include mq() { padding: 6rem 2rem 0; } @include mq('lg') { padding: 12rem 4rem 0; max-width: 850px; } li { text-align: left; margin-bottom: 2rem; position: relative; &:before { content: ''; color: $white; background: $black; display: inline-block; width: 30px; height: 30px; text-align: center; vertical-align: -21%; margin-right: 1rem; border-radius: 50%; @include mq() { font-size: 18px; margin-right: 3rem; width: 40px; height: 40px; border-radius: 50%; vertical-align: -9%; color: $white !important; } } &:after { font-family: 'Font Awesome 5 Free'; font-size: 15px; font-weight: 900; color: $white; display: inline-block; position: absolute; top: 15px; left: 15px; transform: translate(-50%, -50%); @include mq('xs') { font-size: 18px; top: 20px; left: 15px; } @include mq() { left: 20px; } } a { font-weight: 600; vertical-align: 20%; color: $white; &::after { content: ''; display: block; color: $black; height: 1px; background-color: $black; width: 15px; transition: all.2s ease-in-out; } &:hover::after { width: 100%; transition: all.2s ease-in-out; } } } } } .burger-musk { width: 0; height: 0; position: fixed; opacity: .7; top: 0%; z-index: 997; &.active { width: 100vw; height: 100vh; } } // 各項目ごとのアイコン #menu-header-menu li { &:nth-child(1)::after { content: '\f015'; } &:nth-child(2)::after { content: '\f304'; } &:nth-child(3)::after, &:nth-child(4)::after, &:nth-child(5)::after, &:nth-child(6)::after { content: '\f518'; } &:nth-child(7)::after { content: '\f51c'; } &:nth-child(8)::after { content: '\f3c5'; } &:nth-child(9)::after { content: '\f51c'; } } /*=================================== FOOTER(フッター) ====================================*/ .footer { background: $base; .content { padding-top: 6rem; padding-bottom: 6rem; .postBox:first-child { li+li { margin-top: 1rem; } } .postBox { h3 { position: relative; font-size: 1.8rem; margin-bottom: 1.6rem; padding: 0.5em; color: $white; border-bottom: 1px solid $white; padding-left: 4rem; &:before { display: block; position: absolute; width: 3rem; height: 3rem; line-height: 1; top: 0; bottom: 0; left: 0; margin: auto; font-size: 3rem; font-weight: 900; font-family: "Font Awesome 6 Free"; content: "\f0ca"; } @include mq() { font-size: 2rem; } @include mq('lg') { font-size: 2.4rem } } ul { @include flex(center, static); flex-wrap: wrap; li { @include mq() { margin-right: 1.6rem; } } li { margin-top: 1rem; display: block; width: 100%; @include mq() { display: inline-block; width: auto; } a { color: $white; } i { margin-right: .3rem; font-size: 1.6rem; } } } } } } // 免責事項 .disclaimer { font-size: 1.4rem; position: relative; h3 { font-size: 1.4; font-weight: 400; background: $base; color: $white; border: 3px solid $white; padding: .5rem; width: 100%; border-radius: 5px; max-width: 250px; text-align: center; margin: 0 auto; font-size: 2rem; position: absolute; left: 50%; transform: translate(-50%, -50%); z-index: 2; } p { position: relative; color: $white; padding: 3rem 1.5rem 1.5rem; box-sizing: border-box; border: 3px solid $white; border-radius: 5px; } } // コピーライト .Copyright { background-color: $base; color: $white; text-align: center; font-size: 1.2rem; a { color: $white; } } /*=================================== MV(メインビジュアル) ====================================*/ .mv { background-image: url(img/mv-bg.png); background-position: center 60%; background-repeat: no-repeat; background-size: cover; width: 100%; height: 500px; position: relative; display: flex; align-items: center; justify-content: center; @include mq('xs') { height: 500px; } @include mq() { height: 600px; } &-inner { max-width: 400px; margin: auto; width: 90%; @include mq() { max-width: 500px; } @include mq(lg) { max-width: 900px; } } &-txt { margin-bottom: 3rem; } } .top3box { background: $gray; height: 480px; @include mq() { height: 375px; } &-inner { width: 95%; max-width: 1140px; margin: 0 auto; display: flex; flex-wrap: wrap; transform: translateY(-10rem); @include mq() {} } &-card { width: 100%; max-width: 400px; margin: 2% auto; background: $white; padding: 2rem; box-shadow: 2px 2px 6px rgba($black, 0.1); border-radius: 1rem; display: flex; align-items: center; @include mq(xs) { width: 80%; } @include mq() { width: 31.3%; display: block; padding: 2rem 4rem; } } &-img { width: 120px; margin-right: 1rem; @include mq() { width: 100%; margin-right: 0; } img { display: block; @include mq() { margin-bottom: 2em; } } } &-caption { width: calc(100% - 13rem); font-size: 1.6rem; font-weight: 700; text-align: left; @include mq() { width: 100%; font-size: 2rem; text-align: center; } } } .mv.sub { background-image: url(img/mv-bg.png); background-position: center center; background-size: cover; height: 300px; .mv-inner { width: 100%; padding: 0 1rem; text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; .mv-ttl { font-size: 2.4rem; font-weight: 700; color: $black ; width: 100%; line-height: 1.3; @include mq() { font-size: 3.2rem; } @include mq('lg') { font-size: 4.2rem; } @include mq('xl') { font-size: 4.8rem; } } } } .mv-ttl b { position: relative; font-family: "Noto Sans JP", sans-serif; font-weight: 900; } .mv-ttl b span+div { display: inline-block; padding-left: 4rem; } // 軸1 .mv.sub-bg.genre01 { //TOPのメインビジュアル background-image: url(img/selection_1.jpg); } // 軸2 .mv.sub-bg.genre02 { //TOPのメインビジュアル background-image: url(img/selection_2.jpg); } // 軸3 .mv.sub-bg.genre03 { //TOPのメインビジュアル background-image: url(img/selection_3.jpg); } /*=================================== MAIN CONTENTS(TOPメインエリア上部) ====================================*/ // 導入文 .home { .read { background-color: $gray; padding: 2rem; box-sizing: border-box; border-radius: 1rem; @include mq() { padding: 3rem; } h1 { // 導入文のタイトル font-size: 2rem; line-height: 1.4; margin-bottom: 1.6rem; border-bottom: 2.5px solid $black; padding-bottom: .5rem; font-weight: 700; @include mq() { font-size: 2.2rem; border-bottom: 3px solid; } @include mq('lg') { font-size: 2.6rem; } } } } /*=================================== 3BOX(3軸ボタン) ====================================*/ .genre3Box { background: url(img/banner-bg.png) center no-repeat; background-size: cover; ul { display: block; @include mq('lg') { @include flex(center, center); } li { width: 100%; max-width: 100%; margin-bottom: 2rem; transition: all.3s; &:last-child { margin-bottom: 0; } @include mq('xs') { margin: 0 auto; margin-bottom: 3rem; max-width: 400px; } @include mq(lg) { margin: 0; } @include mq('lg') { max-width: 400px; margin-bottom: 0; margin-right: 2rem; &:last-child { margin-right: 0; } } a { @include flex(center, center); font-size: 1.6rem; color: $white; line-height: 1.4; @include bg-icon(cover); width: 100%; height: 100%; position: relative; } .btn_more { background-color: $black; color: $white; padding: .7rem 1.2rem; font-size: 1.4rem; position: absolute; bottom: 0; right: 0; z-index: 5; @include mq() { font-size: 1.6rem; } } } } } .genre3Box.sp { ul { flex-direction: column; li { width: 100%; max-width: 100%; } } } .recommend { &-table { width: 100%; @include mq(sm) { display: block; } tbody { @include mq(sm) { display: flex; } tr { position: relative; display: block; width: 98%; margin: 0 1%; background: $blue; font-weight: 700; border-radius: 5px; margin-bottom: 0.5rem; @include mq() { width: 31.3%; padding: 1rem; margin: 0 1%; } &:nth-child(1) { &:before { display: block; position: absolute; top: 0; bottom: 0; left: 0.5rem; margin: auto; width: 44px; height: 40px; color: transparent; background: url(img/folder1.png) center no-repeat; background-size: 100%; content: ""; } } &:nth-child(2) { &:before { display: block; position: absolute; top: 0; bottom: 0; left: 0.5rem; margin: auto; width: 44px; height: 40px; color: transparent; background: url(img/folder2.png) center no-repeat; background-size: 100%; content: ""; } } &:nth-child(3) { &:before { display: block; position: absolute; top: 0; bottom: 0; left: 0.5rem; margin: auto; width: 44px; height: 40px; color: transparent; background: url(img/folder3.png) center no-repeat; background-size: 100%; content: ""; } } td { color: $white; padding: 1.2rem; &:first-child { color: transparent; } } } } } } /*================================================ TOP・詳細ランキングボックス内タイトル =================================================*/ .recommend-ttl_h3 { font-size: 2rem; font-weight: 400; line-height: 1.2; margin-bottom: 1.6rem; text-align: center; background: $l-blue; a { display: block; color: $white; padding: 1.4rem; font-family: "Noto Sans JP", sans-serif; text-align: left; @include mq() { text-align: center; } } @include mq() { font-size: 2.7rem; } @include mq('lg') { font-size: 3.2rem; } } .recommend-ttl_h4 { font-size: 1.8rem; line-height: 1.4; padding: .5rem .5rem .5rem 1rem; font-weight: 700; border-left: 5px solid $base; width: 100%; margin-bottom: 1.6rem; @include mq() { font-size: 2.2rem; } @include mq('lg') { font-size: 2.4rem; } } /*================================================ MAIN CONTENTS(TOPメインエリアランキングボックス内) =================================================*/ .genreMid { .genreBox { //各社の大枠 padding: 1.5rem; background-color: $white; box-sizing: border-box; margin-bottom: 3rem; @include mq() { padding: 4rem; max-width: 90%; margin: 0 auto 6rem; } @include mq('xl') { max-width: 100%; padding: 2rem; } } // 基本情報 /* table { tbody { @include mq() { @include flex(normal, space-between); flex-wrap: wrap; } tr { td { padding: 1rem; } } } } */ } // 下層ページのコンテンツ .sentence h3 { font-size: 1.6rem; @include mq() { font-size: 1.8rem } @include mq('lg') { font-size: 2rem } } #bottom-content h3, .sentences h3, .sentence h3 { position: relative; display: block; border-bottom: 2px solid $black; padding: 1rem; font-size: 1.8rem; font-weight: 700; margin-bottom: 1.6rem; padding-left: 4rem; @include mq() { font-size: 2rem } @include mq('lg') { font-size: 2.4rem } &:before { background: url(img/sq.png) center no-repeat; position: absolute; top: 0; left: 0; width: 30px; height: 30px; bottom: 0; margin: auto; content: ""; } } #bottom-content h4, .sentence h4 { font-weight: 700; border-left: 3px solid $blue; font-size: 1.6rem; padding-left: 1.6rem; margin-bottom: 1.6rem; @include mq() { font-size: 2rem; } } #bottom-content h5, .sentence h5 { font-weight: 700; border-bottom: 1px dotted $black; padding: 0.6rem; margin-bottom: 1.2rem; } #bottom-content, .sentence { p, ul { margin-bottom: 1.6rem; &:last-child { margin-bottom: 0; } } picture { display: block; margin-bottom: 3rem; @include mq() { margin-bottom: 6rem; } } ul { li.trigger { span {} } } } /*=================================== アコーディオン形式の基本設定 ====================================*/ .ac_list { @include mq() { @include flex(normal, ); flex-wrap: wrap; } .ac-item { margin-top: 1.6rem; @include mq() { margin: 1%; } } .ac_item { @include mq() { width: 49%; } .img-wrap { img, .noImg { height: 300px; object-fit: cover; } } .ac_box { box-shadow: $shadow; background-color: $white; padding: 2rem 1.5rem; @include mq('sm') { max-width: 100%; padding: 3rem 2rem; } } .ac_title { line-height: 1.4; width: 100%; padding-right: 3rem; cursor: pointer; position: relative; @include mq('sm') { max-width: 100%; } @include mq('sm') { font-size: 1.8rem; } @include mq('lg') { font-size: 2rem; } &::before { //アイコン[矢印] content: "\f078"; font-family: 'Font Awesome 5 Free'; font-size: 1.8rem; position: absolute; top: 50%; right: 1rem; transform: translateY(-50%) rotate(0); transition: all.2.8s; } } .ac_contents { padding-top: 3rem; display: none; width: 100%; height: 0; } } } // クリックイベント .ac_item.open { .ac_title::before { //矢印アイコンの回転 top: 55%; transform: translateY(-50%) rotate(180deg); transition: all.3s; } .ac_contents { display: block; height: 100%; } } /*=================================== FAQ(よくある質問) ====================================*/ #faq { .ac_title { padding-right: 4.6rem; padding-left: 4.6rem; position: relative; @include mq() { padding-right: 6rem; padding-left: 6rem; } } .ac_contents { //スライドするコンテンツ padding-left: 4.6rem; @include mq() { padding-left: 6rem; } p { line-height: 1.4; padding-left: 2.5rem; @include mq() { line-height: 1.6; padding-left: 4rem; } } } .ac_title::before, .ac_contents::before { font-size: 28px; font-weight: 700; line-height: 1; font-family: 'Noto Sans JP', sans-serif; position: absolute; left: 1.5rem; @include mq() { left: 2rem; } } .ac_title::before { //アイコン[Q] content: "Q"; color: #4EBFE4; top: 50%; transform: translateY(-50%); } .ac_contents::before { //アイコン[A] content: "A"; color: #FBA337; top: .8rem; @include mq() { top: .4rem; } } } /*=================================== SINGLE CONTENT(記事詳細ページ) ====================================*/ .flex { @include mq('xl') { @include flex(normal, ); } } .article { //記事本文 width: 100%; max-width: 100%; @include mq('xl') { max-width: 750px; } } /*=================================== 一覧ページ ====================================*/ .archive { .article { ul { li { margin-bottom: 1rem; @include mq() { margin-bottom: 4rem; @include flex(normal, start); background-color: $white; padding: 1.5rem; box-shadow: $shadow; } .thumbnail { //記事のサムネイル画像 img { width: 100%; height: auto; @include mq() { width: 250px; } @include mq('lg') { margin-bottom: 0; min-width: 250px; } } } .text { //記事のテキスト部分 width: 100%; @media screen and (max-width: 768px) { @include shadow-box(); } @include mq() { position: relative; padding: 1.5rem; } h3 { //記事のタイトル font-size: 1.6rem; line-height: 1.4; font-weight: 700; margin-bottom: 1.6rem; padding: 1rem; border-bottom: 1px solid $black; @include mq() { text-align: left; border-left: 5px solid $base; padding: .5rem; } @include mq() { line-height: 1.5; font-size: 2rem; } } } } } } } /*=================================== SIDEBAR(サイドバーページ) ====================================*/ .sidebar { width: 100%; max-width: 100%; margin-top: 6rem; @include mq('xl') { display: block; max-width: 340px; margin: 0; padding-left: 5rem; } h3 { margin-bottom: 1.6rem !important; font-size: 1.8rem; padding: 1rem; padding-left: 5rem; position: relative; color: $black; font-weight: 700; position: relative; border-bottom: 3px solid $black; &:before { position: absolute; top: 0; bottom: 0; left: 0; display: block; width: 40px; height: 31px; margin: auto; background: url(img/truck.png) center no-repeat; background-size: 100%; content: ""; } span { display: inline-block; padding-right: 3rem; @include mq() { padding-right: 0; } } } ul { li { margin-bottom: 1rem; a { display: block; position: relative; padding: 1.6rem; background: $gray; i { font-size: 10px; display: block; position: absolute; right: 0.5rem; top: 50%; transform: translateY(-50%); } } } } } /*=================================== 3選記事詳細の共通設定 ====================================*/ .single .selections { .caption { h3 { // 3選記事詳細のリード文 font-size: 2.7rem; margin-bottom: 3rem; line-height: 1.4; font-weight: 400; } } .read { padding: 2rem; border: 3px solid; box-sizing: border-box; margin-bottom: 3rem; @include mq('xs') { margin-bottom: 6rem; } @include mq() { padding: 3rem; } p { margin-bottom: 0 } } #toc_container { background-color: $white !important; border: 3px solid; } .tag { display: block; width: 100%; @include mq('xl') { display: flex; align-items: stretch; justify-content: space-between; flex-wrap: nowrap; margin-bottom: 0; position: absolute; bottom: 0; } li { background: $base; font-size: 1rem; width: 100%; color: $white; text-align: center; border-bottom: 2px solid $white; padding: 0.6rem; display: flex; justify-content: center; align-items: center; @include mq('xl') { max-width: 350px; border-bottom: 0px; border-right: 2px solid $white; } &:last-child { border-right: 0; } } } .genreBox { background-color: $white; border: 3px solid; padding: 4vw; box-sizing: border-box; margin-bottom: 6rem; @include mq() { padding: 3rem; } &:last-child { margin-bottom: 0 } h3 { font-size: 2rem; background-color: $base; color: $white; padding: 1rem; line-height: 1.3; font-weight: normal; margin-bottom: 1.6rem; @include mq() { font-size: 2.4rem; } } h4 { font-size: 1.6rem; padding: .5rem 1rem; margin-bottom: 1rem; color: $white; @include mq() { font-size: 2rem; } } .caption { //特徴と会社名 text-align: center; h3 { font-size: 2rem; @include mq() { font-size: 2.4rem; } span { display: block; font-size: 1.2rem; margin-bottom: 1rem; } } } } .point { li+li { margin-top: 2rem; } } } // 軸1 .single .genre01 { .read, #toc_container { border-color: $blue; } #toc_container { .toc_title::after { background-color: $blue; } .contents-subheading { &::before { color: $white; } a { text-decoration: underline; } } } .genreBox { border-color: $blue; .tag li { background-color: $blue; } .table tbody tr th { background-color: $blue; } h3 { background-color: $blue; } h4 { color: $black; } } } // 軸2 .single .genre02 { .read, #toc_container { border-color: $color2; } #toc_container { .toc_title::after { background-color: $color2; } .contents-subheading { &::before { color: $white; } a { text-decoration: underline; } } } .genreBox { border-color: $color2; .tag li { background-color: $color2; } .table tbody tr th { background-color: $color2; } h3 { background-color: $color2; } h4 { color: $black; } } } // 軸3 .single .genre03 { .read, #toc_container { border-color: $color3; } #toc_container { .toc_title::after { background-color: $color3; } .contents-subheading { &::before { color: $color3; } a { text-decoration: underline; } } } .genreBox { border-color: $color3; .tag li { background-color: $color3; } .table tbody tr th { background-color: $color3; } h3 { background-color: $color3; } h4 { color: $black; } } } .single .selections .genreBox { h4 { padding-left: 5rem; } } /*=================================== GENRE・AREA(ジャンル別・エリア別ページ) ====================================*/ .genre { .read { border: 3px solid $base; padding: 2rem; @include mq() { padding: 2.5rem; } } .genre-box { border: 3px solid $base; padding: 2rem 4vw; @include mq() { padding: 4rem 2.5rem; } } } /*=================================== PAGE(固定ページ) ====================================*/ .page { p { margin-bottom: 3rem; } } /*=================================== 230524新サイトマップページ用CSS ====================================*/ .sitemap { &-home { display: block; position: relative; padding: 1rem 1rem 1rem 4rem; background: rgba($base, 0.05); font-weight: 700; &:before { position: absolute; top: 0; bottom: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 32px; height: 100%; margin: auto; padding: 0.5rem; background: $base; color: $white; font-family: "Font Awesome 5 free"; font-weight: 900; line-height: 1; content: "\f015"; } &:after { position: absolute; top: 0; bottom: 0; right: 0; display: inline-block; width: 16px; height: 16px; margin: auto; font-family: "Font Awesome 5 free"; font-weight: 900; line-height: 1; content: "\f105"; } } &-ul { &>li { &>a { position: relative; padding-left: 3rem; font-weight: 700; &:before { position: absolute; top: 0; bottom: 0; left: 0; display: inline-block; width: 20px; height: 20px; color: $base; margin: auto; font-size: 2rem; font-family: "Font Awesome 5 free"; font-weight: 900; line-height: 1; content: "\f07c"; } } } a { padding: 1rem; border-bottom: 1px solid #eeeeee; } ul { padding-left: 3rem; li {} a { display: block; position: relative; border-bottom: 1px solid #eeeeee; &:after { position: absolute; top: 0; bottom: 0; right: 0; display: inline-block; width: 16px; height: 16px; margin: auto; font-family: "Font Awesome 5 free"; font-weight: 900; line-height: 1; content: "\f105"; } } } } &-pages { li {} a { display: block; position: relative; border-bottom: 1px solid #eeeeee; padding: 1rem; &:before { content: "\f15c" !important; } &:after { position: absolute; top: 0; bottom: 0; right: 0; display: inline-block; width: 16px; height: 16px; margin: auto; font-family: "Font Awesome 5 free"; font-weight: 900; line-height: 1; content: "\f105"; } } } } /*=================================== CONTACT(お問い合わせフォーム) ====================================*/ .wpcf7-form p { margin-bottom: 2rem; &:last-child { margin-bottom: 0; } } input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required { width: 100% !important; padding: .5rem; box-sizing: border-box; border: solid 1px #CCC; } input.wpcf7-form-control.wpcf7-text.wpcf7-email.wpcf7-validates-as-required.wpcf7-validates-as-email { width: 100% !important; padding: .5rem; box-sizing: border-box; border: solid 1px #CCC; } input.wpcf7-form-control.wpcf7-text { width: 100% !important; padding: .5rem; box-sizing: border-box; border: solid 1px #CCC; } textarea.wpcf7-form-control.wpcf7-textarea { width: 100% !important; border: solid 1px #CCC; } input.wpcf7-form-control.wpcf7-submit { display: block; margin: 0 auto; letter-spacing: 2; border: 1px solid $black; width: 199px; height: 50px; background-color: $black; color: $white; text-align: center; margin-top: 3rem; transition: all.3s ease-in-out; @include mq() { margin-top: 6rem; } &:hover { background-color: $white; color: $black; transition: all.3s ease-in-out; } } .searchandfilter input[type="checkbox"], input[type="radio"], input[type="text"], select, .meta-range, .chosen-container { margin-left: 0px !important; } .wpcf7-form label::before { content: ''; display: inline-block; width: 3px; height: 16px; background-color: $base; vertical-align: -9%; margin-right: .5rem; } /*=================================== 404ステータス ====================================*/ .notFound { p { span { display: block; margin-bottom: 3rem; &:last-child { margin-bottom: 0; } } } } /*=================================== RELATED POST(おすすめ関連記事) ====================================*/ .rl_post { ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); grid-gap: 1.6rem; margin-left: 0 !important; @include mq() { grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); grid-gap: 3rem; } li { @include mq() { max-width: 550px; } &:hover img { transform: scale(1.1); opacity: .7; transition: all .3s ease-in; } a { width: 100%; .img-wrap { width: 100%; overflow: hidden; position: relative; .category { display: inline-block; background-color: $base; padding: .5rem; font-size: 1rem; letter-spacing: .1em; position: absolute; top: 0; left: 0; } img, .noImg { width: 100%; height: 180px; object-fit: cover; object-position: center; transition: all .3s ease-in; @include mq() { height: 220px; } @include mq('lg') { height: 250px; } } } .text-wrap { @include flex(center, center); @include shadow-box(); min-height: 80px; @include mq() { min-height: 100px; } h4 { font-size: 16px; text-align: center; line-height: 1.2; &::after { content: ''; display: block; margin: .5rem auto 0; width: 80px; height: 3px; background: $base; } } } } } } } /*=================================== TABLE(共通設定) ====================================*/ .tablepress td a { font-size: 1.25rem; background-color: $btn1; border: 2px solid $btn1; color: $white; &:hover { color: $btn1; } } /* .table_row .tablepress td:last-child a, .table_column .tablepress tr:last-child td a { background-color: $btn3; color: $white; border-color: $btn3; &:hover { color: $btn3; } } */ /*=================================== TABLE(通常テーブル) ====================================*/ .table_column { .tablepress { tbody { tr { td { width: calc(100% / 4); min-width: 200px; padding: 10px; vertical-align: middle; font-size: 14px; word-break: break-all; box-sizing: border-box; &:first-child { padding: 1rem; text-align: center; vertical-align: middle; color: #fff; font-size: 12px; box-sizing: border-box; width: 150px; min-width: 150px; background-color: $blue; font-weight: 700; color: $white; border: 0; } } } } } } // 3選記事のテーブル .table_column.genre { .tablepress { tbody { tr { td { a { padding: .7rem; } } } } } .horizonal-scroll { @include mq('xl') { overflow-x: visible; } &::after { @include mq('xl') { display: none; } } } } /*=================================== TABLE(横並びテーブル) ====================================*/ .table_row { .tablepress { width: 100% !important; } table { tbody { text-align: center; border: 1px solid $gray; max-width: 1800px; width: 100%; tr { img { width: 100%; } .column-1 { img { width: 100%; height: 50px; object-fit: contain; } } td:first-child { padding: 1rem; text-align: center; vertical-align: middle; color: #fff; background: $blue; font-size: 12px; box-sizing: border-box; border: 0; border: 1px solid $gray; width: 250px; min-width: 250px; text-align: left; @media screen and (min-width: 1180px) { width: 120px; min-width: 120px; } } td { font-weight: normal; width: 250px; min-width: 250px; text-align: left; background: $white; @media screen and (min-width: 1180px) { width: 180px; min-width: 180px; } a { &:hover { color: $btn1; } } } } /* テーブル内ボタン色指定 */ .row-6 td a { background: $l-blue; border-color: $l-blue; } .row-7 td a { background: $red; border-color: $red; } } } .horizonal-scroll::after { @media screen and (min-width: 1180px) { display: none; } } } /* PR表記追加スタイル */ header.l-header, .top_area { position: fixed; top: 0; left: 0; background: #fff; width: 100%; margin: 0 auto; z-index: 10; } @media screen and (max-width: 768px) { .cbp-spmenu-push .top_area { top: 42px !important; } } .top_area_right #navi { margin-top: 0 !important; } .sideber_rank_title, .rank-1 h3, .rankIcon_1, .rankIcon_no { position: relative; width: 100%; } .header-inner span.pr-tag_st, .site_name span.pr-tag_st { display: inline-block; font-size: 16px; padding: 3px 6px; background: $yellow; color: $black; font-weight: 700; line-height: 1; } .main-ttl { display: flex; align-items: center; } .header-inner span, .site_name span { margin-right: 6px; } .recommend-ttl_h3 { text-align: left; } .genreBox { table.table tr td { padding: 1rem; } table.table tr td:first-child { width: 200px; background: $blue; color: $white; border: 1px solid #fff; padding: 1rem; @media only screen and (max-width: 480px) { width: 120px; } } } .logo { width: 200px; } #columnList, #genreList, #otherList { background: $gray; .section-title { text-align: left; position: relative; &:after { display: block; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; width: 100%; height: 2px; background: $black; content: ""; } span { position: relative; display: inline-block; background: $gray; padding: 0 1rem; z-index: 1; } } } .genreMid .section-title { strong { position: relative; text-align: center; font-weight: 900; font-size: 3.2rem; display: flex; align-items: center; justify-content: center; @include mq(sm) { font-size: 4rem; } @include mq(lg) { font-size: 5.4rem; } &:before { content: ""; display: inline-block; width: 6px; height: 60px; background-color: $black; margin-right: 1.6rem; transform: rotate(-20deg); border-radius: 10px; } &:after { content: ""; display: inline-block; width: 6px; height: 60px; background-color: $black; margin-left: 1.6rem; transform: rotate(20deg); border-radius: 10px; } } } .article, .genreBox { h3 { font-weight: 700; } h4 { position: relative; padding: 1.2rem; padding-left: 5rem; border-left: 0; border-bottom: 2px solid $black; font-weight: 700; margin-bottom: 1rem; &:before { position: absolute; top: 0; bottom: 0; left: 0; display: block; width: 40px; height: 31px; margin: auto; background: url(img/truck.png) center no-repeat; background-size: 100%; content: ""; } } .table { tr td { padding: 1rem; &:first-child { width: 200px; background: #0E5A89; color: #fff; border: 1px solid #fff; padding: 1rem; @media only screen and (max-width: 480px) { width: 120px; } } } } } .section .review { .review_comment { background: rgba($blue, 0.1); border-radius: 10px; } .review_title { /* background-color: $blue; color: $white; */ padding: 1.2rem; position: relative; color: $black; font-weight: 700; font-size: 1.8rem; padding-left: 6rem; &:before { position: absolute; top: 0.5rem; bottom: 0; left: 1rem; display: block; width: 45px; margin: auto; height: 39px; background: url(img/review-head.png) center no-repeat; background-size: 100%; content: ""; } } } /* おすすめポイント */ .sectionPoint { background-color: rgba($blue, 0.1); border: 3px solid $blue; border-radius: 0 5px 5px 5px; max-width: 600px; margin: 7rem auto 5rem; padding: 20px; position: relative; } .sectionPoint .sectionPoint-head { background: $blue; border-radius: 5px 5px 0 0; color: #ffffff; display: inline-block; font-size: 16px; font-weight: 700; left: -3px; letter-spacing: 0.05em; line-height: 2.1875; height: 35px; padding: 0 30px; position: absolute; top: -35px; } .sectionPoint .sectionPoint-head i { margin-right: 5px; } .sectionPoint ul { list-style: disc; padding-left: 30px; } .sectionPoint li { margin: 10px 0; font-weight: 700; } /* 230801 PRコンテンツ用スタイルここから */ span.pr-tag { position: absolute; top: 0; left: 0px; bottom: 0; display: block; margin: auto; width: 38px; height: 20px; padding: 6px 10px; font-size: 12px; display: flex; align-items: center; justify-content: center; line-height: 1; border-radius: 5px; background: $black; color: $white; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; font-weight: 700; } .headerInner span.pr-tag_st, .site_name span.pr-tag_st { display: inline-block; font-size: 12px; padding: 3px 12px; background: #444; color: #fff; line-height: 1; } .headerInner-logo, .site_name { display: flex; align-items: center; } .headerInner-logo span, .site_name span { margin-right: 6px; } .recommend-ttl_h3 { text-align: left; position: relative; } /* 230801 PRコンテンツ用スタイルここまで */ /* TOP下PRエリア */ .pr-area { background: rgba(37, 65, 145, 0.1); } .pr-btn--box { display: flex; flex-wrap: wrap; padding-bottom: 5px; justify-content: center; background: unset !important; border: unset !important; } .pr-btn .pr-btn2 { display: block; width: 46%; margin: 0 auto; } .pr-bottom { background-size: auto auto; background-color: $blue; background-image: repeating-linear-gradient(-45deg, transparent, transparent 2px, rgba(255, 255, 255, 0.05) 2px, rgba(255, 255, 255, 0.05) 4px); margin: 20px 0 40px; padding: 40px; border-radius: 10px; } body .pr-bottom--head { margin-top: 0; margin-bottom: 3rem; padding: 0 !important; text-align: center; font-weight: 700; font-size: 32px; color: #fff; line-height: 1.4; } body .pr-bottom--head span { font-size: 130%; display: block; color: #FFF176; } .pr-bottom--cont { display: flex; flex-wrap: wrap; padding: 20px; background: #fff; } .pr-bottom--cont_l { position: relative; width: 350px; margin-right: 20px; } .pr-bottom--cont_l img { position: absolute; width: 100%; height: 100% !important; object-fit: cover; margin: auto; max-width: initial !important; } .pr-bottom--cont_r { width: calc(100% - 370px); } h3.pr-bottom--cont_lead { margin-top: 0; padding: 0 !important; text-align: left; font-size: 28px; font-weight: 700; margin-bottom: 1.6rem; } h3.pr-bottom--cont_lead:before { display: none; } .pr-bottom--cont_txt { margin-bottom: 1.6rem; } .pr-bottom--cont_txt span, .pr-bottom--cont_lead span { color: $blue; } .pr-bottom--btn { width: 100%; display: block; font-size: 1.6rem; font-weight: 700; line-height: 1.5; position: relative; display: inline-block; margin-bottom: 10px; padding: 1rem 4rem; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: all 0.3s; transition: all 0.3s; text-align: center; vertical-align: middle; text-decoration: none; letter-spacing: 0.1em; color: #212529; border-radius: 0.5rem; } a.btn-c { font-size: 2.2rem; position: relative; padding: 1.5rem 2rem 1.5rem 5rem; color: #fff; background: $blue; -webkit-box-shadow: 0 5px 0 rgba(30, 30, 30, 0.2); box-shadow: 0 5px 0 rgba(30, 30, 30, 0.2); } a.btn-c span { font-size: 1.4rem; display: inline-block; width: 100%; margin-bottom: 0.5em; padding: 0.2rem 0.5rem; color: $blue; border-radius: 4px; background: #fff; transition: 0.3s; } /* a.btn-c:before { font-family: FontAwesome; font-size: 1.8rem; line-height: 1; position: absolute; top: calc(50% - 0.7rem); left: 1.5rem; margin: 0; padding: 0; content: "\f105"; -webkit-transition: all 0.3s; transition: all 0.3s; } */ /* Font Awesome 5 はこちら */ a.btn-c:before { font-family: "Font Awesome 5 Free"; font-size: 1.8rem; line-height: 1; position: absolute; top: calc(50% - 0.7rem); left: 1.5rem; margin: 0; padding: 0; content: ""; -webkit-transition: all 0.3s; transition: all 0.3s; } a.btn-c:hover { -webkit-transform: translate(0, 3px); transform: translate(0, 3px); color: #fff; background: #cc0000; -webkit-box-shadow: 0 2px 0 rgba(30, 30, 30, 0.3); box-shadow: 0 2px 0 rgba(30, 30, 30, 0.3); } a.btn-c:hover span { color: #c00; } a.btn-c:hover:before { left: 2rem; } @media screen and (max-width: 768px) { .pr-bottom { padding: 20px; } body .pr-bottom--head { font-size: 24px; text-align: left; } .pr-bottom--cont_l { width: 100%; height: 300px; margin-right: 0px; margin-bottom: 20px; } h3.pr-bottom--cont_lead { font-size: 22px; } .pr-bottom--cont_r { width: 100%; } a.btn-c { font-size: 18px; line-height: 1.3; } } @media screen and (max-width: 480px) { body .pr-bottom--head span { font-size: 150% !important; } body .pr-bottom--head { font-size: 14px !important; } .pr-bottom--cont_l { height: 180px; } a.btn-c { font-size: 14px !important; } } /* TOP下PRエリアここまで */ /* PRバナー */ .footer-banner { display: none; } .pr { display: none; position: fixed; bottom: 50px; right: 10px; z-index: 999; transition: all 0.5s ease-out; } .pr.active { display: block; transition: all 0.5s ease-out; } .pr-inner { display: block; background-color: $blue; box-shadow: -10px 10px 0 rgba(37, 65, 145, 0.3); padding: 1.5rem; box-sizing: border-box; position: relative; width: 100%; max-width: 420px; margin: 0 auto; cursor: pointer; transition: transform 0.3s ease-out; } .pr-inner:hover { opacity: 0.7; transition: opacity 0.3s ease-out; } .pr-title { font-size: 1.8rem; color: #fff; font-weight: 700; margin-bottom: 1rem; } .pr-title span { color: #fff; font-weight: 700; font-size: 2.7rem; } .pr-border { display: block; width: 70px; margin-left: auto; height: 1px; background-color: #fff; position: relative; transform: translatex(0.5rem); } .pr-border::before { content: ""; display: block; width: 1px; height: 25px; background-color: #fff; position: absolute; bottom: -4px; right: 8px; transform: rotate(-50deg); } .pr p { color: #fff; font-size: 1.8rem; } @media screen and (max-width: 600px) { .pr { width: 85%; right: 0; bottom: 20px; } .pr-inner { max-width: 100%; box-shadow: -7.5px 7.5px 0 rgba(37, 65, 145, 0.3); } .pr-title span { font-size: 2.4rem; } .pr-title { font-size: 1.6rem; } .pr-border { transform: translatex(0); } } /* PRバナーここまで */ /* PRページここから */ .pr_last_head { font-size: 2rem; font-weight: 700; line-height: 1.25; text-align: center; padding: 1.6rem; border-top: 3px solid $blue; border-bottom: 3px solid $blue; background: rgba(37, 65, 145, 0.05); } @media screen and (min-width: 768px) { .pr_last_head { font-size: 2.4rem; } } @media screen and (min-width: 1024px) { .pr_last_head { font-size: 2.8rem; } } .pr_point { padding: 1.6rem; font-size: 2rem; font-weight: 700; line-height: 1.25; text-align: center; position: relative; } @media screen and (min-width: 768px) { .pr_point { font-size: 2.4rem; } } @media screen and (min-width: 1024px) { .pr_point { font-size: 2.8rem; } } .pr_point:after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 7px; background: -webkit-repeating-linear-gradient(-45deg, rgba(37, 65, 145, 0.6), rgba(37, 65, 145, 0.6) 3px, #fff 3px, #fff 6px); background: repeating-linear-gradient(-45deg, rgba(37, 65, 145, 0.6), rgba(37, 65, 145, 0.6) 3px, #fff 3px, #fff 6px); } .pr_point2 { text-align: center; font-size: 2.8rem; font-weight: 700; margin-bottom: 3rem; padding: 1rem; } .pr-main { background: rgba(37, 65, 145, 0.05); } .ppt { display: flex; justify-content: space-between; flex-wrap: wrap; } .ppt p { width: 46%; margin: 2%; } @media screen and (max-width: 768px) { .ppt p { width: 96%; order: 2; } } .ppt .pr_img { width: 46%; margin: 2%; } @media screen and (max-width: 768px) { .ppt .pr_img { width: 96%; order: 1; } } .pr-page .spacer { max-width: 1024px; } .pr-page .pr-main .spacer { max-width: 800px; } .pr-page p { margin-bottom: 1.6rem; } .pr-page .ppt { margin-bottom: 2rem; } .pr-title { word-break: break-all; } .pr+.footer-totop-btn { bottom: 20%; } /* PRページここまで */ /*迷ったらココ!コンテンツ*/ .pickup-box { margin-bottom: 6rem; } .pickup-box dt span { color: $blue; display: block; font-size: 1.8rem; font-weight: 700; margin: 4rem auto 1rem auto; max-width: 36rem; padding: 0 1.2rem 0 1.5rem; position: relative; text-align: center; width: 100%; } .pickup-box dt span::before, .pickup-box dt span::after { content: "/"; font-weight: 200; position: absolute; top: 0; } .pickup-box dt span::before { left: 0; transform: scale(-1, 1); } .pickup-box dt span::after { right: 0; } .pickup-box dd { background-color: #fff; border: 0.3rem solid $yellow; border-radius: 1rem; display: flex; flex-wrap: wrap; padding: 2rem; position: relative; } .pickup-box dd h3 { align-items: center; background-color: $yellow; border-radius: 0.7rem 0.7rem 0 0; color: $black; display: flex; font-size: 2.8rem; font-weight: 700; height: 7rem; justify-content: center; margin-bottom: 2rem; margin-left: -2rem; margin-top: -2rem; min-width: calc(100% + 4rem) !important; text-align: center; position: relative; width: calc(100% + 4rem) !important; span { font-weight: 700; } } .pickup-box dd h3::after { align-items: center; background-color: #FFF; color: $blue; content: "PR"; display: flex; font-size: 1.4rem; font-weight: 700; height: 2rem; justify-content: center; position: absolute; left: 1rem; top: 1rem; width: 3rem; } .pickup-box dd .mainImg { width: 100%; margin-bottom: 10px; } .pickup-box dd .textsBox { width: 100%; } .pickup-box dd .textsBox .texts { margin-bottom: 2rem; } .pickup-box dd .textsBox .texts p:not(:last-of-type) { margin-bottom: 1rem; } .pickup-box dd .textsBox .btn { width: 100% !important; margin: 0 auto; } .pickup-box dd .textsBox .btn a { align-items: center; background-image: url(images/object_06.png) !important; background-position: left !important; background-repeat: no-repeat !important; background-size: auto 100% !important; border-radius: 0.5rem; display: flex; max-width: 600px; font-size: 2.2rem; height: 6rem; margin: 0 auto; justify-content: center; position: relative; } @media only screen and (max-width: 1140px) { .pickup-box dd h3 { font-size: 2rem; margin-bottom: 2rem; } .pickup-box dd .mainImg { margin-bottom: 3rem; margin-right: 0; width: 100%; } .pickup-box dd .textsBox { width: 100%; } .pickup-box dd .textsBox .btn { max-width: 35rem; width: calc(100% - 4rem); } } @media only screen and (max-width: 900px) { .pickup-box dd h3 { font-size: 1.8rem; } .pickup-box dd .textsBox .btn a { font-size: 1.8rem; height: 6rem; } } @media only screen and (max-width: 480px) { .pickup-box dd .mainImg { height: 20rem; } .pickup-box dd .textsBox .btn a { font-size: 1.6rem; } } /*迷ったらココ!コンテンツここまで*/ .inner { padding: 6rem 0; } .spacer { width: 90%; max-width: 1024px; margin: 0 auto; } #info-1 .gb01 { position: relative; &:after { position: absolute; right: 0; top: -188px; width: 180px; height: 200px; background: url(img/selection1.png) center no-repeat; background-size: 100%; content: ""; @media only screen and (max-width: 800px) { top: -130px; width: 120px; height: 140px; } @media only screen and (max-width: 480px) { top: -85px; width: 80px; height: 90px; right: -10px; } } } #info-2 .gb01 { position: relative; &:after { position: absolute; right: 0; top: -188px; width: 180px; height: 200px; background: url(img/selection2.png) center no-repeat; background-size: 100%; content: ""; @media only screen and (max-width: 800px) { top: -130px; width: 120px; height: 140px; } @media only screen and (max-width: 480px) { top: -85px; width: 80px; height: 90px; right: -10px; } } } .article { .table { tr td { padding: 1rem; } th { width: 200px; background: #0E5A89; color: #fff; border: 1px solid #fff; padding: 1rem; @media only screen and (max-width: 480px) { width: 120px; } } } } .tablepress .row-9 td a { background: $l-blue; border-color: $l-blue; &:hover { color: $white; } } .tablepress .row-10 td a { background: $red; border-color: $red; &:hover { color: $white; } } /* h2#bottom-content_01 { background: $black; color: $white; padding: 1.2rem; margin-bottom: 1.6rem; font-size: 2.4rem; } */ #bottom-content h2 { background: $black; color: $white; padding: 1.2rem; margin-bottom: 1.6rem; font-size: 2.4rem; } #bottom-content h2.section-title { color: $black; background: $white; } .pr-table { tr td { padding: 1rem; background: $white; } tr td:first-child { width: 200px; background: #0E5A89; color: #fff; border: 1px solid #fff; padding: 1rem; } @media only screen and (max-width: 480px) { tr td:first-child { width: 120px; } } } .mainImg { position: relative; } .admin_title { padding: 1.2rem !important; font-size: 1.8rem !important; font-weight: 700; color: $white !important; background: $blue; border-radius: 10px 10px 0 0; } .admin_comment.wrap { border-radius: 10px !important; } .selections-content #toc_container { display: none; } #toc_container .contents-subheading { display: block; }