// ブレイクポイントの初期設定 $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: #F9F9F9; $main: #4CD1D8; $color1: #0B3D5D; $color2: #579CD2; $color3: #4280A9; $color4: #FE8535; $color5: #AE5317; $shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px; $btn1:#579CD2; $btn1-shadow:#4280A9; $btn2:#FE8535; $btn2-shadow:#AE5317;; /*基本設定 --------------------------------------*/ 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; } } .mb-4 { margin-bottom: 4rem; } .mb-6 { margin-bottom: 6rem; } /* 更新日 */ .update { background: $main; /* 任意の背景色に変更して下さい */ padding: 1rem; box-sizing: border-box; position: fixed; top: 0; left: 0; opacity: 0; transform: translateY(-100px ); z-index: 99; } @media screen and (max-width: 768px) { .update { padding: .5rem 1rem; } } .update span { color: #fff; } /* 表示するアニメーション */ .update.fadeIn { -webkit-animation: fadeInAnime .3s ease-in forwards; animation: fadeInAnime .3s ease-in forwards; } @keyframes fadeInAnime { from { opacity: 0; transform: translateY(-100px); } to { opacity: 1; transform: translateY(0); } } /* 非表示にするアニメーション */ .update.fadeOut { -webkit-animation: fadeOutAnime .3s ease-in forwards; animation: fadeOutAnime .3s ease-in forwards; } @keyframes fadeOutAnime { from { opacity: 1; transform: translateY(0); } to { opacity: 1; transform: translateY(-100px); } } /*----------メインカラ一括変更▼----------*/ .footer .bg, //フッター #menu-footer-menu, //フッターメニュー .sidebarPost-wrapper h4, //サイドバーのタイトル .section-ttl, //メインタイトル .btn_official, //公式ボタン .list-btn, //一覧用のボタン .selections .tag li, //3選詳細のタグ .burger-musk, //ハンバーガーボタンが開いた時の全画面背景 .archive .contentsMain ul .text h3:before, //関連記事一覧のタイトル .page-numbers.current { //ページャー background-color: $btn1; } .menu-content { background: $main; } //ハンバーガーボタンが開いた時の背景 // ボーダーの変更 .section-sub-ttl, .main .read h2, //TOP導入文 .sidebarPost-wrapper { //サイドバーの点線 border-color: $main; } // カラー変更 .menu-content #menu-header-menu .menu li:after { color: $main; } /*----------メインカラ一括変更▲----------*/ /*----------3軸テーマカラ一括変更▼----------*/ .bg-gray { background-image: linear-gradient(90deg, rgba(144, 245, 154, 1), rgba(4, 202, 255, 1)); } /*------TOPの各軸のレイアウト--------*/ // 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軸一覧のボタンの色を変更する .archive .flex .contentsMain { .postColor-01 { &::before { background-color: $color1; } } .postColor-02 { &::before { background-color: $color2; } } .postColor-03 { &::before { background-color: $color3; } } } // 各軸のパーマリンクがid名です。(3軸記事詳細ページ) .genreBox { .caption { h3 { border-bottom: 2px dotted #333; background-color: inherit; color: $black; position: relative; border-left: 0px; &::before { content: ""; position: absolute; left: 0px; display: inline-block; background-image: url(img/houki.png); background-repeat: no-repeat; width: 53px; height: 58px; background-size: contain; vertical-align: middle; } } } h3 { border-left: 15px solid $color2; font-weight: bold; border-bottom: 0px; background-color: inherit; color: $black; } } // 1軸目 #chiikimicchaku { //各見出しの背景色 .selections { .time { //公開日と更新日 margin-bottom: 1rem; transform: translateY(3px); span { i { margin-right: .5rem; } } @include mq() { margin-bottom: 0; } } } .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; } } } } // 2軸目 #support { .selections { .time { //公開日と更新日 margin-bottom: 1rem; transform: translateY(3px); @include mq() { margin-bottom: 0; } } h3 { border-color: $color2; } } .table.genre tbody tr th:first-child { //テーブルの見出し background-color: #c3c3c3; } .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 { //各見出しの背景色 .selections { .time { //公開日と更新日 margin-bottom: 1rem; transform: translateY(3px); span { i { //アイコン color: $color3; } } @include mq() { margin-bottom: 0; } } } .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; } } } } /*----------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: 1200px; 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: 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 { background-color: $color3; font-size: 2rem; padding: 1rem; color: $white; text-align: center; margin-bottom: 20px; line-height: 1.6; border-left: solid 32px $color2; padding: 10px 30px 10px 5px; @include mq('xs') { font-size: 2.4rem; padding: 1.5rem; } @include mq() { font-size: 3rem; padding: 4rem 0rem; 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; } } .btn, //ボタン .btn_official, .btn_pickup { //公式ボタン 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; } } &:hover { box-shadow: none; transform: translateY(5px); } } .btn_pickup { background-color: #4CC480; box-shadow: 0 5px 0 #277448; max-width: 100%; border-radius: 50px; &:hover { box-shadow: none; transform: translateY(5px); } } .btn, .btn_pickup { &::after { //ボタンのアイコン background-image: url(img/icon_arrow.svg); } } .btn, .btn_pickup { &: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 { position: relative; padding: .5rem; display: block; text-align: center; margin-left: auto; margin-top: 3rem; display: block; color: $white; transition: all.3s ease-in-out; box-shadow: 0px 5px 0px $btn1-shadow; align-items: center; border-radius: 1.5rem; font-weight: bold; justify-content: center; margin-bottom: 10px; @include mq('md') { width: 200px; } @include mq('xl') { width: 230px; position: absolute; bottom: 0; right: 0; } &:hover { box-shadow: none; transform: translateY(5px); } &: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; } } .clr-wh { color: $white; } .bg-gray { background-color: $gray; } // マージン .btn-ml { @include mq() { margin-left: 3rem; } } .btn-mb { margin-bottom: 1rem!important; width: 100%!important; box-shadow:0 5px 0 $btn1-shadow; @include mq() { max-width: 315px; margin-bottom: 0px !important; } } // 画像サイズ .fullsize { height: 250px; @include mq() { height: 300px; } @include mq() { height: 400px; } } .time, .selections .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 { &:last-child { @include mq() { padding-left: 1rem; } } } } .selections .time { @include mq() { @include flex(center, ); color: $white; text-align: center; margin-left: auto; max-width: 380px; border-radius: 5px 5px 0 0; padding: .5rem 1rem; } } /* パンくず --------------------------------------*/ .pankuz { .inner { font-size: 1.2rem; padding: 0 4vw; max-width: 1200px; margin: 0 auto; @include mq() { font-size: 1.4rem; padding: 0 3rem; } } } /* HEADER --------------------------------------*/ .header { display: flex; align-items: center; width: 100%; height: 68px; background: $white; box-shadow: 0px 5px 5px #93939373; z-index: 3; position: relative; @include mq() { height: 68px; } // .pr { // position: absolute; // left: 0; // top: 0; // bottom: 0; // margin: auto; // font-size: 14px; // width: 45px; // padding: 8px 12px; // background: #444; // color: #fff; // } } .header-inner { width: 100%; margin: 0 auto; padding: 0 0 0 60px; @include mq('md') { padding: 0 70px; } a { display: block; text-align: left; .header-title { display: flex; align-items: center; justify-content: normal; font-size: 14px; @include mq { font-size: 16px; } img { top: 0px; width: 36px; @include mq { width: 50px; } } h1 { padding-left: 1rem; padding-bottom: 1rem; transform: translateY(5px); line-height: 1.5; font-weight: 600; letter-spacing: 2px; color: #083C63; } } &::before { content: "PR"; color: $white; padding: 0px 14px; border-radius: 10px; position: absolute; top: 22px; left: 6px; background-color: $black; @include mq() { top: 17px; left: 9px; } } } } // パンくず .pankuz { background-color:#D1F2FF ; padding: 10px; } /* FOOTER --------------------------------------*/ .footer { .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; } .selections,.recommend,.list { margin-bottom: 1.5rem; } } #menu-footer-menu { @include mq() { @include flex(); } 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; margin-top: -.5rem; &::after { display: block; color: $white; font-size: 1.2rem; @include mq('md') { font-size: 1.4rem; } } } } } } // JSでspanタグをその擬似要素として文字を挿入 #menu-footer-menu li:nth-child(1) a span::after { content: "ホーム"; } #menu-footer-menu li:nth-child(2) a span::after {    content: "サイト内記事一覧"; } #menu-footer-menu li:nth-child(3) a span::after {    content: "運営者情報"; } #menu-footer-menu li:nth-child(4) a span::after {    content: "サイトマップ"; } #menu-footer-menu li:nth-child(5) a span::after { content: "お問い合わせ"; } #menu-footer-menu li:nth-child(6) a span::after { content: ""; } // 各記事エリア .selections, .recommend, .list, .colum { 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 { padding: 1rem; @include mq('md') { padding: 1rem; } } } } .selections.close, .recommend.close, .list.close, .colum.close { h3 { margin-bottom: 0; } } // 3選記事のみブロック要素に .selections { li { display: block; width: 100%; } } // 免責事項 .disclaimer { font-size: 1.4rem; margin: 6rem 0; 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 / 8%); 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:$btn1; -webkit-box-shadow: 0 5px 0 #880e0e; box-shadow: 0 5px 0 $btn1-shadow; width: 100%; position: relative; border-radius: 5px; @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%; } &:hover { box-shadow: none; transform: translateY(5px); } span { font-size: 1.4rem; font-weight: bold; position: absolute; top: -15px; left: calc(50% - 38%); display: block; width: 77%; padding: .5rem; color: $btn1; border: 2px solid $btn1; 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: $color3; color: $white !important; display: block; font-size: 20px; width: 40px; height: 40px; line-height: 2; position: fixed; bottom: 25% !important; right: 10px !important; text-align: center; border-radius: 42px; z-index: 9999; bottom: 0 !important; @include mq('md') { font-size: 30px; width: 60px; height: 60px; } @include mq('lg') { bottom: 10px !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.jpg); position: relative; img { left: 50%; bottom: -63px; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); width: 308px; position: absolute; @include mq() { width: 500px; } @include mq(sm) { transition: unset; bottom: 33px; right: 36px; -webkit-transform: initial; left: auto; } } } .catList-bg { //カテゴリ一覧ページのメインビジュアル background-image: linear-gradient(90deg, rgba(144, 245, 154, 1), rgba(4, 202, 255, 1)); } .archive-bg { //アーカイブページのメインビジュアル background-image: linear-gradient(104deg, rgba(57, 214, 171, 0.83), #5dccff); } .post-bg { //投稿ページのメインビジュアル background-image: linear-gradient(90deg, rgba(144, 245, 154, 1), rgba(4, 202, 255, 1)); } .page-bg { //固定ページのメインビジュアル background-image: linear-gradient(90deg, rgba(144, 245, 154, 1), rgba(4, 202, 255, 1)); } .search-bg { //検索画面のメインビジュアル background-image: linear-gradient(90deg, rgba(144, 245, 154, 1), rgba(4, 202, 255, 1)); 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; } } .sub { .mv-inner { img { position: absolute; min-width: 332px; width: 70%; left: 50%; top: 39%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); @include mq() { right: 10px; top: 50%; width: 45%; transform: translate(0%, -50%); -webkit-transform: translate(0%, -50%); -ms-transform: translate(-50%, -50%); } } } } .mv-ttl { width: 100%; position: absolute; text-align: center; display: block; left: 50%; top: 83%; transform: translate(-50%, -50%); color: #fff; font-size: 2.5rem; max-width: 350px; padding: 1rem; z-index: 2; min-height: 50px; border-bottom: dotted; @include mq('sm') { font-size: 2.7rem; max-width: 100%; width: 50%; margin: 0 auto; padding: 1rem 2rem; } @include mq('md') { font-size: 4rem; top: 45%; left: 25%; width: 40%; } } /* 基本情報の共通設定 --------------------------------------*/ table, table tbody, table tbody tr, table tbody tr th, table tbody tr td { display: block; width: 100%; } .table { margin: 3rem auto; tbody { tr { @include mq('md') { @include flex(center, normal); margin-bottom: 2rem; } th { font-size: 1.6rem; width: 100%; color: $white; font-weight: 500; padding: .7rem; text-align: center; background-color: #c3c3c3; @include mq('md') { font-size: 1.8rem; max-width: 150px; min-width: 150px; padding: .5rem; } } td { padding: 1rem; @include mq('md') { padding: 0 0 0 2rem; } } } } } .table.top { //TOPページの基本情報 tbody { tr { flex-direction: column; margin-bottom: 0; th { max-width: 100%; } td { padding: .7rem; background: $white; } } } } .table.list { margin: 0; tbody tr { margin-bottom: 1rem; th { font-size: 1.6rem; max-width: 120px; min-width: 120px; } td { text-align: left; padding-left: 1rem; font-size: 1.4rem; } } } /* tablepress --------------------------------------*/ /* TOPページ --------------------------------------*/ .main { .read { align-items: center; text-align: center; // 導入文 padding: 2rem; box-sizing: border-box; @include mq(lg) { display: flex; } @include mq() { padding: 3rem; } p { color: $black; text-align: left; } .text { p { color: $white; line-height: 24px; } } img { max-width: 470px; object-fit: contain; } .text { text-align: left; margin-bottom: 33px; @include mq(lg) { margin-bottom: 0px; padding-right: 70px; } } h2 { // 導入文のタイトル font-size: 2rem; margin-bottom: 2rem; border-bottom: 2px dotted; padding-bottom: .5rem; color:$white; @include mq('md') { font-size: 2.4rem; border-bottom: 3px dotted; padding-bottom: 1rem; } @include mq() { font-size: 3rem; border-bottom: 5px dotted; margin-bottom: 3rem; } } } } // TOP3軸レイアウト .genre3Top { background-color:#f5feff; &.section-wrapper { padding-top: 0; } ul { display: block; @include mq('lg') { @include flex(static, ); } img { width: 100%; object-fit: cover; object-position: top; @include mq('lg') { max-height: 173px; } } 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: block; font-weight: 700; padding: 0; text-align: center; width: 100%; // align-items: center; // padding: 1.5rem; // font-size: 2rem; // min-height: 100px; // line-height: 1.6; @include mq() { font-size: 2.4rem; min-height: 210px; } span { min-height: 9rem; letter-spacing: 0.05em; line-height: 1.3; position: relative; width: 100%; color:$white; border-right: solid 31px; padding: 13px 9px; display: flex; justify-content: center; align-items: center; font-size: 19px; } } } } .bg-01 { a{ overflow: hidden; background-color: $color4; position: relative; display: inline-block; box-shadow: 4px 4px 10px #c3c3c3; &::before { content: ""; position: absolute; top: 0; left: 0; width: 0; height: 0; border-bottom: 50px solid $color4; border-right: 50px solid transparent; transform: rotate(90deg); } &:hover { box-shadow: none; transform: translateY(5px); } } span { &::after { content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: 900; position: absolute; right: -26px; color: $color4; } } } .bg-02 { a { background-color:#58C193; position: relative; display: inline-block; box-shadow: 4px 4px 10px #c3c3c3; &::before { content: ""; position: absolute; top: 0; left: 0; width: 0; height: 0; border-bottom: 50px solid #58C193; border-right: 50px solid transparent; transform: rotate(90deg); } &:hover { box-shadow: none; transform: translateY(5px); } } span { &::after { content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: 900; position: absolute; right: -26px; color:#58C193; } } } .bg-03 { a { background-color: #579CD2; position: relative; display: inline-block; box-shadow: 4px 4px 10px #c3c3c3; &::before { content: ""; position: absolute; top: 0; left: 0; width: 0; height: 0; border-bottom: 50px solid #579CD2; border-right: 50px solid transparent; transform: rotate(90deg); } &:hover { box-shadow: none; transform: translateY(5px); } } span { &::after { content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: 900; position: absolute; right: -26px; color:#579CD2; } } } } // 3軸各3社紹介エリア .genre01 { h2 { background-color: $white; color: $color4; border:solid 3px $color4; &::before { content: ""; position: absolute; top: 0; left: 0; width: 0; height: 0; border-bottom: 50px solid $color4; border-right: 50px solid transparent; transform: rotate(90deg); } } } .genre02 { h2 { background-color: $white; color: #58C193; border:solid 3px #58C193; &::before { content: ""; position: absolute; top: 0; left: 0; width: 0; height: 0; border-bottom: 50px solid #58C193; border-right: 50px solid transparent; transform: rotate(90deg); } } } .genre03 { h2 { background-color: $white; color:#579CD2; border:solid 3px #579CD2; &::before { content: ""; position: absolute; top: 0; left: 0; width: 0; height: 0; border-bottom: 50px solid #579CD2; border-right: 50px solid transparent; transform: rotate(90deg); } } } .genreMid { .content { max-width: 1200px; } .table { tbody { tr { th { background-color: #c3c3c3; } } } } h2 { //軸のタイトル position: relative; border-radius: 10px; font-size: 2rem; font-weight: bold; margin-bottom: 2rem; text-align: center; font-size: 2rem; font-weight: 300; padding: 1rem; text-align: center; margin-bottom: 20px; line-height: 1.6; padding: 30px 29px; @include mq('xs') { font-size: 2.4rem; } @include mq() { font-size: 3rem; margin-bottom: 3rem; } } .genreBox { //各社の大枠 padding: 1.5rem; background-color: $gray; box-sizing: border-box; margin-bottom: 3rem; margin: 10rem auto; width: 100%; padding: 4rem 2rem; border-radius: 10px; &:last-child { margin-bottom: 0; } @include mq('md') { &:last-child { margin-bottom: 0; } } @include mq('xl') { width:100%; padding: 2rem; &:first-child { margin-left: 0; } } .pickup-img { margin-bottom: 2rem; } .pointBox { dl { display: table; margin-bottom: 0.5rem; width: 100%; dt { background-color: $color2; color: #FFF; font-weight: 400; padding: 1rem; text-align: center; width: 12rem; display: table-cell; vertical-align: middle; } dd { padding: 0 0 0 1rem !important; width: calc(100% - 12rem); display: table-cell; vertical-align: middle; background-color: $white; } } } h3 { // 会社名 font-size: 2.5rem; font-weight: bold; margin-bottom: 2rem; line-height: 1.2; border-bottom: 2px dotted #333; padding-bottom: 10px; @include mq('xs') { font-size: 2.7rem; } @include mq('md') { @include flex(center, flex-start); font-size: 2.7rem; } @include mq('xl') { font-size: 3rem; min-height: 65px; } &::before { content:''; display: inline-block; background-image: url(img/houki.png); background-repeat: no-repeat; width: 53px; height: 58px; background-size: contain; vertical-align: middle; background-color: $gray; } } .fullsize { height: 300px; @include mq() { height: 440px; } } .review { margin: 1%; border-radius: 2rem; margin-bottom: 30px; background-color: $white; padding: 1.6rem; ul { padding: 0px 5px; } .review-title { border-bottom: 2px dotted $color2; margin-bottom: 2rem; color: $color2; font-weight: bold; font-size: 16px; &::before { content: "\f007"; font-family: "Font Awesome 5 Free"; font-weight: 900; padding-right: 10px; color: $color2; } } } .pointBox { .reviewBox { dl { background-color: #EAECF3; margin-bottom: 1rem; padding: 1rem; dt { margin-bottom: 1rem; font-weight: bold; h5 { border-bottom: 0.2rem solid #333; font-size: 1.6rem; font-weight: 400; letter-spacing: 0.05em; line-height: 1.3; min-height: 5rem; padding: 0.8rem 0 1rem 5rem; position: relative; &::before { content: "\f007"; font-family: "Font Awesome 5 Free"; font-weight: 900; } } } } } h4 { // おすすめポイントのタイトル font-size: 1.8rem; font-weight: bold; line-height: 1.4; padding: 1rem; width: 100%; margin-bottom: 2rem; color: $black; border-left: 15px solid $color2; @include mq('sm') { font-size: 2.2rem; } @include mq('lg') { font-size: 1.8rem; } } } .review-in { display: block; justify-content:space-between; align-items: stretch; @include mq() { display: flex; } } } } .home { .genreBox { h3 { border-left: 0px; } } } .btn-wrapper { //ボタンレイアウト display: block; bottom: 20px; left: 0; align-items: center; margin-top: 4rem; justify-content: space-evenly; @include mq() { display: flex; margin-right: 4rem; margin: auto; } a { align-items: center; border-radius: 1.5rem; display: flex; font-weight: bold; justify-content: center; position: relative; } .btn { width: 80%; margin: auto; margin-bottom: 10px; background: $color2; @include mq() { width: 30%; } @include mq('xl') { max-width: 100% } &:hover { box-shadow: none; transform: translateY(5px); } } .bg-01 { background:$btn1; box-shadow: 0 5px 0 $btn1-shadow; } .bg-01,.bg-02,.bg-03 { background-color: $btn1; box-shadow: 0 5px 0 $btn1-shadow; &:hover { box-shadow: none; transform: translateY(5px); } } .btn_official { background:$btn2; box-shadow: 0 5px 0 $btn2-shadow; } } .common-parts { .btn { margin-bottom: 0px; @include mq() { width: 50%; } } } // 下層ページのコンテンツ .sentence,.sentences,.mb-4 { margin-bottom: 4rem; h2 { @extend .section-ttl; background: $white; border: solid 2px $color2; color: $color2; padding: 10px; position: relative; border-radius: 10px; &:before { content: ""; position: absolute; top: -10px; bottom: -10px; left: -10px; right: -10px; border: solid 2px $color2; z-index: -1; border-radius: 10px; } } h3 { @extend .section-sub-ttl; border-bottom: solid 4px $color2; background: #fff; border: solid 2px $color2; color: $color2; padding: 10px; position: relative; border-radius: 10px; &:before { content: ""; position: absolute; top: -10px; bottom: -10px; left: -10px; right: -10px; border: solid 2px $color2; z-index: -1; border-radius: 10px; } } h4 { font-weight: bold; border-bottom: 3px solid $color2; margin-bottom: 10px; padding: 6px 0px; font-size: 18px; } h5 { border-left: 8px solid $color2; padding-left: 10px; font-weight: bold; margin-bottom: 10px; } p, ul { margin-bottom: 2rem; &:last-child { margin-bottom: 0; } @include mq() { margin-bottom: 3rem; } } picture { display: block; margin-bottom: 3rem; @include mq('md') { margin-bottom: 6rem; } } } .contentsMain { .review { width: 100%; margin: 1%; border-radius: 2rem; margin-bottom: 30px; background-color: $gray; padding: 1.6rem; .review-title { border-bottom: $color2 2px dotted; color: $color2; display: block; font-size: 2rem; font-weight: 700; letter-spacing: 0.05em; line-height: 1.3; margin: 0 auto 1.2rem auto; width: 98%; padding: 1rem; &::before { content: "\f007"; font-family: "Font Awesome 5 Free"; font-style: normal; font-weight: 900; color: $color2; margin-right: 1rem; } } h4 { margin-bottom: 10px; font-weight: bold; color: $color3; &::before { content: "\f4ad"; font-family: "Font Awesome 5 Free"; font-style: normal; font-weight: 900; color: $color2; margin-right: 1rem; margin-left: 10px; font-size: 20px; } } .review-bg { margin-bottom: 20px; border-radius: 10px; background-color: $white; padding: 10px; } .admin_title { margin-bottom: 10px; font-weight: bold; color: $color3; &::before { content: "\f4ad"; font-family: "Font Awesome 5 Free"; font-style: normal; font-weight: 900; color: $color2; margin-right: 1rem; margin-left: 10px; font-size: 20px; } } } .btn { width:60%; @include mq() { width:50%; } } } .sectionPoint { background-color: #ffffff; border: 3px solid $color2; border-radius: 0 5px 5px 5px; margin-top: 70px; margin-bottom: 50px; padding: 20px; position: relative; .sectionPoint-head { background-color: $color2; 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; } ul { padding-left: 30px; li { list-style: disc; } } } /* アコーディオンパネル --------------------------------------*/ .ac_list { @include mq() { @include flex(flex-start, ); flex-wrap: wrap; } .ac_item { box-shadow: $shadow; margin: 0 0 1%; @include mq() { width: 49%; } .ac_title { line-height: 1.4; width: 100%; cursor: pointer; @include flex(center, flex-start); width: 100%; max-width: 560px; background-color: $white; padding: 2rem 1.5rem; position: relative; @include mq('sm') { max-width: 100%; padding: 3rem 2rem; } @include mq('sm') { font-size: 1.8rem; } @include mq('lg') { font-size: 2rem; } &::after { //アイコン[矢印] content: " \f078"; color: #737373; font-family: "FontAwesome"; font-size: 1.6rem; position: absolute; top: 50%; right: 2rem; transform: translateY(-50%) rotate(0); transition: all.2.8s; } &.open::after { //矢印アイコンの回転 top: 55%; transform: translateY(-50%) rotate(180deg); transition: all.3s; } } .ac_contents { display: none; width: 100%; background-color: $white; padding: 0 1.5rem 2rem; box-sizing: border-box; position: relative; } } } //その他リスト #otherList { h2 { @extend .section-ttl; } .btn-wrapper { margin-top: 2rem; a { @extend .btn; max-width: 100%; padding: .5rem; background-color: $btn1; box-shadow: 0 5px 0 $btn1-shadow; &:hover { box-shadow: none; transform: translateY(5px); } } } } //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('md') { 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; } } } /* 3選記事ボトムコンテンツ --------------------------------------*/ .genreBottom { .content { max-width: 800px; @include mq('xxl') { max-width: 1200px } } 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; &: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; } } .btn { //ボタン margin-top: 2rem; margin-left: auto; @include mq('md') { margin-top: 3rem; } @include mq('xxl') { max-width: 100%; } } } } } /* 2カラムレイアウト --------------------------------------*/ .flex { @include mq('xl') { @include flex(normal, ); } } .contentsMain { //記事本文 width: 100%; max-width: 100%; @include mq('xl') { max-width: 750px; } } /* カテゴリー覧 --------------------------------------*/ .archive { .contentsMain { //記事本文 ul { li { margin-bottom: 3rem; background: $gray; padding: 10px; @include mq('sm') { margin-bottom: 6rem; } @include mq('md') { @include flex(normal, start); margin-bottom: 6rem; } .thumbnail { //記事のサムネイル画像 img { width: 100%; height: 250px; margin-bottom: 2rem; @include mq('lg') { margin-bottom: 0; width: 300px; } } } .text { //記事のテキスト部分 width: 100%; @include mq('md') { position: relative; padding: 3rem 0 3rem 3rem; } h3 { //記事のタイトル font-size: 2rem; line-height: 1.4; font-weight: bold; margin-bottom: 2rem; border-left: solid 8px $color3; padding-left: 10px; @include mq('md') { line-height: 1.5; font-size: 2; } } } } } } } .contentsSidebar { // サイドバー max-width: 100%; margin-top: 6rem; @include mq('xl') { display: block; max-width: 370px; margin: 0 0 0 3rem; } } .sidebarPost-wrapper { h4 { font-size: 2rem; color: $white; padding: 1rem; position: relative; background-color: $color3; i { margin-right: 1rem; } span { display: inline-block; padding-right: 3rem; } } ul { li { border-bottom: 2px dotted; padding: 0.7rem 1rem 0.5rem; a { display: block; position: relative; i { font-size: 10px; display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } } } } } .ac-list { margin: 0 0 2rem; } .ac-list.close { display: none; height: 0; visibility: hidden; } .ac-wrapper.close { .ac-title { position: relative; padding-right: 48px; font-size: 18px; margin-bottom: 1.5rem; @include mq() { position: relative; padding-right: auto; font-size: 2rem; } i:last-child { position: absolute; top: 50%; right: 1rem; transform: translateY(-50%); margin: 0; } } } .ac-wrapper .ac-title.open i:last-child::before { content: '\f068'; font-size: 2rem; font-weight: bold; font-family: 'Font Awesome 6 Free'; } /* 3選記事詳細の共通設定 --------------------------------------*/ .selections { .contentsMain .genreBox 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; } } .time { color: $black; i { color: $black; } } .read { padding: 2rem; border: 4px solid #D1F2FF; 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%; @include mq('xl') { display: flex; align-items: center; justify-content: space-between; flex-wrap: nowrap; 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; @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; color: $black; padding: 1rem; line-height: 1.3; font-weight: normal; margin-bottom: 3rem; background: inherit; @include mq('md') { font-size: 2.4rem; } } .caption { //特徴と会社名 text-align: center; h3 { color: $black; font-size: 2rem; @include mq() { font-size: 2.4rem; } span { display: block; font-size: 1.2rem; margin-bottom: 1rem; } } } } .strongBox { h3 { background: inherit; } } } /* 3選記事・おすすめ企業の共通設定- --------------------------------------*/ .strongBox, .pointBox, .reviews { margin-bottom: 3rem; @include mq() { margin-bottom: 6rem; } } .home { .pointBox { margin-bottom: 20px; } } .pointBox ul, .reviews ul { li { padding: 1.5rem; box-sizing: border-box; background-color: $white; margin-bottom: 3rem; border-radius: 5px; @include mq('md') { padding: 2rem; } &:last-child { margin-bottom: 0; } p { margin-bottom: 0; } .comment { margin-top: 5rem; &-ttl { font-size: 1.6rem; display: inline-block; background-color: $main; border-radius: 2px; padding: .5rem 1rem; box-sizing: border-box; color: $white; transform: translateY(-15px) rotate(-3deg); @include mq('md') { font-size: 2rem; } i { margin-right: .7rem; @include mq('md') { margin-right: 1rem; } } } } } } .pointBox ul li .ttl, .reviews ul li .ttl { font-size: 1.8rem; border-bottom: 2px dotted; 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: 3rem; text-align: right; a { color: blue; text-decoration: underline; } } /* 記事の詳細ページ共通設定 --------------------------------------*/ .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 { margin-top: 3rem; @include mq('md') { margin-top: 6rem; } p a { margin: 4rem auto; @include mq('md') { margin: 6rem auto; } } } } /* 関連記事 --------------------------------------*/ .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; } } } //3選記事に含まれる企業を非表示 .post-item-1325, .post-item-1328, .post-item-1330, #sitemap_list .cat-item.cat-item-7 ul li ul li { display: none; visibility: hidden; } /* 問合せページ ----------------------------------------------------------*/ .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; width: 199px; height: 50px; background: $btn2; box-shadow: 0 5px 0 $btn2-shadow; color: $white; text-align: center; margin-top: 3rem; transition: all.3s ease-in-out; border-radius: 10px; @include mq('md') { margin-top: 6rem; } &:hover { box-shadow: none; transform: translateY(5px); } } .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: 0rem; z-index: 9999; } .burgerBtn { position: relative; /*ボタン内側の基点となるためrelativeを指定*/ width: 68px; height: 68px; cursor: pointer; background-color: $main; } /*ボタン内側*/ .burgerBtn { span { display: inline-block; transition: all .4s; /*アニメーションの設定*/ position: absolute; left: 20px; height: 2px; border-radius: 2px; background: $white; &:nth-of-type(1) { top: 22px; width: 45%; } &:nth-of-type(2) { top: 32px; width: 35%; } &:nth-of-type(3) { top: 43px; width: 20%; } } &.active span:nth-of-type(1) { top: 26px; left: 23px; transform: translateY(6px) rotate(-135deg); width: 30%; } &.active span:nth-of-type(2) { opacity: 0; } &.active span:nth-of-type(3) { top: 38px; left: 23px; transform: translateY(-6px) rotate(135deg); width: 30%; } } .menu-content { width: 87vw; height: 100vh; position: fixed; top: 0%; left: -150%; z-index: 998; transition: all.2s ease-in-out; @include mq() { width: 56vw; } &.active { left: 0; transition: all.2s ease-in-out; } #menu-header-menu { margin: 0 auto; padding: 4rem 16vw; width: 100%; max-width: 653px; position: relative; @include mq() { padding: 4rem 6vw; } li { text-align: left; margin-bottom: 2rem; position: relative; &:after { font-family: 'Font Awesome 5 Free'; font-size: 15px; font-weight: 900; display: inline-block; position: absolute; top: 17px; left: -22px; color: $white; transform: translate(-50%, -50%); @include mq() { font-size: 18px; } } 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-header-menu li:not(:nth-child(1))::after { content: '\f518'; } #menu-header-menu li { &:nth-child(1)::after { content: '\f015'; } } /* 目次のレイアウト */ #toc_container { padding: 1.5rem; box-sizing: border-box; border-radius: 10px; margin: 0 auto 3rem; @include mq('md') { padding: 2rem; margin: 0 auto 6rem; } } .single #toc_container { background-color: #f5feff; border: dotted $main; } #toc_container .toc_title { font-size: 1.8rem; font-weight: bold; text-align: center; margin-bottom: 0; margin: 0; margin-bottom: 2rem; @include mq() { font-size: 2.2rem; } } #toc_container .toc_title:before { content: '\f0ca'; font-family: 'Font Awesome 5 Free'; font-size: 1.4rem; color: $black; width: 25px; height: 25px; padding: .5rem; margin-right: .5rem; border-radius: 50%; font-weight: 900; height: 100%; margin-top: 8px; @include mq() { font-size: 2rem; width: 30px; height: 30px; margin-right: .7rem; padding: 1rem; } } #toc_container .toc_list { width: 90%; margin: 0 auto; @include mq() { width: 80%; } @include mq('xl') { width: 70%; } } #toc_container .toc_list li { margin-bottom: 1rem; position: relative; } #toc_container .toc_list li:before { content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: 900; color: $main; position: absolute; top: 50%; transform: translateY(-50%); left: 0; } #toc_container .toc_list li a { font-size: 1.4rem; line-height: 1.4; padding-left: 1.5rem; @include mq() { font-size: 1.6rem; } } #toc_container .toc_list li a:hover { opacity: .7; text-decoration: underline; transition: all.3s; } // TOPページの目次 .home #toc_container { max-width: 800px; margin: 0 auto !important; .toc_inner { width: 95%; margin: 0 auto; @include mq() { width: 80%; } @include mq('lg') { width: 70%; } } .toc_title { position: relative; display: inline-block; background: linear-gradient(90deg, #b8b3ff, #6bffddd4 20%, #4280a9); background: -webkit-linear-gradient(0deg, #b8b3ff, #6bffddd4 20%, #4280a9); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-size: 2.2rem; @include flex(center, center); @include mq() { font-size: 2.7rem; margin-bottom: 6rem; } @include mq('lg') { font-size: 3.2rem; } &::before { color: $main; @include flex(center, center); width: 30px; height: 30px; padding: 0; @include mq() { width: 45px; height: 45px; } } small { font-size: 60%; margin-top: 5px; margin-left: 5px; color: $main; } } .toc_list { width: 85%; } .toc-link { a{ color: $main; } } .contents-subheading { font-size: 19px; font-weight: 700; margin-bottom: 1.5rem; position: relative; display: flex; counter-increment: number; a{ color: $main; } &::before { content: '0' counter(number); background-color: $main; font-size: 2rem; letter-spacing: 0.12em; color: $white; @include flex(center, center); width: 40px; min-height: 40px; height: 100%; margin-right: 1rem; border-radius: 30px; min-width: 4rem; padding-left: 2px; padding-bottom: 1px; } } } // 軸ページの目次 .single #toc_container { background-color: #f5feff; border: dotted $main; .contents-subheading { font-size: 19px; font-weight: 700; margin-bottom: 1.5rem; position: relative; display: flex; counter-increment: number; a{ color: $main; } &::before { content: '0' counter(number); background-color: $main; font-size: 2rem; letter-spacing: 0.12em; color: $white; @include flex(center, center); width: 40px; min-height: 40px; height: 100%; margin-right: 1rem; border-radius: 30px; min-width: 4rem; padding-left: 2px; padding-bottom: 1px; } } } /*-------------------------------- おすすめ関連記事 --------------------------------*/ .rl_post { ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); grid-gap: 3rem; margin-left: 0 !important; @include mq() { grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); } li { @include mq() { max-width: 500px; } &: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: $main; color: $white; padding: .5rem; font-size: 1rem; letter-spacing: .1em; position: absolute; top: 0; left: 0; } img, .noImg { width: 100%; height: 200px; object-fit: cover; object-position: center; transition: all .3s ease-in; @include mq() { height: 250px; } @include mq('lg') { height: 300px; } } .noImg { background-color: #ccc; @include flex(center, center); i { color: #fff; font-size: 6rem; } } } .text-wrap { padding: 1.5rem 0; h4 { font-size: 16px; line-height: 1.2; margin: 0; padding-left: 1rem; border-left: 5px solid $main; } } } } } } // タブでの切り替え #switch { @extend .content; @include flex(normal, ); overflow-x: auto; .switch-item { width: calc(100% / 5); min-width: 200px; padding: 1rem; border-radius: 5px 0 0 0; transition: all .3s ease-out; text-align: center; cursor: pointer; } .switch-item { background-color: #c4e0ff; color: #333; &.active { background-color: #1E40CA; color: #fff; } } } // タブ表示コンテンツ #tab { width: 100%; background-color: #f0efeb; .tab_inner { @extend .content; overflow-x: auto; padding: 4rem 3rem; } .tab-content { @include flex(); display: none; box-sizing: border-box; &.active { display: block; } } .tab_list { display: flex; .tab_item+.tab_item { margin-left: 2rem; } .tab_item { background-color: $white; padding: 3rem; box-sizing: border-box; border-radius: 15px; width: 400px; min-width: 400px; .text-wrap { min-height: 300px; } .tab_title { font-size: 2rem; font-weight: 700; letter-spacing: 0.15em; margin-bottom: 1rem; color: #1E40CA; } img, .noImg { width: 100%; height: 250px; object-fit: cover; margin-bottom: 2rem; } .tab_comment { font-size: 2rem; color: #1E40CA; min-height: 60px; line-height: 1.35; margin-bottom: 1rem; } p { min-height: 100px; } .tab_btn { background-color: #1E40CA; color: $white; border-radius: 30px; width: 100%; font-weight: 700; max-width: 100%; padding: 1rem; border: 2px solid #1E40CA; box-sizing: border-box; text-align: center; position: relative; transition: all .3s ease-out; &::before { content: '\f054'; font-size: 1.5rem; font-family: 'Font Awesome 5 Free'; font-weight: 600; position: absolute; top: 50%; right: 1.5rem; transform: translateY(-50%); } &:hover { background-color: $white; color: #1E40CA; transition: all .3s ease-out; } } } } } /* 230524新サイトマップページ用CSS */ .sitemap { &-home { display: block; position: relative; padding: 1rem 1rem 1rem 4rem; background: rgba($color2, 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: $color2; content: ""; } &: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: $color2; 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"; } } } } .footer-bg { background-color: #f5feff; .bg-gray { background-color: #f5feff!important; background-image: none; } } .common-parts { margin: 4rem 0rem; background: #f5feff; padding: 2rem; border: dotted $main; border-radius: 10px; } #company { .contentsMain { h3 { font-size: 20px; border-bottom: solid 4px $color2; background: #fff; border: solid 2px $color2; color: $color2; padding: 10px; position: relative; border-radius: 10px; text-align: center; display: inline-block; margin-top: 15px; &:before { content: ""; position: absolute; top: -8px; bottom: -8px; left: -8px; right: -8px; border: solid 2px $color2; z-index: -1; border-radius: 10px; } } } } .fa-hand-pointer:before { padding-right: 5px; } /*=================================== GENRE・AREA(ジャンル別・エリア別ページ) ====================================*/ .genre { .read { border: 3px solid $main; padding: 2rem; @include mq() { padding: 2.5rem; } } .genre-box { border: 3px solid $main; padding: 2rem 4vw; @include mq() { padding: 4rem 2.5rem; } .recommend-ttl_h3 { // 会社名 font-size: 2.5rem; font-weight: bold; margin-bottom: 2rem; line-height: 1.2; border-bottom: 2px dotted #333; padding-bottom: 10px; @include mq('xs') { font-size: 2.7rem; } @include mq('md') { @include flex(center, flex-start); font-size: 2.7rem; } @include mq('xl') { font-size: 3rem; min-height: 65px; } &::before { content:''; display: inline-block; background-image: url(img/houki.png); background-repeat: no-repeat; width: 53px; height: 58px; background-size: contain; vertical-align: middle; background-color: $gray; } } .recommend-ttl_h4 { font-size: 1.8rem; font-weight: bold; line-height: 1.4; padding: 1rem; width: 100%; margin-bottom: 2rem; color: $black; border-left: 15px solid $color2; @include mq('sm') { font-size: 2.2rem; } @include mq('lg') { font-size: 1.8rem; } } } }