// ブレイクポイントの初期設定 $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; } } // minxin設定 @mixin wrapper($inner:1200px) { width: 100%; max-width: $inner; margin: 0 auto; } // flex @mixin flex($alin:center, $justyfy:space-between) { display: flex; align-items: $alin; justify-content: $justyfy; } // 変数の設定 $white: #fff; $black: #333; $gray: #F5F5F5; $main: #333; $color1: #0B3D5D; $color2: #297F9D; $color3: #4CB7BE; $shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px; /*基本設定 --------------------------------------*/ html { font-size: 62.5%; } body { font-family: 'Noto Sans JP', sans-serif; margin: 0px; overflow-x: hidden; color: #333; line-height: 1.6; font-size: 1.4rem; letter-spacing: 1.2px; @include mq('xs') { font-size: 1.6rem; line-height: 2; } } p { line-height: 1.4; @include mq() { line-height: 1.6; } } a { display: inline-block; color: $black; text-decoration: none; } a:hover { opacity: .7; transition: all.3s ease-in-out; } img { width: 100%; object-fit: cover; object-position: top; } h2,h3,h4 { line-height: 1.2; @include mq('md') { line-height: 1.3; } @include mq('lg') { line-height: 1.4; } } // ラインマーカー .yellow_line.active { background-position: -100% 120%; } .yellow_line { background-image: -webkit-linear-gradient(left, transparent 50%, #fcff1e 50%); background-image: -moz-linear-gradient(left, transparent 50%, #fcff1e 50%); background-image: -ms-linear-gradient(left, transparent 50%, #fcff1e 50%); background-image: -o-linear-gradient(left, transparent 50%, #fcff1e 50%); background-image: linear-gradient(left, transparent 50%, #fcff1e 50%); background-repeat: repeat-x; background-size: 200% 50%; background-position: 0 0.5em; transition: all 2s ease; font-weight: bold; } /*----------メインカラ一括変更▼----------*/ .footer .bg, //フッター .footerNav-list, //フッターメニュー .sidebarPost-wrapper h4, //サイドバーのタイトル .section-ttl, //メインタイトル .btn_official, //公式ボタン .list-btn, //一覧用のボタン .genrePost .tag li, //3選詳細のタグ .tablePicup table tr th, .burgerBtn, //ハンバーガーボタン .menu-content, //ハンバーガーボタンが開いた時の背景 .burger-musk, //ハンバーガーボタンが開いた時の全画面背景 .postList .contentsMain ul .text h3:before, //関連記事一覧のタイトル .page-numbers.current { //ページャー background-color: $main; } // ボーダーの変更 .section-sub-ttl, .main .mainContent .read h2, //TOP導入文 .sidebarPost-wrapper { //サイドバーの点線 border-color: $main; } // カラー変更 .menu-content .menu li:after { color: $main; } //詳細変更 // ボーダーの入ったタイトル .section-sub-ttl { border-bottom: 3px solid $main; } /*----------メインカラ一括変更▲----------*/ /*----------3軸テーマカラ一括変更▼----------*/ // 背景色 .bg-01 { //メインカラー01 background-color: $color1; } .bg-02 { //メインカラー02 background-color: $color2; } .bg-03 { //メインカラー03 background-color: $color3; } /*------TOPの各軸のレイアウト--------*/ // 1軸目 .genre01 { background-color: rgba(11, 61, 93, 30%, ); .genreBox{ border: 4px solid $color1; h3:before { background-color: $color1; } h4 { //おすすめポイントのタイトル background-color: $color1; } } } // 2軸目 .genre02 { background-color: rgba(41, 127, 157, 30%, ); .genreBox { border: 4px solid $color2; h3:before { //会社名 background-color: $color2; } h4 { //おすすめポイントのタイトル background-color: $color2; } } } // 3軸目 .genre03 { background-color: rgba(76, 183, 190, 30%, ); .genreBox { border: 4px solid $color3; h3:before { //会社名 background-color: $color3; } h4 { //おすすめポイントのタイトル background-color: $color3; } } } // 3選記事の下層エリアのタイトル .genreBottom ul li .ttl01::before { background-color: $color1; } .genreBottom ul li .ttl02::before { background-color: $color2; } .genreBottom ul li .ttl03::before { background-color: $color3; } //3軸一覧のボタンの色を変更する .postList .contents-wrapper .contentsMain { .postColor-01 { &::before { background-color: $color1; } } .postColor-02 { &::before { background-color: $color2; } } .postColor-03 { &::before { background-color: $color3; } } } // 各軸のパーマリンクがid名です。(3軸記事詳細ページ) // 1軸目 #chiikimicchaku { //各見出しの背景色 .genrePost { .time { //公開日と更新日 margin-bottom: 1rem; transform: translateY(3px); span { i { //アイコン color: $color1; } } @include mq() { background: $color1; margin-bottom: 0; span { i { color: $white; } } } } .read { border-color: $color1; } h3 { border-color: $color1; } .contentsMain h4 { background-color: $color1; } } .genreBox h3 { background-color: $color1; border: none; } .tag li { //タグのレイアウト background-color: $color1; } .tableGenre table tr td:first-child { //テーブルの見出し background-color: $color1; } .contentsMain .pointBox ul li { //強み border-color: $color1; h4 { display: block; border-color: $color1; background: none; color: $black; i:before { color: $color1; } } } .contentsMain .reviews { //口コミコンテンツ li { border-color: $color1; h4 { border-color: $color1; background: none; color: $black; } } } .btn-wrapper { //ボタンカラー .btn:first-child { background-color: $color1; } } } // 2軸目 #support { .genrePost { .time { //公開日と更新日 margin-bottom: 1rem; transform: translateY(3px); span { i { //アイコン color: $color2; } } @include mq() { background: $color2; margin-bottom: 0; span { i { color: $white; } } } } .read { border-color: $color2; } h3 { border-color: $color2; } .contentsMain h4 { //下層コンテンツの小見出し background-color: $color2; } } .genreBox h3 { background-color: $color2; border: none; } .tag li { //タグのレイアウト background-color: $color2; } .tableGenre table tr td:first-child { //テーブルの見出し background-color: $color2; } .point-ttl { background-color: $color2; } .contentsMain .pointBox ul li { //強み border-color: $color2; h4 { display: block; border-color: $color2; background: none; color: $black; i:before { color: $color2; } } } .contentsMain .reviews { //口コミコンテンツ li { border-color: $color2; h4 { border-color: $color2; background: none; color: $black; } } } .btn-wrapper { //ボタンカラー .btn:first-child { background-color: $color2; } } } // 3軸目 #ote { //各見出しの背景色 .genrePost { .time { //公開日と更新日 margin-bottom: 1rem; transform: translateY(3px); span { i { //アイコン color: $color3; } } @include mq() { background: $color3; margin-bottom: 0; span { i { color: $white; } } } } .read { //導入文 border-color: $color3; } h3 { border-color: $color3; } .contentsMain h4 { background-color: $color3; } } .genreBox h3 { background-color: $color3; border: none; } .tag li { //タグのレイアウト background-color: $color3; } .tableGenre table tr td:first-child { //テーブルの見出し background-color: $color3; } .contentsMain .pointBox ul li { //強み border-color: $color3; h4 { display: block; border-color: $color3; background: none; color: $black; i:before { color: $color3; } } } .contentsMain .reviews { //口コミコンテンツ li { border-color: $color3; h4 { border-color: $color3; background: none; color: $black; } } } .btn-wrapper { //ボタンカラー .btn:first-child { background-color: $color3; } } } /*----------3軸テーマカラ一括変更▲----------*/ /*共通設定 --------------------------------------*/ .section-wrapper { padding: 3rem 0; &:first-child { padding-top: 6rem; } &:last-child { padding-bottom: 6rem; } @include mq('md') { padding: 6rem 0; } } .content { margin: 0 auto; padding: 0 4vw; max-width: 650px; margin: 0 auto; @include mq('md') { max-width: 1320px; padding: 0 3rem; } } // サムネイルがない時の画像指定 .noImg { @include flex(center, center); background-color: #ccc; width: 100%; height: 100%; i { font-size: 5rem; color: $white; @include mq('xs') { font-size: 8rem; } @include mq('md') { font-size: 7rem; } } } // 関連記事の高さ指定 .related { .company-list { li { .relatedPost_thumbnail { margin-bottom: 2rem; .noImg { height: 250px; @include mq('sm') { height: 250px; } @include mq('md') { height: 300px; } @include mq('lg') { height: 250px; } } } } } } // 一覧表示の指定 .contentsMain { .thumbnail { .noImg { height: 250px; margin-bottom: 2rem; @include mq('md') { width: 300px; height: 280px; margin-bottom: 0; } } } } // TOPページのイメージ画像 .genreMid { .noImg { i { font-size: 5em; @include mq('xs') { font-size: 10rem; } @include mq('md') { font-size: 6rem; } } } } /*タイトル --------------------------------------*/ .section-ttl { font-size: 2rem; padding: 1rem; color: $white; text-align: center; margin-bottom: 20px; line-height: 1.6; @include mq('xs') { font-size: 2.4rem; padding: 1.5rem; } @include mq() { font-size: 3rem; padding: 2rem; margin-bottom: 30px; } } .section-sub-ttl { font-size: 2rem; margin-bottom: 2rem; padding-bottom: .5rem; line-height: 1.2; @include mq('md') { font-size: 2.4rem; line-height: 1.3; } @include mq('xl') { font-size: 2.7rem; margin-bottom: 3rem; line-height: 1.4; } } /*ボタン --------------------------------------*/ .btn-wrapper { margin-top: 3rem; @include mq() { @include flex(center, center); margin-top: 6rem; } } .single .btn-wrapper { margin: 4rem auto; } .btn, //ボタン .btn_official { //公式ボタン display: block; max-width: 100%; width: 100%; font-size: 1.6rem; color: $white; text-align: center; padding: 1.5rem; transition: all.3s; position: relative; @include mq() { font-size: 2rem; max-width: 315px; } &::after { content: ''; background-size: contain; background-position: center center; width: 15px; height: 15px; position: absolute; top: 50%; right: 20px; transform: translateY(-40%); transition: all.3s ease-in-out; @include mq() { width: 18px; height: 18px; } } } .btn { &::after { //ボタンのアイコン background-image: url(img/icon_arrow.svg); } } .btn { &:hover::after { right:10px; transition: all.3s ease-in-out; } } .btn_official { //公式ボタンのアイコン &::after { background-image: url(img/icon_link.svg); } } .btn.btn_official:hover::after { right: 20px; } /*記事一覧・関連記事・関連企業のボタン --------------------------------------*/ .list-btn { width: 180px; border-radius: 30px; padding: .5rem; color: $white; display: block; text-align: center; margin-left: auto; margin-top: 3rem; display: block; color: $white; position: relative; transition: all.3s ease-in-out; @include mq('md') { width: 200px; } @include mq('xl') { width: 230px; position: absolute; bottom: 0; right: 0; } &:after { content: ''; background-image: url(img/icon_arrow.svg); background-size: contain; background-position: center; background-repeat: no-repeat; display: block; width: 10px; height: 10px; position: absolute; top: 50%; right: 20px; transform: translateY(-40%); transition: all.3s ease-in-out; @include mq() { width: 15px; height: 15px; } } &:hover::after { right: 10px; transition: all.3s ease-in-out; } } .pickup-btn .btn{ max-width: 100%; } .clr-wh{ color: $white; } .bg-gray { background-color: $gray; } // マージン .btn-ml { @include mq() { margin-left: 3rem; } } .btn-mb { margin-bottom: 2rem; @include mq() { margin-bottom: 0; } } // 画像サイズ .fullsize { height: 250px; @include mq() { height: 300px; } @include mq() { height: 400px; } } .time, .genrePost .time { display: block; font-size: 1.4rem; font-weight: normal; margin-bottom: 1rem; text-align: right; span { display: block; } @include mq() { @include flex(center,end ); } } .time { span { i { color: $main; } &:last-child { @include mq() { padding-left: 1rem; } } } } .genrePost .time { @include mq() { @include flex(center, ); color: $white; text-align: center; background-color: $main; margin-left: auto; max-width: 380px; border-radius: 5px 5px 0 0; padding: .5rem 1rem; } } /* パンくず --------------------------------------*/ .pankuz { .inner { font-size: 1.2rem; padding: 1rem 4vw; @include mq() { font-size: 1.4rem; padding: 1rem 6rem; } } } .breadcrumb_inner { font-size: 1.2rem; padding: 1rem 4vw; @include mq() { font-size: 1.4rem; padding: 1rem 6rem; } .home span span, .taxonomy span span { display: inline-block; padding: 0 .5rem; } } /* HEADER --------------------------------------*/ .header { display: flex; align-items: center; width: 100%; height: 80px; background: $white; @include mq() { height: 100px; } } .header-inner { width: 100%; margin: 0 auto; padding: 0 4vw; @include mq('md') { padding: 0 6rem; } a { display: block; text-align: left; } } // パンくず .pankuz { background-color: $gray; } /* FOOTER --------------------------------------*/ .footer { padding-top: 6rem; @include mq('md') { padding-top: 12rem; } .bg_inner { max-width: 1200px; margin: 0 auto; padding: 3rem 4vw; box-sizing: border-box; @include mq() { padding: 6rem 3rem; } ul li a i { display: inline-block; margin-right: .5rem; } } a { color: $white; } } .footerNav-list { @include mq() { @include flex(static,); } li { width: 100%; padding: 1rem; border-top: 2px solid $white; text-align: center; &:last-child { border-bottom: 2px solid $white; } @include mq() { border-top: 2px solid $white; border-bottom: 2px solid $white; border-right: 2px solid $white; padding: 3rem; } a { display: block; width: 100%; color: $white; font-size: 1.6rem; @include mq('md') { font-size: 2rem; } span { display: block; font-size: 1.2rem; margin-top: -.5rem; } } } } // 各記事エリア .selections, .recommend, .list, .colum { margin-bottom: 3rem; h3 { font-size: 2rem; background-color: $white; padding: 1rem; margin-bottom: 2rem; @include mq() { font-size: 2.4rem; margin-bottom: 2rem; } i { padding-right: 1rem } } ul { @include flex(center, static); flex-wrap: wrap; li { margin-bottom: 1rem; padding-left: 1rem; @include mq() { margin-bottom: 2rem; margin-right: 2rem; padding-left: 1rem; } } } } // 3選記事のみブロック要素に .selections { margin-bottom: 3rem; li { display: block; width: 100%; margin-bottom: 1rem; &:last-child { margin-bottom: 3rem; } @include mq() { margin-bottom: 2rem; } } } .colum { //コラム記事 margin-bottom: 6rem; } // 免責事項 .disclaimer { font-size: 1.4rem; margin-bottom: 6rem; h4 { font-size: 1.4; font-weight: bold; background-color: $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: 4px solid $white; border-radius: 5px; } } .footerBtm{ margin-bottom: 1rem; text-align: center; a { color: $white; font-weight: 700; } } // コピーライト .Copyright { color: $white; text-align: center; font-size: 1.2rem; a { text-align: center; color: $white; } } // 固定バナー .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: 1200px; 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('md') { width: 85%; } } .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('md') { 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: bold; 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('md') { top: -11px; padding: 1rem; } } i { position: absolute; bottom: 15px; right: 3%; transition: all.3s ease-in-out; } } #wpfront-scroll-top-container { background-color: $main; color: $white !important; display: block; font-size: 20px; width: 40px; height: 40px; line-height: 2; position: fixed; bottom: 25% !important; right: 0 !important; text-align: center; z-index: 9999; @include mq('md') { font-size: 30px; width: 60px; height: 60px; } @include mq('lg') { bottom: 0 !important; } } /* メインビジュアル --------------------------------------*/ .mv { background-position: center 20%; background-repeat: no-repeat; background-size: cover; width: 100%; height: 450px; position: relative; @include mq('xs') { height: 500px; } @include mq() { height: 600px; } } .top-bg { //TOPのメインビジュアル background-image: url(img/mv-bg.jpg); } .catList-bg { //カテゴリ一覧ページのメインビジュアル background-image: url(img/mv-bg.jpg); } .archive-bg { //アーカイブページのメインビジュアル background-image: url(img/mv-bg.jpg); } .post-bg { //投稿ページのメインビジュアル background-image: url(img/mv-bg.jpg); } .page-bg { //固定ページのメインビジュアル background-image: url(img/mv-bg.jpg); } .search-bg { //検索画面のメインビジュアル background-image: url(img/search-bg.jpg); position: relative; z-index: 1; &::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: $black; opacity: .7; z-index: 2; } } .mv-ttl { width: 100%; position: absolute; text-align: center; top: 70%; left: 50%; transform: translate(-50%,-50%); color: #fff; font-size: 2rem; max-width: 350px; z-index: 3; background-color: #0bd; box-shadow: $shadow; height: 100px; @include flex(center, center); @include mq('sm') { font-size: 2.7rem; max-width: 100%; width: 50%; margin: 0 auto; padding: 0 1rem; } @include mq('md') { font-size: 4rem; } } /* TOPページ --------------------------------------*/ .main { .read { // 導入文 background-color: $white; padding: 2rem; box-sizing: border-box; @include mq() { padding: 3rem; } h1 { // 導入文のタイトル font-size: 2rem; margin-bottom: 2rem; border-bottom: 2px solid; padding-bottom: .5rem; @include mq('md') { font-size: 2.4rem; border-bottom: 3px solid; padding-bottom: 1rem; } @include mq() { font-size: 3rem; border-bottom: 5px solid; margin-bottom: 3rem; } } } } // TOP3軸レイアウト .genre3Top { ul { display: block; @include mq('lg') { @include flex(static,); } li{ width: 100%; max-width: 100%; padding: 1rem; box-sizing: border-box; margin-bottom: 2rem; transition: all.3s; &:last-child { margin-bottom: 0; } @include mq('xs') { margin-bottom: 3rem; } @include mq('lg') { max-width: 380px; margin-bottom: 0; margin-right: 2rem; &:last-child { margin-right: 0; } } a { display: flex; align-items: center; background-color: $white; padding: 1.5rem; font-size: 2rem; min-height: 100px; line-height: 1.6; @include mq() { font-size: 2.4rem; min-height: 126px; } } } } } // 3軸各3社紹介エリア .genreMid { .content { @include mq('xl') { max-width: 1400px; @include flex(static ); } } h2 { //軸のタイトル font-size: 2rem; font-weight: bold; margin-bottom: 2rem; text-align: center; @include mq('xs') { font-size: 2.4rem; } @include mq() { font-size: 3rem; margin-bottom: 3rem; } } .genreBox { //各社の大枠 padding: 1.5rem; background-color: $white; box-sizing: border-box; margin-bottom: 3rem; &:last-child { margin-bottom: 0; } @include mq('md') { padding: 4rem; max-width: 750px; margin: 0 auto 6rem; &:last-child { margin-bottom: 0; } } @include mq('xl') { width: 430px; max-width: 100%; margin: 0; padding: 2rem; margin-left: 1rem; &:first-child { margin-left: 0; } } h3 { // 会社名 font-size: 1.8rem; font-weight: bold; margin-bottom: 2rem; line-height: 1.2; @include mq('xs') { font-size: 2.4rem; } @include mq('md') { @include flex(center, flex-start); font-size: 2.7rem; } @include mq('xl') { font-size: 2rem; min-height: 65px; } &::before{ content: ''; display: inline-block; width: 3px; height: 20px; vertical-align: -9%; margin-right: 1rem; @include mq('xs'){ height: 24px; } @include mq() { width: 4px; height: 27px; margin-right: 1rem; } } } .fullsize{ height: 250px; @include mq('md') { height: 300px; } @include mq('xl') { height: 250px; } } .pointBox { @include mq('xl') { min-height: 445px; margin-bottom: 0; } h4 { // おすすめポイントのタイトル font-size: 1.8rem; line-height: 1.4; padding: 1rem 2rem; width: 100%; margin-bottom: 2rem; color: $white; @include mq('sm') { font-size: 2.2rem; } @include mq('lg') { font-size: 1.8rem; } } } } table { // 基本情報 display: block; width: 100%; margin: 1rem 0; @include mq('md') { margin: 2rem 0; } @include mq('xl') { margin-bottom: 0; } thead { display: block; width: 100%; tr { display: block; th { //基本情報のタイトル font-size: 1.8rem; line-height: 1.4; display: block; width: 100%; margin-bottom: 1rem; border-bottom: 2px dashed $black; color: $black; text-align: left; font-weight: bold; &:before { content: '\f05a'; font-family: 'Font Awesome 5 Free'; font-size: 25px; font-weight: 900; margin-right: .5rem; } @include mq('xs'){ font-size: 2.4rem; margin-bottom: 2rem; } @include mq('lg') { font-size: 1.6rem; } } } } tbody { //基本情報の中身 width: 100%; display: block; tr { display: block; @include mq('md') { @include flex(center,start ); margin-bottom: 1.5rem; } @include mq('xl') { display: block; margin-bottom: 0; } } th { //基本情報の見出し display: block; font-size: 1.6rem; width: 100%; text-align: center; color: $white; font-weight: normal; padding: .5rem; width: 100%; @include mq('md') { font-size: 1.8rem; width: 20%; min-width: 220px; } @include mq('xl') { width: 100%; } i { margin-right: .5rem; } } td { //基本情報の中身 padding: .5rem; @include mq('sm') { display: block; width: 100%; font-size: 1.6rem; } } } } .btn-wrapper { @include flex(center, center); flex-direction: column; @include mq('md') { flex-direction: row; } @include mq('xl') { flex-direction: column; margin-top: 0; } .btn { max-width: 300px; @include mq('xl') { max-width: 100% } } .btn_official { margin-top: 2rem; @include mq('md') { margin-left: 2rem; margin-top: 0; } @include mq('xl') { margin-top: 2rem; margin-left: 0 } } } } // 下層ページのコンテンツ .bottomContent { h2 { @extend .section-ttl; } h3 { @extend .section-sub-ttl; } p { margin-bottom: 2rem; &:last-child { margin-bottom: 0; } @include mq() { margin-bottom: 3rem; } } img { display: block; margin: 2rem 0 ; height: auto; object-fit: contain; @include mq('md') { margin: 5rem auto ; } } } .questionnaire-img { //アンケートコンテンツ画像サイズ width: 100%; @include mq('md') { width: 60%; } } /* その他リスト --------------------------------------*/ .otherList { .bg { background-color: $gray } h2 { @extend .section-ttl; } .content { max-width: 1200px; margin: 0 auto; padding: 0 4vw 3rem; @include mq('sm') { padding: 3rem 3rem 6rem; } } //アコーディオンパネル .ac-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); grid-gap: 2rem; margin: 0 auto; @include mq('sm') { grid-template-columns: repeat(auto-fit, minmax(380px, 1fr)); grid-gap: 3rem; } } .ac-item { @include flex(center, flex-start); width: 100%; max-width: 560px; height: 70px; background-color: $white; box-shadow: $shadow; padding: 0 1.5rem; position: relative; @include mq('sm') { height: 80px; max-width: 100%; padding: 0 2rem; } .ac-ttl { line-height: 1.4; width: 90%; cursor: pointer; @include mq('sm') { font-size: 1.8rem; } @include mq('lg') { font-size: 2rem; } span { position: absolute; top: 50%; right: 20px; z-index: 1; transform: translateY(-50%) rotate(0deg); transition: all.3s; } } .ac-contents { display: none; position: absolute; top: 100%; left: 0; width: 100%; background-color: $white; padding: 0 1.5rem 1rem; box-sizing: border-box; text-align: center; z-index: 9; &Inner { padding: 2rem; @include mq('sm') { padding: 1rem 2rem 3rem; } p { text-align: left; } } .btn-wrapper { margin-top: 2rem; a { @extend .btn; max-width: 100%; padding: .5rem; background-color: $black; } } } } .ac-ttl.open { transition: all.3s; span { transform: translateY(-8px) rotate(-180deg); transition: all.3s; } } } /* 3選記事ボトムコンテンツ --------------------------------------*/ .genreBottom { .content { max-width: 800px; @include mq('xxl') { max-width: 1500px } } ul { @include mq('xxl') { @include flex(static,); } li { width: 100%; margin-bottom: 6rem; &:last-child { margin-bottom: 0; } @include mq('xxl') { max-width: 440px; margin-left: 2rem; margin-bottom: 0; box-sizing: border-box; &:first-child { margin-left: 0; } } .ttl { font-size: 2rem; line-height: 1.4; margin-bottom: 2rem; @include mq() { font-size: 2.4rem; } @include mq('xl') { font-size: 2.7rem; } &:before { content: ''; display: inline-block; width: 3px; height: 20px; vertical-align: -9%; margin-right: 1rem; @include mq() { height: 20px; } @include mq('xl') { height: 25px; } } } img { margin-bottom: 2rem; height: 250px; object-fit: cover; @include mq('xs') { height: 250px; } @include mq('md') { height: 300px; } @include mq('xxl') { height: 250px; } } p { @include mq('xxl') { min-height: 460px; } } .btn { //ボタン margin-top: 2rem; margin-left: auto; @include mq('md') { margin-top: 3rem; } @include mq('xxl') { max-width: 100%; } } } } } /* 2カラムレイアウト --------------------------------------*/ .contents-wrapper { @include mq('xl') { @include flex(static, ) } } .contentsMain { //記事本文 width: 100%; max-width: 100%; @include mq('xl') { max-width: 850px; } } /* カテゴリー覧 --------------------------------------*/ .postList { .contentsMain { //記事本文 ul { margin-bottom: 3rem; @include mq('sm') { margin-bottom: 6rem; } @include mq('md') { @include flex(static,start ); margin-bottom: 6rem; } .thumbnail { //記事のサムネイル画像 img { width: 100%; height: 250px; margin-bottom: 2rem; @include mq('lg') { margin-bottom: 0; width: 300px; } } } .text { //記事のテキスト部分 @include mq('md') { position: relative; padding-left: 3rem; } h3 { //記事のタイトル font-size: 2rem; line-height: 1.4; font-weight: bold; margin-bottom: 2rem; @include mq('md') { line-height: 1.5; font-size: 2; } &::before { content: ''; display: inline-block; width: 4px; height: 20px; margin-right: 1rem; vertical-align: -9%; @include mq() { height: 25px; } } } } } } } .contentsSidebar { // サイドバー max-width: 100%; display: none; @include mq('xl') { display: block; max-width: 370px; margin-left: 3rem; } } .sidebarPost-wrapper { margin-bottom: 3rem; h4 { font-size: 2rem; color: $white; padding: 1rem; margin-bottom: 2rem; i { margin-right: 1rem; } } li { margin-bottom: 1rem; border-bottom: 2px dashed; padding: 0 1rem; a { display: block; position: relative; i { font-size: 10px; display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } } } } /* 3選記事詳細の共通設定 --------------------------------------*/ .genrePost { .contentsMain h4 { font-size: 1.6rem; padding:.5rem 1rem; margin-bottom: 1rem; color: $white; @include mq('md') { font-size: 2rem; } } .caption { h3 { // 3選記事詳細のリード文 font-size: 2.7rem; margin-bottom: 3rem; line-height: 1.4; font-weight: bold; } } .read { padding: 2rem; border: 4px solid ; border-radius: 5px; box-sizing: border-box; margin-bottom: 3rem; @include mq('xs') { margin-bottom: 6rem; } @include mq('md') { padding: 3rem; } p { margin-bottom: 0 } } h3 { @extend .section-sub-ttl; } p { margin-bottom: 2rem; } .tag { display: block; width: 100%; margin-bottom: 3rem; @include mq('xl') { display: flex; justify-content: space-between; margin-bottom: 0; position: absolute; bottom: 0; } li { font-size: 1.4rem; width: 100%; color: $white; padding: .5rem; text-align: center; border-bottom: 2px solid $white; line-height: 1.4; @include flex(center, center); @include mq('xl') { padding: 1rem; max-width: 350px; border-bottom: 0px; border-right: 2px solid $white; } &:last-child { border-right: 0; } } } .genreBox { background-color: $gray; padding: 4vw; box-sizing: border-box; margin-bottom: 6rem; @include mq('md') { padding: 3rem; } &:last-child { margin-bottom: 0 } h3 { font-size: 2rem; background-color: $main; color: $white; padding: 1rem; line-height: 1.3; font-weight: normal; margin-bottom: 3rem; @include mq('md') { font-size: 2.4rem; } } .caption { //特徴と会社名 text-align: center; h3 { font-size: 2rem; @include mq() { font-size: 2.4rem; } span { display: block; font-size: 1.2rem; margin-bottom: 1rem; } } } } } .tableGenre { //テーブル table { tr { td { @include mq() { margin-top: 0; } i { margin-right: .5rem; } &:first-child { display: block; color: $white; padding: .5rem; text-align: center; width: 100%; max-width: 100%; @include mq() { min-width: 150px; max-width: 150px; } } } } } } /* 3選記事・おすすめ企業の共通設定- --------------------------------------*/ .tablePicup, .tableGenre { //テーブル .table-ttl { @extend .section-sub-ttl; &:before { content: '\f05a'; font-family: 'Font Awesome 5 Free'; font-size: 25px; font-weight: 900; margin-right: .5rem; } } table { width: 100%; margin-bottom: 3rem; @include mq() { margin-bottom: 6rem; } tr { display: block; margin-bottom: 10px; &:last-child { margin-bottom: 0; } @include mq() { display: flex; align-items: center; } th { display: block; padding: .5rem; text-align: center; width: 100%; max-width: 100%; color: $white; @include mq() { min-width: 150px; max-width: 150px; } i { margin-right: .5rem; } } td { display: block; padding: .5rem; @include mq('md') { padding: 0; padding-left: 2rem; } } } } } .strongBox, .pointBox, .reviews { margin-bottom: 3rem; @include mq() { margin-bottom: 6rem; } } .pointBox ul, .reviews ul { li { padding: 1.5rem; box-sizing: border-box; // background-color: $white; margin-bottom: 3rem; border: 4px solid; border-radius: 5px; @include mq('md') { padding: 2rem; } &:last-child { margin-bottom: 0; } p { margin-bottom: 0; } } } .pointBox ul li .ttl , .reviews ul li .ttl { font-size: 1.8rem; border-bottom: 2px dashed; margin-bottom: 1.5rem; padding: 0 ; padding-bottom: 1rem; @include mq('md') { font-size: 2.4rem; margin-bottom: 2rem; } i { margin-right: .5rem; } } .quote { display: block; margin-top: 1.5rem; text-align: right; @include mq('md') { margin-top: 3rem; } a { color: blue; text-decoration: underline; } } // 運営者コメント .comment { padding-top: 3rem; &_title { font-size: 1.8rem; display: inline-block; margin-bottom: 3rem; position: relative; z-index: 5; @include mq('md') { font-size: 2rem; } i { position: absolute; top: -19px; right: 70px; color: #FBF12F ; font-size: 7rem; z-index: -1; @include mq('md') { top: -25px; right: 45px; font-size: 9rem; } } } p { margin-top: -2.3rem; border: 2px solid #858585; padding: 1rem; border-radius: 4px; box-sizing: border-box; background-color: $white; z-index: 5; } } /* 記事の詳細ページ共通設定 --------------------------------------*/ .mainImg { //記事詳細のメイン画像の共通設定 position: relative; margin-bottom: 2rem; img { height: 250px; @include mq('md') { height: 300px; } @include mq('xl') { margin-bottom: 3rem; height: 400px; } } .noImg { height: 250px; @include mq('md') { height: 300px; } @include mq('xl') { margin-bottom: 3rem; height: 400px; } } } .article { .mainImg { //記事詳細のメイン画像の設定 img { margin-bottom: 2rem; @include mq('md') { margin-bottom: 3rem; } } } h3 { @extend .section-sub-ttl; } p { margin-bottom: 2rem; } .sentence { h4 { font-size: 2rem; font-weight: 500; border-bottom: 2px solid #858585 ; padding-bottom: .7rem; margin-bottom: 2rem; &::before { content: ''; display: inline-block; background-image: url(./images/icon_db.png); background-position: center; background-repeat: no-repeat; background-size: cover; width: 30px; height: 30px; vertical-align: -20%; margin-right: .7rem; } } } } .sentence img { display: block; width: 100%; object-fit: contain; margin: 0 auto 2rem; @include mq('md') { width: 70%; } } /* 関連記事 --------------------------------------*/ .related { h2 { @extend .section-ttl; } .grid { .grid-item { margin-bottom: 3rem; @include mq() { display: flex; justify-content: space-between; height: 250px; } .relatedPost_thumbnail { margin-bottom: 2rem; @include mq() { max-width: 400px; width: 40%; } img { height: 200px; @include mq() { height: 250px; } } .noImg { height: 200px; @include mq() { height: 250px; } } } .relatedPost_text { width: 100%; @include mq() { position: relative; padding-left: 3rem; width: 65%; } h3 { @extend .section-sub-ttl; } } } } } .company-list { display: grid; grid-gap: 6rem; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); li { position: relative; img { height: 250px; margin-bottom: 2rem; @include mq('md') { grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); height: 300px; } } h3 { @extend .section-sub-ttl; font-size: 2rem; } p { @include mq() { min-height: 180px ; } } } } /* articleページ ----------------------------------------------------------*/ .pager { margin: 0 auto; text-align: center; .page-numbers { margin-right: 1.5rem; &:last-child { margin-right: 0; } } .page-numbers.current { color: $white; padding: 1rem 1.5rem; } .next, .prev { font-size: 30px; vertical-align: -9%; } } /* 個別ページ ----------------------------------------------------------*/ .page { h3 { @extend .section-sub-ttl; } p { margin-bottom: 3rem; } } /* サイトマップ ----------------------------------------------------------*/ #sitemap_list { li { &:before { font-family: 'Font Awesome 5 Free'; font-size: 20px; font-weight: 900; display: inline-block; margin-right: .5rem; } } .home-item:before { content: '\f015'; } .cat-item { a { border-bottom: 2px solid $black; margin-left: 3rem; &:before { content: '\f303'; font-family: 'Font Awesome 5 Free'; font-size: 20px; font-weight: 900; display: inline-block; margin-right: .5rem; } } } .post-item { margin-left: 3rem; a { &:before { content: '\f105'; } } } .page_item { &:before { content: '\f15b' ; } a { border-bottom: 2px solid $black; } } } /* 問合せページ ----------------------------------------------------------*/ .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('md') { 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: $main; vertical-align: -9%; margin-right: .5rem; } /* 404ページ ----------------------------------------------------------*/ .notFound { h3 { @extend .section-sub-ttl; } p { span { display: block; margin-bottom: 3rem; &:last-child { margin-bottom: 0; } } } } /* ハンバーガーメニュー ---------------------------------*/ .burgerBtn_wrapper { position: fixed; right: 1.5rem; 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: 35%; } &:nth-of-type(3) { top:31px; width: 20%; } } &.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 { width: 100vw; height: 100%; position: fixed; top: 0%; left:-150%; z-index: 998; transition: all.2s ease-in-out; @include mq('xs') { width: 87vw; } @include mq('md') { width: 56vw; } &.active { left: 0; transition: all.2s ease-in-out; } .menu { margin: 0 auto; padding: 12rem 6vw 0; width: 100%; max-width: 800px; position: relative; li { text-align: left; margin-bottom: 2rem; position: relative; &:before { content: ''; color: $white; background: $gray; 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: #333 !important; } } &:after { font-family: 'Font Awesome 5 Free'; font-size: 15px; font-weight: 900; 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 { color: $white; vertical-align: 20%; &::after { content: ''; display: block; color: $black; height: 1px; background-color: $white; 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-title { font-size: 2rem; color: $white; text-align: center; } // 各項目ごとのアイコン .menu li:nth-child(1)::after { content: '\f304'; } .menu li:nth-child(2)::after { content: '\f518'; } .menu li:nth-child(3)::after { content: '\f0a6'; } .menu li:nth-child(4)::after { content: '\f1ad'; } .menu li:nth-child(5)::after { content: '\f500'; } .menu li:nth-child(6)::after { content: '\f3c5'; } .menu li:nth-child(7)::after { content: '\f51c'; } /* 目次のレイアウト */ #toc_container { padding: 1.5rem; box-sizing: border-box; border: 4px solid $main; border-radius: 10px; margin: 0 auto 3rem; @include mq('md') { padding: 2rem; margin: 0 auto 6rem; } } #toc_container .toc_title { font-size: 1.8rem; font-weight: bold; text-align: center; margin-bottom: 0; margin:0; margin-bottom: 2rem; @include mq('md') { font-size: 2.2rem; } } .single { #toc_container { padding: 2rem; box-sizing: border-box; .toc_title { background-color: transparent !important; padding-bottom: 0 !important; margin-bottom: 1.5rem !important; } .toc_list { width: 80% !important; margin: 0 auto !important; } } } #toc_container .toc_title:before { content: '\f0ca'; font-family: 'Font Awesome 5 Free'; font-size: 1.4rem; color: #fff; background: $main; width: 18px; height: 18px; padding: .5rem; margin-right: .5rem; border-radius: 50%; font-weight: 900; height: 100%; @include mq('md') { font-size: 2rem; width: 30px; height: 30px; margin-right: .7rem; padding: 1rem; } } #toc_container .toc_list { width: 90%; margin: 0 auto; @include mq('md') { width: 80%; } @include mq('xl') { width: 70%; } } #toc_container .toc_list li { margin-bottom: 1rem; position: relative; @include mq('md') { margin-bottom: 1.5rem; } } #toc_container .toc_list li:before { content: ''; display: inline-block; width: 5px; height: 5px; background-color: $main; border-radius: 50%; position: absolute; top: 50%; transform: translateY(-50%); left: -15px; @include mq('md') { width: 10px; height: 10px; left: -20px; } } #toc_container .toc_list li a { font-size: 1.4rem; line-height: 1.4; @include mq('md') { font-size: 1.6rem; } } #toc_container .toc_list li a:hover { opacity: .7; text-decoration: underline; transition: all.3s; } // スライドコンテンツ .slideArea .content { position: relative; } .slideArea { overflow: hidden; .swiper { margin-left: auto; margin-right: auto; position: relative; overflow: visible; //見切れない場合はvisibleを使用 // overflow: hidden; list-style: none; padding: 0; z-index: 1; } .swiper-wrapper { display: flex; width: 100%; height: 100%; position: relative; z-index: 1; transition-property: transform; box-sizing: content-box; // @include mq('xxl') { // display: grid; // grid-template-columns: repeat(4, 1fr); // grid-row-gap: 30px; // } } .swiper-slide { flex-shrink: 0; width: 100%; height: 100%; position: relative; transition-property: transform; transition: all.3s ease; .slide { overflow: hidden; border-radius: 4px; min-height: 320px; width: 100%; transition: all.3s ease; .slide-media, .slideWrapper { overflow: hidden; position: relative; padding-top: 75.5%; img { position: absolute; top: 0; left: 0; width: 100%; height: calc(100% + 16px); object-fit: cover; transition: all.3s ease; z-index: 2; } } .slideWrapper { //アイキャッチがない場合の設定 &:before { content: ''; background-image: url(img/icon_noImg.png); background-repeat: no-repeat; background-size: contain; background-position: center; display: block; width: 55px; height: 55px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: 3; font-size: 5rem; color: $white; @include mq('xs') { width: 8rem; height: 8rem; } @include mq('md') { width: 7rem; height: 7rem; } } } .slide-content{ //スライドのテキスト部分 padding: 2rem 0; .slide-ttl { font-weight: bold; margin-bottom: 1.5rem; border-bottom: 2px solid #333; padding-bottom: 0.5rem; } .slide-text { line-height: 1.4; } .list-btn { position: relative; } } } } } // prev,nextボタン .slideArea .swiper-button-prev, .slideArea .swiper-button-next { display: grid; place-content: center; width: 6rem; height: 6rem; cursor: pointer; z-index: 10; &::before { content: ''; background-color: rgba(0, 0, 0, 0.3); position: absolute; top: 0; right: 0; bottom: 0; left: 0; border-radius: 50%; } &::after { content: ''; width: 1.2rem; height: 1.2rem; border-color: $white; border: solid $white; border-width: 3px 0 0 3px; } } .slideArea .swiper-button-prev { left: -1rem; &::after { transform: rotate(-45deg); } } .slideArea .swiper-button-next { right: -1rem; &::after { transform: rotate(135deg); } } // ページネーション .slideArea .swiper-pagination { bottom: -30px !important; @include mq('xl') { bottom: -50px !important; } } .slideArea .swiper-pagination-bullet { width: 1.6rem; height: 3px; background-color: rgb(158, 158, 158); border-radius: 0; transition: all.3s ease; @include mq('md') { width: 1.8rem; } } .slideArea .swiper-pagination-bullet-active { width: 4rem; background-color: #040ED0 ; transition: all.3s ease; } // ホバーアクション .slideArea .slide:hover .slide-media img { transform: scale(1.1); transition: all.3s ease-in-out; } .slideArea { /* スライダーではない時のレイアウト指定*/ .swiper:not(.swiper-initialized) { //swiperに()内のクラスが付与されていない場合=スライダーではない場合のレイアウト padding: 0; .swiper-button-prev, .swiper-button-next, .swiper-pagination{ //prev,next,ページネーションの非表示 display: none; } .swiper-wrapper { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; @media only screen and (max-width: 1024px) and (min-width: 600px) { grid-template-columns: repeat(2, 1fr); gap: 24px; } @media only screen and (max-width: 599px) { grid-template-columns: repeat(1, 1fr); } } } } @include mq('xl') { .feeBox { min-height: 375px; } }