//C2-24.1023
/*
variables(変数)
webフォント
Mixins
spフォント設定
common(ウェブサイト共通) >> セクション、リッチテキスト、CTA(共通パーツ)、リンク埋め込みパーツ、ブログ、サーチエリア、リンクリスト、検索結果、ページネーション
entry-list( 記事リストパーツ)
header・logo・navigations(ヘッダー・ロゴ・ナビゲーション)
main-visual(メインビジュアル)
breadcrumbs(パンくず)
button(ボタン)
heading(見出し)
article-post(ブログ用見出し)
main(コンテンツ) >> CTAを用いたパーツ、CTA内の基本設定、2カラム(CTA)、フォームフッター、デザインLPパーツ、カスタムパーツ、ユニバーサルクラス、フォームパーツ、
blog(ブログテンプレート)
カテゴリ・タグ自動生成ページ
side bar(サイドバー) >> カテゴリー、ランキング、カテゴリーアイコン
foot(フッター)
LP(フルカスタム用)
col空処理
編集画面用CSS(編集画面のみに効くCSS)
*/
/* --------------------------------
variables(変数)
----------------------------------- */
//フォント
$font_feature_settings:"palt" 1;
$font_family_awsm: "FontAwesome";
$font_family_awsm6: "Font Awesome 6 Free";
//既存フォント以外のフォントファミリー設定(使用しない場合は削除してください)
// #__next {
// --fo-heading-font-family: "Hiragino Kaku Gothic ProN", Meiryo, メイリオ, sans-serif;
// --fo-text-font-family: "Hiragino Kaku Gothic ProN", Meiryo, メイリオ, sans-serif;
// }
//hover用
$hover_opacity: .4;
//文字の太さ
$font_weight: bold;
//カラー
$border_color: #eee; //ボーダーカラー
$form_hissu_color: #c70909; //赤 フォームの「必須マーク」カラー
//ヘッダーロゴ
$header_logo: 300px; //PCでの幅サイズ(固定)
$header_sp_logo: 35px; //SPでの高さサイズ(maxサイズ)
//ボックスシャドウ
$box_shadow_common: 0 3px 8px var(--fo-shadow-color); //ボックスシャドウ
$navigation_box_shadow_common: 0 3px 8px rgba(#000,.1); //ナビゲーション専用
//角丸
$border_radius_common: 20px;
//メインビジュアル
$mv_padding: 40px 0; //PC時の上下余白
$sp_mv_padding: 30px 0 40px; //SP時の上下余白
$top_mv_height: 490px; //PC時の最低の高さ(SPはauto)
$sub_mv_height: 273px; //PC時の最低の高さ(SPはauto)
//見出し
$hd_font_strong: 400; //見出し用(編集画面の「.strong」に対応)
//ページ内リンクのずれ用
$inPage_link: 74px; //上部にあるコンテンツの高さ(PC)
$sp_inPage_link: 64px; //上部にあるコンテンツの高さ(SP)
//グロナビ PC
$header_bg_color: var(--fo-background-color1); //ヘッダー全体の背景色
$navigation_bg_color: $header_bg_color; //グロナビの背景色
$navigation_font_size: 14px; //グロナビのフォントサイズ(1〜3階層)
$navigation_font_weight: normal; //グロナビのフォントの太さ(1〜3階層) normal or bold
$navigation_hover_opacity: 1; //グロナビをホバーした時の透視度
$navigation_bg2_color: $navigation_bg_color; //グロナビの背景色(2階層以下)
$navigation_text_color: var(--fo-text-main-color); //グロナビのテキストカラー
$navigation_text2_color: $navigation_text_color; //グロナビのテキストカラー(2階層以下)
$navigation_hover_bg_color: #fff; //グロナビをホバーした時の背景色
$navigation_hover_bg2_color: var(--fo-main-color); //グロナビをホバーした時の背景色(2階層以下)
$navigation_hover_text_color: var(--fo-main-color); //グロナビをホバーした時のテキストカラー
$navigation_hover_text2_color: #fff; //グロナビをホバーした時のテキストカラー(2階層以下)
$navigation_arrow1_color: $navigation_text_color; //矢印カラー(1階層)
$navigation_arrow2_color: $navigation_arrow1_color; //矢印カラー(2階層)
//グロナビ ハンバーガーメニュー
$navigation_sp_font_size: 14px; //ハンバーガーメニュー(SP)時のテキストサイズ(1〜3階層)
$navigation_sp_font_weight: normal; //ハンバーガーメニュー(SP)時のテキストの太さ(1〜3階層) normal or bold
$navigation_sp_text_color: var(--fo-text-main-color); //ハンバーガーメニュー(SP)時のテキストカラー 1階層
$navigation_sp_text2_color: var(--fo-text-main-color); //ハンバーガーメニュー(SP)時のテキストカラー(2階層)
$navigation_sp_text3_color: var(--fo-text-main-color); //ハンバーガーメニュー(SP)時のテキストカラー(3階層)
$navigation_sp_hover_text_color: #fff; //ハンバーガーメニュー(SP)時のホバーした時の2階層のテキスト&矢印のカラー
$navigation_sp_arrow1_color: $navigation_sp_text_color; //ハンバーガーメニュー(SP) 矢印カラー(1階層)
$navigation_sp_arrow2_color: $navigation_sp_text2_color; //ハンバーガーメニュー(SP) 矢印カラー(2階層)
$navigation_sp_bg_color: var(--fo-main-color); //ハンバーガーメニュー(SP)時の背景色(1階層)
$navigation_sp_bg2_color: #fff; //ハンバーガーメニュー(SP)時の背景色(2階層)
$navigation_sp_bg3_color: #eee; //ハンバーガーメニュー(SP)時の背景色(3階層)
$navigation_sp_border-bottom: 1px dashed var(--fo-main-color); //ハンバーガーメニュー(SP)時のボーダー(hamburger_custom 使用時)
//見出しサイズ統一
$list_heading_pc_fontsize: 20px;
$list_heading_sp_fontsize: 20px;
//記事リストパーツ
$case_border_radius: 0; //画像の角丸
$case_title_letter_spacing: var(--fo-text-letter-spacing); //記事リストパーツのタイトル(h3) letter-spacing(文字間)
$case_title_font_family: inherit; //記事リスト内見出しのフォントファミリー(caseContent_style・news_list)
$case_date_font_family: inherit; //記事リスト内日付のフォントファミリー(caseContent_style・news_list)
$case_pagination_color: var(--fo-main-color); //記事リストパーツのページネーションカラー
$case_box_shadow_common: $box_shadow_common; //記事リストパーツ用( 0 0 3px #ddd;)
$case_img_fit_height: 200px; //caseContent_style画像のオプション(option_img_fit)の高さ(sp時も高さ維持)
$case_list_space: 12px; //caseContent_style記事間の余白
//news_list
$news_list_text_decoration: none; //見出しアンカーの下線の無有(news_list) underline or none
$news_list_hover_opacity: $hover_opacity; //見出しアンカーのhover時の不透明度(news_list)
//ブログ
$blog_title_fontsize: 20px; //ブログトップタグ・カテゴリ一覧とのタイトル(h2)フォントサイズ
$blog_border_radius: 0; //ブログ記事一覧画像の角丸
$blog_border_color: $border_color; //一覧のボーダーと人気記事ランキングのボーダーカラー
$blog_title_h1_fontsize_pc: 36px; //ブログ詳細h1見出しフォントサイズ(PC)
$blog_title_h1_fontsize_sp: 28px; //ブログ詳細h1見出しフォントサイズ(SP)
$blog_title_h2_fontsize_pc: 32px; //ブログ詳細h2見出しフォントサイズ(PC)
$blog_title_h2_fontsize_sp: 24px; //ブログ詳細h2見出しフォントサイズ(SP)
$blog_title_h3_fontsize_pc: var(--fo-h3-font-size-pc); //ブログ詳細h3見出しフォントサイズ(PC)
$blog_title_h3_fontsize_sp: var(--fo-h3-font-size-sp); //ブログ詳細h3見出しフォントサイズ(SP)
$blog_title_h4_fontsize_pc: var(--fo-h4-font-size-pc); //ブログ詳細h4見出しフォントサイズ(PC)
$blog_title_h4_fontsize_sp: var(--fo-h4-font-size-sp); //ブログ詳細h4見出しフォントサイズ(SP)
$blog_title_h5_fontsize_pc: var(--fo-h5-font-size-pc); //ブログ詳細h5見出しフォントサイズ(PC)
$blog_title_h5_fontsize_sp: var(--fo-h5-font-size-sp); //ブログ詳細h5見出しフォントサイズ(SP)
//フッター
$footer_bg_color: var(--fo-background-color2); //フッター全体の背景色
$copyright_bg_color: inherit; //コピーライトの背景色
$copyright_text_color: var(--fo-text-main-color); //コピーライトのテキストカラー
$copyright_text_fontsize: 12px; //コピーライトのフォントサイズ
//その他
$max_width: 1240px; //コンテンツ幅調整用
/*------------- variables(変数)END -------------*/
/* --------------------------------
webフォント
----------------------------------- */
/*--- Web fonts ---*/
//Awesome Font 6
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css");
//Awesome Font
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css");
/*------------- webフォント END -------------*/
/*----------------------------------
Mixins
----------------------------------*/
@mixin breakpoint-ssp {
@media screen and (max-width: 576px) {
@content;
}
}
@mixin breakpoint-sp {
@media screen and (max-width: 769px) {
@content;
}
}
@mixin breakpoint-msp {
@media screen and (max-width: 834px) {
@content;
}
}
@mixin breakpoint-tb {
@media screen and (min-width: 577px) and (max-width: 769px) {
@content;
}
}
@mixin breakpoint-pro_s {
@media screen and (min-width: 770px) and (max-width: 834px) {
@content;
}
}
@mixin breakpoint-pro {
@media screen and (min-width: 770px) and (max-width: 1024px) {
@content;
}
}
@mixin breakpoint-pc {
@media screen and (min-width: 770px) {
@content;
}
}
////タグ・カテゴリー 設定
//タグスタイルコントロール
@mixin tag_custom {
background-color: var(--fo-tag-background-color);
font-size: 12px;
line-height: 1.2;
letter-spacing: normal;
color: var(--fo-tag-text-color);
border: 1px solid var(--fo-tag-border-color,var(--fo-tag-background-color));
border-radius: var(--fo-tag-border-radius);
margin: 5px 10px 5px 0;
padding: 5px 15px;
&:hover {
opacity: $hover_opacity;
}
}
//タグアイコンコントロール
@mixin tag_icon_custom {
content: var(--fo-tag-fa-unicode,none);
font-family: $font_family_awsm;
margin-right: 5px;
}
//カテゴリーアイコンコントロール
@mixin category_icon_custom {
content: "\f115"; //f0c9
font-family: $font_family_awsm;
color: var(--fo-main-color);
margin-right: 5px;
}
////タグ・カテゴリー 設定 end
//ブログ見出し
@mixin hd_blog {
:is(h1,h2,h3,h4,h5) {
font-family: var(--fo-heading-font-family);
font-weight: 700;
line-height: var(--fo-heading-line-height);
letter-spacing: var(--fo-heading-letter-spacing);
color: var(--fo-heading-main-color);
@include breakpoint-sp {
overflow-wrap: break-word;
}
}
h1 {
@include breakpoint-pc {
font-size: $blog_title_h1_fontsize_pc;
}
@include breakpoint-sp {
font-size: $blog_title_h1_fontsize_sp;
}
}
h2 {
@include breakpoint-pc {
font-size: $blog_title_h2_fontsize_pc;
}
@include breakpoint-sp {
font-size: $blog_title_h2_fontsize_sp;
}
}
h3 {
border-color: $border_color;
@include breakpoint-pc {
font-size: $blog_title_h3_fontsize_pc;
}
@include breakpoint-sp {
font-size: $blog_title_h3_fontsize_sp;
}
}
h4 {
@include breakpoint-pc {
font-size: $blog_title_h4_fontsize_pc;
}
@include breakpoint-sp {
font-size: $blog_title_h4_fontsize_sp;
}
}
h5 {
@include breakpoint-pc {
font-size: $blog_title_h5_fontsize_pc;
}
@include breakpoint-sp {
font-size: $blog_title_h5_fontsize_sp;
}
}
.strong {
font-weight: 400;
}
}
//ブログ見出し end
//.page_top_rowスタイルコントロール
@mixin page_top {
min-height: unset;
:is(.col,.cta-column) {
padding: 0;
.component {
&.image {
width: auto;
position: fixed;
right: 0;
bottom: 0;
z-index: 1000;
margin: 0;
img {
width: 60px !important;
}
}
}
}
}
//編集画面用
@mixin edit-page_top {
:is(.col,.cta-column) {
.component {
&.image {
position: static;
width: 100%;
margin: 10px 0;
outline: 1px dotted #0987d4;
&::before {
content: "↑ 公開ページでは右下に固定されます ↑";
display: inline-block;
text-align: center;
background: #0987d4;
font-size: 12px;
color: #fff;
position: absolute;
right: 0;
top: calc(100% - 9px);
left: 0;
z-index: 1;
padding: 5px;
}
}
}
}
}
//.page_top_row 設定 end
//.foot-copyrightスタイルコントロール
@mixin copyright_custom {
display: flex;
justify-content: center;
align-items: center;
background: $copyright_bg_color;
height: 60px;
margin: 0;
padding: 0;
@include breakpoint-sp {
padding: 0 70px 0 10px;
}
@include breakpoint-tb {
padding: 0;
}
p {
font-size: $copyright_text_fontsize;
letter-spacing: var(--fo-text-letter-spacing);
line-height: 1.3;
color: $copyright_text_color;
margin: 0;
}
}
//.foot-copyright一括修正 end
//検索結果画面コンテンツ幅統一用
@mixin search_container {
max-width: $max_width;
margin: auto;
padding: 0 20px;
}
//編集画面用CSS
@mixin edit-page {
.frame-root .frame-content {
@content;
}
}
//セクション余白
@mixin sectionSpace($padding:none) {
@if($padding == none) {}
@else if($padding > 0) {
@include breakpoint-pc {
padding: calc(#{$padding} * var(--fo-spacing-coef) - 30px) 0 calc(#{$padding} * var(--fo-spacing-coef) - 40px);
}
@include breakpoint-sp {
padding: calc(#{$padding} * var(--fo-spacing-coef) * .75 - 30px) 0;
}
}
}
//ボタン(1~3)
@mixin btn_custom($btn) {
&:is(.size-s,.size-m,.size-l) {
display: inline-flex;
align-items: center;
justify-content: center;
background: var(--fo-button#{$btn}-background) -1px/calc(100% + 2px);
box-sizing: border-box;
font-family: var(--fo-text-font-family);
color: var(--fo-button#{$btn}-text-color);
text-decoration: none;
text-align-last: left;
letter-spacing: var(--fo-text-letter-spacing);
line-height: var(--fo-text-line-height);
border: 1px solid var(--fo-button#{$btn}-border-color,transparent);
border-radius: var(--fo-button#{$btn}-border-radius);
box-shadow: $box_shadow_common;
}
&.size-s {
min-width: var(--fo-button-small-min-width-pc);
font-size: var(--fo-button-small-font-size);
padding: 6.75px 20px;
@include breakpoint-sp {
min-width: var(--fo-button-small-min-width-sp);
width: auto;
}
@include breakpoint-tb {
min-width: var(--fo-button-small-min-width-pc);
}
}
&.size-m {
min-width: var(--fo-button-medium-min-width-pc);
font-size: var(--fo-button-medium-font-size);
padding: 13.5px 20px;
@include breakpoint-sp {
width: auto;
min-width: var(--fo-button-medium-min-width-sp);
}
@include breakpoint-tb {
min-width: var(--fo-button-medium-min-width-pc);
}
}
&.size-l {
min-width: var(--fo-button-large-min-width-pc);
font-size: var(--fo-button-large-font-size);
padding: 17.5px 20px;
@include breakpoint-sp {
width: var(--fo-button-large-min-width-sp);
min-width: auto;
}
@include breakpoint-tb {
width: auto;
min-width: var(--fo-button-large-min-width-pc);
}
}
&:hover {
opacity: var(--fo-button#{$btn}-hover-opacity,1);
scale: var(--fo-button#{$btn}-hover-scale,1);
//反転
background: var(--fo-button#{$btn}-hover-background-color,var(--fo-button#{$btn}-background)) -1px/calc(100% + 2px);
color: var(--fo-button#{$btn}-hover-text-color,var(--fo-button#{$btn}-text-color));
border: 1px solid var(--fo-button#{$btn}-hover-border-color, var(--fo-button#{$btn}-border-color, transparent));
}
}
//flex
@mixin flex-setting($gap:null,$direction:null,$wrap:null,$justify-content:null,$align-items:null,$device:all) {
@if($device == all) {
display : flex;
gap: $gap;
flex-direction : $direction;
flex-wrap : $wrap;
justify-content : $justify-content;
align-items : $align-items;
}
@else if($device == pc) {
@include breakpoint-pc {
display : flex;
gap: $gap;
flex-direction : $direction;
flex-wrap : $wrap;
justify-content : $justify-content;
align-items : $align-items;
}
}
@else if($device == sp) {
@include breakpoint-sp {
display : flex;
gap: $gap;
flex-direction : $direction;
flex-wrap : $wrap;
justify-content : $justify-content;
align-items : $align-items;
}
}
}
//gap
@mixin flex-gap ($gap:20px,$device:all) {
@if($device == all) {
gap: calc(#{$gap} * var(--fo-spacing-coef));
@include breakpoint-sp {
gap: calc((#{$gap} * var(--fo-spacing-coef)) * .75);
}
}
@else if($device == pc) {
@include breakpoint-pc {
gap: calc(#{$gap} * var(--fo-spacing-coef));
}
}
@else if($device == sp) {
@include breakpoint-sp {
gap: calc(#{$gap} * var(--fo-spacing-coef));
}
}
}
//padding
@mixin padding-All($paddingTop:20px,$paddingRight:20px,$paddingBottom:20px,$paddingLeft:20px,$device:all) {
@if($device == all) {
@include breakpoint-pc {
padding: calc(#{$paddingTop} * var(--fo-spacing-coef)) calc(#{$paddingRight} * var(--fo-spacing-coef)) calc(#{$paddingBottom} * var(--fo-spacing-coef)) calc(#{$paddingLeft} * var(--fo-spacing-coef));
}
@include breakpoint-sp {
padding: calc((#{$paddingTop} * var(--fo-spacing-coef)) * .75) calc((#{$paddingRight} * var(--fo-spacing-coef)) * .75) calc((#{$paddingBottom} * var(--fo-spacing-coef)) * .75) calc((#{$paddingLeft} * var(--fo-spacing-coef)) * .75);
}
}
@else if($device == pc) {
@include breakpoint-pc {
padding: calc(#{$paddingTop} * var(--fo-spacing-coef)) calc(#{$paddingRight} * var(--fo-spacing-coef)) calc(#{$paddingBottom} * var(--fo-spacing-coef)) calc(#{$paddingLeft} * var(--fo-spacing-coef));
}
}
@else if($device == sp) {
@include breakpoint-sp {
padding: calc(#{$paddingTop} * var(--fo-spacing-coef)) calc(#{$paddingRight} * var(--fo-spacing-coef)) calc(#{$paddingBottom} * var(--fo-spacing-coef)) calc(#{$paddingLeft} * var(--fo-spacing-coef));
}
}
}
//padding 一方向
@mixin padding-property($property:top,$value:20px,$device:all) {
@if($device == all) {
@include breakpoint-pc {
padding-#{$property}: calc(#{$value} * var(--fo-spacing-coef));
}
@include breakpoint-sp {
padding-#{$property}: calc((#{$value} * var(--fo-spacing-coef)) * .75);
}
}
@else if($device == pc) {
@include breakpoint-pc {
padding-#{$property}: calc(#{$value} * var(--fo-spacing-coef));
}
}
@else if($device == sp) {
@include breakpoint-sp {
padding-#{$property}: calc(#{$value} * var(--fo-spacing-coef));
}
}
}
//padding上下左右
@mixin padding-yx($paddingY:20px,$paddingX:20px,$device:all) {
@if($device == all) {
@include breakpoint-pc {
padding: calc(#{$paddingY} * var(--fo-spacing-coef)) calc(#{$paddingX} * var(--fo-spacing-coef));
}
@include breakpoint-sp {
padding: calc((#{$paddingY} * var(--fo-spacing-coef)) * .75) calc((#{$paddingX} * var(--fo-spacing-coef)) * .75);
}
}
@else if($device == pc) {
@include breakpoint-pc {
padding: calc(#{$paddingY} * var(--fo-spacing-coef)) calc(#{$paddingX} * var(--fo-spacing-coef));
}
}
@else if($device == sp) {
@include breakpoint-sp {
padding: calc(#{$paddingY} * var(--fo-spacing-coef)) calc(#{$paddingX} * var(--fo-spacing-coef));
}
}
}
//margin上下
@mixin margin-y($marginTop:20px,$marginBottom:20px,$device:all) {
@if($device == all) {
@include breakpoint-pc {
margin: unquote('max(calc(#{$marginTop} * var(--fo-spacing-coef)),0px)') auto unquote('max(calc(#{$marginBottom} * var(--fo-spacing-coef)),0px)');
}
@include breakpoint-sp {
margin: unquote('max(calc((#{$marginTop} * var(--fo-spacing-coef)) * .75),0px)') auto unquote('max(calc((#{$marginBottom} * var(--fo-spacing-coef)) * .75),0px)');
}
}
@else if($device == pc) {
@include breakpoint-pc {
margin: unquote('max(calc(#{$marginTop} * var(--fo-spacing-coef)),0px)') auto unquote('max(calc(#{$marginBottom} * var(--fo-spacing-coef)),0px)');
}
}
@else if($device == sp) {
@include breakpoint-sp {
margin: unquote('max(calc(#{$marginTop} * var(--fo-spacing-coef)),0px)') auto unquote('max(calc(#{$marginBottom} * var(--fo-spacing-coef)),0px)');
}
}
}
//margin一方向
@mixin margin-property($property:top,$value:20px,$device:all) {
@if($device == all) {
@include breakpoint-pc {
margin-#{$property}: unquote('max(calc(#{$value} * var(--fo-spacing-coef)),0px)');
}
@include breakpoint-sp {
margin-#{$property}: unquote('max(calc((#{$value} * var(--fo-spacing-coef)) * .75),0px)');
}
}
@else if($device == pc) {
@include breakpoint-pc {
margin-#{$property}: unquote('max(calc(#{$value} * var(--fo-spacing-coef)),0px)');
}
}
@else if($device == sp) {
@include breakpoint-sp {
margin-#{$property}: unquote('max(calc(#{$value} * var(--fo-spacing-coef)),0px)');
}
}
}
//見出し用margin-bottom
@mixin heading-marginBottom($marginBottom:60px,$device:all) {
@if($device == all) {
@include breakpoint-pc {
margin-bottom: unquote('max(calc((#{$marginBottom} * var(--fo-spacing-coef)) - 20px),0px)');
}
@include breakpoint-sp {
margin-bottom: unquote('max(calc((#{$marginBottom} * var(--fo-spacing-coef)) * .75),0px)');
}
}
@else if($device == pc) {
@include breakpoint-pc {
margin-bottom: unquote('max(calc(#{$marginBottom} * var(--fo-spacing-coef)),0px)');
}
}
@else if($device == sp) {
@include breakpoint-sp {
margin-bottom: unquote('max(calc(#{$marginBottom} * var(--fo-spacing-coef)),0px)');
}
}
}
//隣接要素のmargin
@mixin adjacentMargin($className:row,$marginTop:46px,$device:all) {
& + .#{$className} {
@if($device == all) {
@include breakpoint-pc {
margin-top: unquote('max(calc(#{$marginTop} * var(--fo-spacing-coef)),0px)');
}
@include breakpoint-sp {
margin-top: unquote('max(calc((#{$marginTop} * var(--fo-spacing-coef)) * .75),0px)');
}
}
@else if($device == pc) {
@include breakpoint-pc {
margin-top: unquote('max(calc(#{$marginTop} * var(--fo-spacing-coef)),0px)');
}
}
@else if($device == sp) {
@include breakpoint-sp {
margin-top: unquote('max(calc(#{$marginTop} * var(--fo-spacing-coef)),0px)');
}
}
}
}
//テーマ出力
@mixin theme-fo-base {
.theme-fo-base {
.wrapper {
.contents {
:is(section,section[data-designpart-id]) {
@content;
}
}
}
}
}
/*------------- Mixins END -------------*/
/* --------------------------------
spフォント設定
----------------------------------- */
.component {
:is(
.font-size-20px,
[style*="font-size:20px;"]
)
{
@include breakpoint-sp {
font-size: 18px !important;
}
}
:is(
.font-size-22px,
[style*="font-size:22px;"]
) {
@include breakpoint-sp {
font-size: 20px !important;
}
}
:is(
.font-size-24px,
.font-size-26px,
[style*="font-size:24px;"],
[style*="font-size:26px;"]
) {
@include breakpoint-sp {
font-size: 22px !important;
}
}
:is(
.font-size-28px,
.font-size-30px,
[style*="font-size:28px;"],
[style*="font-size:30px;"]
) {
@include breakpoint-sp {
font-size: 24px !important;
}
}
:is(
.font-size-32px,
.font-size-34px,
.font-size-36px,
[style*="font-size:32px;"],
[style*="font-size:34px;"],
[style*="font-size:36px;"]
) {
@include breakpoint-sp {
font-size: 26px !important;
}
}
:is(
.font-size-38px,
.font-size-42px,
.font-size-46px,
[style*="font-size:38px;"],
[style*="font-size:42px;"],
[style*="font-size:46px;"]
) {
@include breakpoint-sp {
font-size: 28px !important;
}
}
:is(
.font-size-50px,
.font-size-54px,
[style*="font-size:50px;"],
[style*="font-size:54px;"],
) {
@include breakpoint-sp {
font-size: 32px !important;
}
}
:is(
.font-size-60px,
.font-size-66px,
.font-size-72px,
[style*="font-size:60px;"],
[style*="font-size:66px;"],
[style*="font-size:72px;"]
) {
@include breakpoint-sp {
font-size: 36px !important;
}
}
:is(
.font-size-78px,
.font-size-86px,
.font-size-94px,
[style*="font-size:78px;"],
[style*="font-size:86px;"],
[style*="font-size:94px;"]
) {
@include breakpoint-sp {
font-size: 40px !important;
}
}
}
/*------------- spフォント設定 END -------------*/
/* --------------------------------
common(ウェブサイト共通)
----------------------------------- */
//ドラックカラー
::selection {
background: color-mix(in srgb, var(--fo-accent-color) 50%, transparent);
}
//sticky解放用
.theme-fo-base {
&:has(.lp_sticky_sec) {
overflow: initial;
.wrapper {
.contents {
section {
overflow: hidden;
}
}
}
}
}
//SP時のリンクタップの色を削除&下線削除
:is(.navi-001-01,.navi-002-01,.theme-fo-base) {
font-family: var(--fo-text-font-family);
font-feature-settings: $font_feature_settings;
a {
transition: unset;
-webkit-tap-highlight-color:rgba(0,0,0,0);
}
:visited {
text-decoration: none;
}
:link {
text-decoration: none;
}
}
//画像のhover一括設定
:is(.navi-001-01,.navi-002-01) {
header {
.inner {
a[href] {
img {
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
}
.theme-fo-base {
.main-visual {
.component {
a {
img {
&:hover {
opacity: 1;
}
}
}
a[href] {
img {
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
.wrapper {
.contents {
section {
a {
img {
&:hover {
opacity: 1;
}
}
}
a[href] {
img {
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
.side {
.inner {
.component {
a {
img {
&:hover {
opacity: 1;
}
}
}
a[href] {
img {
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
}
}
.foot {
.foot-cont {
.component {
a {
img {
&:hover {
opacity: 1;
}
}
}
a[href] {
img {
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
}
}
/*- セクションパーツ -*/
//セクション余白
// ()内に指定したいサイズを入れると適用されます。例:(100px)
// ()内に数値が入ってない場合は適用されません。(デフォルト設定)
section[data-designpart-id]:not(:root:root:root:root) {
@include sectionSpace();
}
//コンテンツ幅
@include theme-fo-base {
.inner {
max-width: $max_width;
}
}
/*--- リッチテキストパーツ ---*/
.component {
&.richtext {
:link {
text-decoration: none;
}
:visited {
text-decoration: none;
}
//リスト
li {
font-size: inherit;
a {
font-size: inherit;
}
}
//表
table {
border: none;
&[align="center"] {
margin: auto;
}
:is(thead,tbody,tr,th,td) {
border-color: $border_color;
tr {
:is(th,td) {
background-clip: padding-box; //FF,edgeでボーダー消える現象回避;
position: static; //FF,edgeでボーダー消える現象回避;
p {
font-size: inherit;
& + p {
margin-top: 10px !important;
}
}
:is(ul,ol) {
margin-left: 25px;
}
}
}
}
}
.normal-table {
&::after {
content: "";
display: table;
clear: both;
}
}
.table-with-row-header {
&::after {
content: "";
display: table;
clear: both;
}
}
.table-with-two-headers {
overflow: auto;
&::after {
content: "";
display: table;
clear: both;
}
}
.component {
&.button:not(:root) {
.button-cont {
a {
&.blue {
background: #254a73;
color: #fff !important;
text-decoration: none;
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
}
//sp時右寄せ
&.sp_r {
@include breakpoint-sp {
text-align: right !important;
}
:is(p,.rich-text-normal,.align-center,.align-right) {
@include breakpoint-sp {
text-align: right !important;
}
}
}
//sp中央寄せ
&.sp_c {
@include breakpoint-sp {
text-align: center !important;
}
:is(p,.rich-text-normal,.align-center,.align-right) {
@include breakpoint-sp {
text-align: center !important;
}
}
}
//sp時左寄せ
&.sp_l {
@include breakpoint-sp {
text-align: left !important;
}
:is(p,.rich-text-normal,.align-center,.align-right) {
@include breakpoint-sp {
text-align: left !important;
}
}
}
}
}
/*--- 区切り線パーツ ---*/
.theme-fo-base {
:is(.main-visual,.wrapper .contents,.foot ) {
.component {
&.border {
hr {
&.type01 {
background-image: -webkit-linear-gradient(left, transparent, $border_color, transparent);
}
&:is(.type02,.type03,.type04) {
border-color: $border_color;
}
}
}
}
}
}
/*--- CTA(共通パーツ)---*/
.component {
&.cta {
.cta-row {
display: table;
table-layout: fixed;
width: 100%;
margin: 0;
@include breakpoint-sp {
display: block;
}
& + .cta-row {
@include breakpoint-pc {
padding-top: 10px;
}
}
.cta-column {
display: table-cell;
vertical-align: top;
margin: 0;
@include breakpoint-sp {
display: block;
width: 100% !important;
}
}
}
}
}
/*--- リンク埋め込みパーツ---*/
.component {
// ページ
&.link-embed {
.article-embed {
.quote-link {
&:hover {
opacity: $hover_opacity;
}
.quote-link_entry {
.quote-link-img {
.quote-link-img-item {
img {
height: 150px;
position: static;
object-fit: cover;
&:hover {
opacity: 1;
}
}
}
}
.cont {
:is(.quote-link_title,.quote-link_desp,.quote-link_site) {
p {
color: var(--fo-text-main-color);
}
}
}
}
}
}
}
//ブログ
&.richtext {
.article-embed[data-embed-type="url"] {
.quote-link {
.quote-link_entry {
.quote-link-img {
.quote-link-img-item {
background-position: center;
}
}
.cont {
.quote-link_desp {
margin-bottom: 10px;
}
}
}
}
}
}
}
/*------- サーチエリア --------*/
.component {
&.search {
.search-cont {
input[type=search] {
-webkit-appearance: none;
border-radius: 0;
font-family: inherit !important;
font-size: 16px;
height: 40px;
outline: unset;
&::placeholder {
font-family: inherit !important;
color: rgba(0,0,0,.3);
}
&:focus {
background-color: #fff;
color: #555;
border-color: #5a5a5a;
}
}
input[type=submit] {
padding: 13px 10px;
}
}
}
}
/*------- リンクリスト --------*/
.component {
&.list {
&.vertical {
ul {
li {
a {
&:hover {
background: rgba(#ccc,.15);
}
}
}
}
}
}
}
//検索結果カラム余白調整
.theme-fo-base {
.wrapper {
//1カラム用
&.none {
.contents {
& > .component {
&.search {
margin: 50px auto;
}
}
}
}
//2カラム
&:is(.side-right,.side-left) {
.contents {
& > .component {
&.search {
margin: 20px auto 50px;
}
}
}
}
//3カラム
&.side-both {
.contents {
& > .component {
&.search {
margin: 10px auto 50px;
}
}
}
}
}
}
//検索結果画面
.theme-fo-base {
.wrapper {
.contents {
& > .component {
&.search {
@include search_container;
& + .entry-list {
padding-bottom: 25px;
.entry-list-unit {
border-bottom: 1px solid $border_color;
margin: 10px 0;
padding: 10px 0;
@include breakpoint-pc {
display: flex;
}
.img {
@include breakpoint-pc {
width: 30%;
padding: 0 0 10px 0;
}
@include breakpoint-sp {
padding-bottom: 10px;
}
img {
border-radius: $case_border_radius;
&:hover {
opacity: $hover_opacity;
}
}
}
.cont {
border-left: 0;
@include breakpoint-pc {
width: 70%;
padding: 0 10px 10px;
}
h3 {
@include breakpoint-sp {
padding: 0;
}
a {
font-family: var(--fo-heading-font-family);
font-size: $list_heading_pc_fontsize;
color: var(--fo-heading-main-color);
line-height: var(--fo-heading-line-height);
letter-spacing: var(--fo-heading-letter-spacing);
padding: 0 10px;
@include breakpoint-sp {
font-size: $list_heading_sp_fontsize;
padding: 0;
}
&:hover {
text-decoration: none;
opacity: $hover_opacity;
}
}
}
h4 {
color: var(--fo-text-main-color);
padding: 0 10px;
@include breakpoint-sp {
padding: 0;
}
}
p {
font-size: var(--fo-text-font-size-pc);
letter-spacing: var(--fo-text-letter-spacing);
line-height: var(--fo-text-line-height);
color: var(--fo-text-main-color);
@include breakpoint-sp {
font-size: var(--fo-text-font-size-sp);
padding: 0;
}
}
}
}
.row {
.text-center {
padding-top: 30px;
}
}
}
}
}
.component {
&.search {
& + h1 {
font-family: var(--fo-heading-font-family);
font-size: $list_heading_pc_fontsize;
color: var(--fo-heading-main-color);
line-height: var(--fo-heading-line-height);
letter-spacing: var(--fo-heading-letter-spacing);
@include search_container;
@include breakpoint-sp {
font-size: $list_heading_sp_fontsize;
}
}
& + h1 + p {
font-size: var(--fo-text-font-size-pc);
letter-spacing: var(--fo-text-letter-spacing);
line-height: var(--fo-text-line-height);
color: var(--fo-text-main-color);
@include search_container;
@include breakpoint-sp {
font-size: var(--fo-text-font-size-sp);
}
}
& + h1 + p + .entry-list {
margin-bottom: 50px;
}
}
}
.entry-list {
.row-none {
@include search_container
}
}
}
}
}
/*------- ページネーション部分 通常ページ ブログ共通仕様 --------*/
.entry-list {
.pagination {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 5px 10px;
line-height: 0;
padding-bottom: 0;
li {
color: var(--fo-main-color);
margin: 0;
a {
color: var(--fo-main-color);
border: 1px solid var(--fo-main-color);
background: #fff;
}
&.active > a {
background: var(--fo-main-color);
color: #fff;
}
&:hover > a {
opacity: $hover_opacity;
}
}
}
}
/*--- アイコンパーツ ---*/
//デフォルトのCSSが5なので表示されないアイコンがあるため
i:is(.fa,.far,.fas) {
font-family: $font_family_awsm6;
font-family: $font_family_awsm;
}
/*--- カルーセルパーツ ---*/
.component {
&.carousel {
.flexslider {
.flex-control-paging {
li {
a {
background: #eee;
box-shadow: none;
&.flex-active {
background: var(--fo-main-color);
}
}
}
}
.flex-direction-nav {
:is(.flex-next,.flex-prev) {
color: var(--fo-main-color);
}
}
}
}
}
/*------------- common(ウェブサイト共通)END -------------*/
/*----------------------------------
entry-list( 記事リストパーツ)
----------------------------------*/
/*--- 記事リストパーツ ---*/
//デフォルト
//テーマの崩れを修正・基本ここは触らない。
.component {
&.entry-list {
.entry-list-unit {
& + .entry-list-unit {
@include breakpoint-sp {
margin: 10px auto 0;
}
}
.cont {
@include breakpoint-sp {
border: none;
}
h3 {
max-height: none;
line-height: normal;
@include breakpoint-sp {
padding: 0;
}
a {
font-family: var(--fo-heading-font-family);
font-size: $list_heading_pc_fontsize;
color: var(--fo-heading-main-color);
line-height: var(--fo-heading-line-height);
letter-spacing: var(--fo-heading-letter-spacing);
@include breakpoint-sp {
font-size: $list_heading_sp_fontsize;
}
&:hover {
opacity: $hover_opacity;
}
}
}
h4 {
font-size: var(--fo-text-font-size-pc);
letter-spacing: var(--fo-text-letter-spacing);
color: var(--fo-text-main-color);
}
p {
&.category {
a {
&:hover {
opacity: $hover_opacity;
}
}
}
&.description {
max-height: none;
font-size: var(--fo-text-font-size-pc);
letter-spacing: var(--fo-text-letter-spacing);
line-height: var(--fo-text-line-height);
color: var(--fo-text-main-color);
@include breakpoint-sp {
font-size: var(--fo-text-font-size-sp);
margin: 10px 0;
padding: 0;
}
}
}
}
}
//カード型
&:is(
.entry-image-card-1-col,
.entry-image-card-2-col,
.entry-image-card-3-col
) {
.article-list {
.entry-list-unit {
.img {
@include breakpoint-sp {
padding-right: 0;
}
}
.cont {
h3 {
a {
@include breakpoint-pc {
padding: 0 !important;
}
}
}
h4 {
margin: 10px 0;
@include breakpoint-pc {
padding: 0 !important;
}
}
p {
&.category {
margin: 10px 0 10px 3px;
}
}
div {
&.tags {
margin: 0 0 5px;
padding: 0;
}
}
}
}
}
}
//リスト型・スタイル選択
.entry-list-unit {
border-bottom: 1px solid $blog_border_color !important;
.img {
@include breakpoint-pc {
padding-right: 25px;
}
}
.cont {
a {
&:hover {
text-decoration: none;
}
}
//タイトル
h3 {
a {
@include breakpoint-pc {
padding: 0 10px;
}
}
}
h4 {
padding: 0 10px;
@include breakpoint-sp {
padding: 0;
}
}
p {
&.category {
margin: 10px;
@include breakpoint-sp {
padding-left: 0;
}
}
&.description {}
}
//記事リスト共通 タグ
div {
&.tags {
display: flex;
gap: 5px 10px;
flex-wrap: wrap;
margin: 16px 10px 10px;
padding: 0 10px;
@include breakpoint-sp {
margin: 16px 0 10px;
padding: 0;
}
a {
&.tag {
margin: 0;
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
}
}
}
}
//サイドバー時
.side {
.component {
&.entry-list {
.entry-list-unit {
.img {
padding-right: 0;
}
}
}
}
}
.article-per-page {
&:empty {
margin-top: 0;
}
}
//デザインパーツ
// .component {
// &:not(:root:root:root:root) {
// &.entry-list[data-designpart-id] {
// }
// }
// }
//デフォルトパーツ
.component {
&.entry-list {
//事例
&.caseContent_style {
.article-list {
.entry-list-unit {
background: var(--fo-background-color1);
padding: 20px 20px 10px;
border-bottom: 1px solid $blog_border_color;
@include breakpoint-sp {
width: 100%;
}
a {
&.img {
img {
border-radius: $case_border_radius;
}
}
}
.cont {
h3 {
a {
&:hover {
opacity: $hover_opacity;
}
}
}
h4 {
font-family: $case_date_font_family;
}
p {
&.category {
i {
display: none;
}
a {
color: var(--fo-tag-text-color);
&::before {
@include category_icon_custom;
}
&:hover {
opacity: $hover_opacity;
}
}
}
&.description {
margin: 10px;
@include breakpoint-pc {
padding: 0 10px;
}
@include breakpoint-sp {
margin: 10px 0;
padding-left: 0;
}
}
}
div {
&.tags {
a.tag {
@include tag_custom;
&::before {
@include tag_icon_custom;
}
i {
display: none;
}
&:last-child {
margin-right: 0;
}
}
}
}
}
}
}
&:is(
.entry-image-card-1-col,
.entry-image-card-2-col,
.entry-image-card-3-col
) {
.article-list {
display: flex !important;
flex-wrap: wrap;
gap: $case_list_space;
@include breakpoint-sp {
gap: 20px;
}
.entry-list-unit {
box-shadow: $case_box_shadow_common;
border: 0;
margin: 0 !important;
a {
&.img {
max-height: none;
}
}
.cont {
border-left: none;
padding-top: 10px;
h3 {}
h4 {}
p {
&.category {}
&.description {
margin: 10px 0;
@include breakpoint-pc {
padding: 0;
}
}
}
div {
&.tags {
@include breakpoint-sp {
margin: 10px 0;
}
}
}
}
}
.article-per-page {
width: 100%;
margin-top: 8px;
&:empty {
display: none;
margin-top: 0;
}
}
}
}
//カード型1列
&.entry-image-card-1-col {
.article-list {
.entry-list-unit {
width: 100%;
a {}
.cont {}
}
}
}
//カード型2列
&.entry-image-card-2-col {
.article-list {
.entry-list-unit {
@include breakpoint-pc {
width: calc((100% - #{$case_list_space}) / 2);
}
a {}
.cont {}
}
}
}
//カード型3列
&.entry-image-card-3-col {
.article-list {
.entry-list-unit {
@include breakpoint-pc {
width: calc((100% - (#{$case_list_space} * 2)) / 3);
}
a {}
.cont {}
}
}
}
//リスト型
&.entry-image-list {
.article-list {
padding-bottom: 0;
.entry-list-unit {
box-shadow: $case_box_shadow_common !important;
border: 0 !important;
margin: 20px auto 0;
padding-bottom: 10px;
@include breakpoint-sp {
display: block !important;
width: 100%;
padding: 20px 20px 10px;
}
&:first-child {
margin-top: 0;
}
&:nth-last-child(2) {
border-bottom: 0 !important;
}
a {
&.img {
width: 35% !important;
padding: 0 !important;
@include breakpoint-sp {
display: block !important;
width: 100% !important;
}
img {
padding-bottom: 10px;
@include breakpoint-sp {
padding-bottom: 0;
}
}
}
}
.cont {
width: 65% !important;
border-left: none;
margin: 20px auto 0;
@include breakpoint-sp {
width: 100% !important;
display: block !important;
}
h3 {
text-align: left;
margin: 0 20px 10px;
@include breakpoint-sp {
margin: 10px 0;
padding-left: 0;
}
a {
&:hover {}
}
}
h4 {
padding: 0 20px;
@include breakpoint-sp {
padding-left: 0;
}
}
p {
@include breakpoint-sp {
margin: 10px 0;
padding: 0;
}
&.category {}
&.description {
@include breakpoint-pc {
padding: 0 20px;
}
}
}
div {
&.tags {
padding: 0 20px;
@include breakpoint-sp {
margin: 10px 0;
padding: 0;
}
}
}
}
}
}
}
//ここからオプション
//col余白なし オプション1
&.option_padding_none {
.article-list {
.entry-list-unit {
padding: 0;
a {
&.img {
img {
padding: 0;
}
}
}
.cont {
padding: 10px 20px;
h3 {}
h4 {}
p {
&.category {}
&.description {}
}
}
}
}
&.entry-image-list {
.article-list {
.entry-list-unit {
.cont {
vertical-align: middle;
padding: 20px 20px 20px 0;
@include breakpoint-sp {
margin-top: 0;
padding: 10px 20px;
}
h3 {}
p {
&.description {}
}
}
}
}
}
}
//シャドウなし オプション2
&.option_shadow_none {
.article-list {
.entry-list-unit {
box-shadow: none !important;
}
}
}
// 画像フィット オプション3
&.option_img_fit {
.article-list {
.entry-list-unit {
a {
&.img {
img {
@include breakpoint-pc {
height: $case_img_fit_height;
object-fit: cover;
}
}
}
}
}
}
&.entry-image-list {
.article-list {
.entry-list-unit {
a {
&.img {
img {
@include breakpoint-pc {
width: calc(35% - 14px);
height: calc(100% - 30px);
object-fit: cover;
position: absolute;
}
}
}
}
}
}
}
&.option_padding_none {
&.entry-image-list {
.article-list {
.entry-list-unit {
a {
&.img {
img {
@include breakpoint-pc {
width: 35%;
height: 100%;
position: absolute;
object-fit: cover;
}
}
}
}
}
}
}
}
}
//テキスト制限 オプション4
&.option_text_limit {
.article-list {
.entry-list-unit {
.cont {
h3 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
p {
&.description {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 5;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
}
}
&.entry-image-list {
.article-list {
.entry-list-unit {
.cont {
h3 {
-webkit-line-clamp: 1;
}
p {
&.description {
-webkit-line-clamp: 3;
}
}
}
}
}
}
}
}
//ニュース
&.news_list {
padding: 40px 50px;
@include breakpoint-sp {
padding: 20px;
}
.article-list {
.entry-list-unit {
border-bottom: 1px solid $border_color;
padding: 15px 10px 10px;
@include breakpoint-sp {
padding: 0 0 10px;
}
.cont {
display: flex;
justify-content: flex-end;
flex-direction: row-reverse;
width: 100%;
border: 0;
@include breakpoint-sp {
flex-direction: column-reverse;
}
h3 {
flex-grow: 1;
margin: 0;
@include breakpoint-sp {
width: 100%;
padding-left: 0;
}
a {
font-family: $case_title_font_family;
font-size: var(--fo-text-font-size-pc);
line-height: var(--fo-text-line-height);
color: inherit;
text-decoration: $news_list_text_decoration;
margin-bottom: 5px;
padding-top: 1px;
&:hover {
opacity: $news_list_hover_opacity;
}
}
}
h4 {
font-family: $case_date_font_family;
text-align: center;
white-space: nowrap;
margin: 4px 10px 0 0;
padding: 0;
@include breakpoint-sp {
text-align: left;
margin: 0 0 5px;
}
}
div {
&.tags {
max-width: 140px;
margin: 0 10px 0 0;
padding: 0;
@include breakpoint-sp {
width: 100%;
max-width: initial;
margin: 0;
}
a {
&.tag {
@include tag_custom;
margin-top: 0;
margin-bottom: 5px;
@include breakpoint-sp {
margin: 0 5px 10px 0;
}
&::before {
@include tag_icon_custom;
}
&:first-child {
@include breakpoint-sp {
margin-left: 0;
}
}
&:not(:first-child) {
display: none;
}
i {
display: none;
}
}
}
}
}
}
}
}
//タグ2個以上 オプション
&.option_column {
.article-list {
.entry-list-unit {
.cont {
flex-wrap: wrap;
flex-direction: inherit;
h3 {
order: 2;
width: 100%;
a {
margin-bottom: 15px;
padding-left: 0;
}
}
h4 {
order: 1;
width: 100%;
text-align: left;
margin: 0 0 5px 0;
}
div {
&.tags {
order: 3;
max-width: 100%;
width: 100%;
a {
&.tag {
&:not(:first-child) {
display: inline-block;
}
}
}
}
}
}
}
}
}
}
}
}
//サイドバー用
.side {
.component {
&.entry-list {
//事例
&.caseContent_style {
.article-list {
.entry-list-unit {
@include breakpoint-pc {
padding: 10px 10px 5px;
}
.cont {
@include breakpoint-pc {
padding-right: 0;
}
h3 {
@include breakpoint-pc {
margin: 0;
}
a {
@include breakpoint-pc {
font-size: 16px;
padding: 0;
}
}
}
h4 {
@include breakpoint-pc {
font-size: 12px;
margin: 5px 0;
padding: 0;
}
}
p {
&.category {
@include breakpoint-pc {
margin: 5px 0;
padding: 0;
}
a {
@include breakpoint-pc {
font-size: 12px;
padding: 0;
}
}
}
&.description {
@include breakpoint-pc {
font-size: 12px;
margin: 5px 0 0;
padding: 0;
}
}
}
div {
&.tags {
@include breakpoint-pc {
margin: 0;
padding: 0;
}
}
}
}
}
}
}
}
}
}
/*------------- entry-list( 記事リストパーツ))END -------------*/
/* --------------------------------
header・logo・navigations(ヘッダー・ロゴ・ナビゲーション)
----------------------------------- */
.navi_base_custom {
//1段のとき
&.navi-001-01 {
header#navigations {
min-height: 51px;
font-family: var(--fo-text-font-family);
border-bottom: 0;
box-shadow: $navigation_box_shadow_common;
.inner {
@include breakpoint-pc {
box-sizing: border-box;
display: flex;
padding: 0;
}
}
.logo {
float: none;
@include breakpoint-pc {
width: $header_logo;
padding: 10px;
}
@include breakpoint-sp {
box-sizing: border-box;
width: 100%;
padding-left: 10px;
}
a {
height: auto;
img {
@include breakpoint-sp {
max-height: $header_sp_logo;
}
}
}
}
//ハンバーガーメニュー
a.menu-trigger {
background: var(--fo-main-color);
span {
background-color: #fff;
}
}
.main-menu {
float: none;
@include breakpoint-pc {
width: calc(100% - #{$header_logo});
max-width: none;
}
&.navigation-font-family {}
ul.clearfix {
background: $navigation_bg_color;
}
//PC用
@include breakpoint-pc {
.level-01,
.level-01-trigger {
a {
font-size: $navigation_font_size;
font-weight: $navigation_font_weight;
color: $navigation_text_color;
border-left: none;
border-right: none;
padding: 25px 10px;
}
}
.level-01:hover {
background-color: $navigation_hover_bg_color;
a {
color: $navigation_hover_text_color;
opacity: $navigation_hover_opacity;
}
}
.level-01-trigger {
//三角部分
&::after {
content: "\f107";
font-size: 20px;
font-weight: 400;
line-height: 1;
color: $navigation_arrow1_color;
translate: 0 -50%;
margin-top: 0;
}
&:hover::after {
color: $navigation_hover_text_color;
rotate: 180deg;
}
&:hover {
background: $navigation_hover_bg_color;
& > a {
color: $navigation_hover_text_color;
opacity: $navigation_hover_opacity;
}
}
ul.level-01-cont {
background: $navigation_bg2_color;
border: 0;
a {
color: $navigation_text2_color;
padding: 20px;
&:hover {
background: $navigation_hover_bg2_color;
color: $navigation_hover_text2_color;
}
}
.level-02-trigger {
&::after {
content: "\f105";
font-size: 20px;
font-weight: 400;
color: $navigation_arrow2_color;
right: 10px;
translate: 0 -50%;
margin-top: 0;
}
&:has(> a:hover) {
&::after {
color: $navigation_hover_text2_color;
}
}
.level-02-cont {
background: $navigation_bg2_color;
li {}
.level-03 {
a {
padding: 20px 10px;
}
}
}
}
}
}
}
//SP用は共通ハンバーガー
}
}
}
//2段のとき
&.navi-002-01 {
font-family: var(--fo-text-font-family);
header#navigations {
background: $header_bg_color;
box-shadow: $navigation_box_shadow_common;
.inner {
//ロゴ ヘッダーボタンエリア
.navigation-cont {
box-sizing: border-box;
max-width: $max_width;
padding: 10px 20px;
@include breakpoint-pc {
display: flex;
align-items: center;
justify-content: space-between;
}
@include breakpoint-sp {
padding: 0 0 10px;
}
//ロゴ
.logo {
float: none;
@include breakpoint-pc {
width: $header_logo;
padding: 0;
}
@include breakpoint-sp {
display: flex;
align-items: center;
min-height: 51px;
}
div {
line-height: normal;
padding: 0;
a {
@include breakpoint-sp {
display: block;
height: auto;
line-height: 0;
}
img {
vertical-align: middle;
padding: 0;
max-height: 60px;
@include breakpoint-sp {
max-height: $header_sp_logo;
}
}
}
}
}
.cont {
box-sizing: border-box;
min-width: auto;
max-width: none;
float: none;
@include breakpoint-pc {
width: calc(100% - #{$header_logo});
}
.row {
display: flex;
justify-content: flex-end;
width: 100%;
min-width: inherit;
@include breakpoint-sp {
display: block;
}
@include breakpoint-tb {
display: flex;
justify-content: center;
}
.col {
@include breakpoint-sp {
padding: 0;
}
//ボタンのカスタマイズ用
// .component {
// &.button[data-designpart-id] {
// .button-cont {
// a {
// &.size-s {
// &::before {}
// }
// }
// }
// }
// }
}
}
}
}
//ハンバーガーメニュー
a.menu-trigger {
background: var(--fo-main-color);
span {
background-color: #fff;
}
}
//グロナビ
.main-menu {
background: $navigation_bg_color;
border-top: solid 1px #ccc;
border-bottom: solid 1px #ccc;
&.navigation-font-family {}
//PC用
@include breakpoint-pc {
.level-01,
.level-01-trigger {
a {
font-weight: $navigation_font_weight;
font-size: $navigation_font_size;
color: $navigation_text_color;
border-left: none;
border-right: none;
}
}
.level-01:hover {
background-color: $navigation_hover_bg_color;
a {
color: $navigation_hover_text_color;
opacity: $navigation_hover_opacity;
}
}
.level-01-trigger {
//三角部分
&::after {
content: "\f107";
font-size: 20px;
font-weight: 400;
line-height: 1;
color: $navigation_arrow1_color;
translate: 0 -50%;
margin-top: 0;
}
&:hover::after {
color: $navigation_hover_text_color;
rotate: 180deg;
}
&:hover {
background: $navigation_hover_bg_color;
& > a {
color: $navigation_hover_text_color;
opacity: $navigation_hover_opacity;
}
}
ul.level-01-cont {
width: 100%;
background: $navigation_bg2_color;
border: 0;
a {
color: $navigation_text2_color;
padding: 20px;
&:hover {
background: $navigation_hover_bg2_color;
color: $navigation_hover_text2_color;
}
}
.level-02-trigger {
&::after {
content: "\f105";
font-size: 20px;
font-weight: 400;
color: $navigation_arrow2_color;
translate: 0 -50%;
right: 10px;
margin-top: 0;
}
&:has(> a:hover) {
&::after {
color: $navigation_hover_text2_color;
}
}
.level-02-cont {
background: $navigation_bg2_color;
li {
width: 100%;
}
.level-03 {
a {
padding: 20px 10px;
}
}
}
}
}
}
}
//SP用は共通ハンバーガー
}
}
}
//2段から1段への変更(変更不可)
&.stage1 {
header#navigations {
.inner {
//ロゴ ヘッダーボタンエリア
.navigation-cont {
@include breakpoint-sp {
display: flex;
align-items: center;
justify-content: space-between;
min-height: 51px;
margin: 0;
padding: 0;
}
.logo {
@include breakpoint-sp {
width: 45%;
padding: 0 0 0 10px;
}
}
.cont {
@include breakpoint-sp {
width: 55%;
padding: 0 65px 0 0;
}
.row {
@include breakpoint-sp {
display: flex;
justify-content: flex-end;
min-width: 112px;
}
}
}
}
}
}
}
}
// hover挙動記述エリア
&:is(.navi-001-01,.navi-002-01) {
header#navigations {
.inner {
.main-menu {
@include breakpoint-pc {
ul {
li {
&:is(.level-01,.level-01-trigger) {
& > a {
position: relative;
&:before {
content: "";
position: absolute;
height: 2.5px;
width: 0;
margin: 0 auto;
right: 0;
bottom: 0;
left: 0;
background-color: var(--fo-main-color);
transition: width 0.3s ease-in-out;
}
}
&:hover {
a {
&::before {
width: 60px;
}
}
}
}
a {
transition: 0.3s ease-in-out;
}
}
}
}
}
}
}
}
//共通ハンバーガー(1段・2段)
&:is(.navi-001-01,.navi-002-01) {
header#navigations {
.inner {
.main-menu {
//SP共通
@include breakpoint-sp {
.toggle.fa.fa-angle-down,
.toggle.fa.fa-angle-up {
&::before {
font-size: 20px;
color: $navigation_sp_arrow1_color;
position: absolute;
top: 50%;
right: 4px;
margin-top: -11px;
}
}
.level-01,
.level-01-trigger {
border-right: 0;
border-left: 0;
a {
font-size: $navigation_sp_font_size;
font-weight: $navigation_sp_font_weight;
color: $navigation_sp_text_color;
border-left: none;
border-right: none;
position: relative;
padding: 10px 20px;
}
}
.level-01 {
&:hover {
background: none;
}
}
.level-01-trigger {
&:hover {
background: $navigation_sp_bg_color;
a {
color: $navigation_sp_hover_text_color;
.toggle.fa.fa-angle-down,
.toggle.fa.fa-angle-up {
&::before {
color: $navigation_sp_hover_text_color;
}
}
}
}
.level-01-cont {
background: $navigation_sp_bg2_color;
a {
color: $navigation_sp_text_color;
&:hover {
background: $navigation_sp_bg3_color;
}
}
.level-02-trigger {
padding-right: 0 !important;
&::after {
content: none !important;
}
a {
color: $navigation_sp_text3_color;
.toggle.fa.fa-angle-down,
.toggle.fa.fa-angle-up {
&::before {
color: $navigation_sp_arrow2_color;
}
}
}
.level-02-cont li a {
background: $navigation_sp_bg3_color;
color: $navigation_sp_text3_color;
//border-top: 1px solid $navigation_sp_bg3_color;
}
}
.level-02 {
border-top: 1px solid var(--fo-main-color);
a {
color: $navigation_sp_text2_color;
}
}
}
}
}
//デザイン用
@include breakpoint-sp {
.toggle.fa.fa-angle-down,
.toggle.fa.fa-angle-up {
&::before {
display: flex;
justify-content: center;
align-items: center;
width: 30px;
height: 100%;
font-size: 30px;
top: 10px;
right: 0;
}
}
.level-01,
.level-01-trigger {
a {
text-align: left;
border-top: $navigation_sp_border-bottom;
padding: 20px 10px;
}
}
.level-01-trigger {
& > a {
padding-right: 30px;
}
.level-01-cont {
.level-02-trigger {
& > a {
padding: 20px 30px 20px calc(10px + 1em);
}
.level-03 {
a {
padding: 20px 30px 20px calc(10px + 2em);
}
}
}
.level-02 {
a {
padding: 20px 30px 20px calc(10px + 1em);
}
}
.level-02-cont {
// border-top: $navigation_sp_border-bottom !important;
}
}
}
ul {
li {
&[class*="level-01"] {
&:first-child {
& > a {
border: none;
}
}
}
}
}
}
}
}
}
}
}
//2段のナビ非表示
.navi-002-01 {
&.nav_none {
header#navigations {
.inner {
.main-menu {
display: none !important;
}
a.menu-trigger {
display: none;
}
}
}
}
}
//ヘッダー固定時のみ(ハンバーガーメニュー内をスクロール表示)
:is(.navi-001-01,.navi-002-01) {
&:is(
.one_row_sticky-navi__GU_fr,
.two_row_sticky-navi__8HtZT
) {
header#navigations {
.inner {
.main-menu {
@include breakpoint-sp {
max-height: calc(100vh - 51px);
overflow-y: auto;
/*----
//スクロールバー非表示
-ms-overflow-style: none; //Edge
scrollbar-width: none; //Firefox
&::-webkit-scrollbar {
display: none;
}
----*/
}
}
}
}
}
}
/*------------- header・logo・navigations(ヘッダー・ロゴ・ナビゲーション)END -------------*/
/*----------------------------------
main-visual(メインビジュアル)
----------------------------------*/
//オーバーレイが公開画面で二重にかかるバグ
.theme-fo-base {
.main-visual {
.overlay {
display: none !important;
}
}
}
//colのズレ対策
.theme-fo-base {
.main-visual {
.clearfix {
.row {
.col {
vertical-align: top;
}
}
}
}
}
//メインビジュアル
.theme-fo-base {
.main-visual {
background-repeat: no-repeat;
min-height: auto;
padding: $mv_padding;
@include breakpoint-sp {
padding: $sp_mv_padding;
}
@include breakpoint-tb {
min-height: auto;
}
& > :is(.clearfix,.main-visual-content) {
width: 100%;
max-width: $max_width;
display: flex;
flex-direction: column;
justify-content: center;
min-height: auto;
margin: auto;
padding: 0 20px;
@include breakpoint-sp {
min-height: auto;
}
.row {
.col {
.component {
&.heading {
&.hd_custom {
:is(h1,h2,h3,h4,h5) {
margin-bottom: 0;
}
h1 {
@include breakpoint-pc {
font-size: calc(var(--fo-h1-font-size-pc) + 4px);
}
}
}
}
}
}
}
}
//TOP
&.mv_custom {
& > :is(.clearfix,.main-visual-content) {
min-height: $top_mv_height;
@include breakpoint-sp {
min-height: auto;
}
.row {
--fo-heading-main-color: #fff;
--fo-text-main-color: #fff;
.col {
.component {
&.hd_custom {
h1{}
}
}
}
}
}
}
//下層
&.mv_sub_custom {
& > :is(.clearfix,.main-visual-content) {
min-height: $sub_mv_height;
.row {
--fo-heading-main-color: #fff;
--fo-text-main-color: #fff;
--fo-text-link-color: #fff;
.col {
.component {
&.cta {
.cta-row {
&.mv_design01_row {
margin-top: 22px;
.cta-column {
display: flex;
flex-direction: column;
gap: 8px;
width: 100%;
.component {
&.button[data-designpart-id] {
margin: 0;
}
}
}
}
}
}
&.hd_custom {
h1{}
}
}
}
}
}
}
//幅100%
&.maxWidth_custom {
& > :is(.clearfix,.main-visual-content) {
max-width: none;
}
}
}
}
/*------------- main-visual(メインビジュアル)END -------------*/
/*----------------------------------
breadcrumbs(パンくず)
----------------------------------*/
.theme-fo-base {
.breadcrumbs {
background: #fff;
max-width: 100%;
margin: 0;
ul {
width: 100%;
max-width: $max_width - 20px;
margin: auto;
padding: 15px 0;
li {
a {
&:hover {
color: var(--fo-text-main-color);
text-decoration: unset;
opacity: $hover_opacity;
}
&::after {
content: "\f105";
font-family: $font_family_awsm;
color: var(--fo-text-main-color);
border-top: none;
border-bottom: none;
border-left: none;
position: absolute;
padding: 0;
top: 0;
right: -1px;
margin-top: 0;
}
}
a,
span {
font-size: 14px;
color: var(--fo-text-main-color);
text-decoration: unset;
padding: 0 20px;
}
}
}
}
}
/*------------- breadcrumbs(パンくず)END -------------*/
/*----------------------------------
button(ボタン)
----------------------------------*/
/*--- ボタン全体スタイル ---*/
:is(
.component.button,
.button.cta-button
) {
.button-cont {
a {
transition: none;
&:hover {
@include breakpoint-pc {
transition: all .2s cubic-bezier(.02,.42,.24,.74);
}
}
}
}
}
//デザインパーツ
.component {
&:not(:root:root:root:root:root) {
//ボタン全体(例:自由にカスタマイズしてください)
// &.button[data-designpart-id] {
// margin-top: 0;
// .button-cont {
// a {
// &.size-s {}
// &.size-m {}
// &.size-l {}
// &:is(.size-s,.size-m,.size-l) {
// box-shadow: none;
// }
// }
// }
// }
&.button {
&.btn1_custom01 {
.button-cont {
a {
&:is(.size-s,.size-m,.size-l) {
&::before {}
}
&:is(.blue,.red,.orange,.black,.white) {}
&:hover {}
}
}
}
}
//TELボタン
&.button[data-designpart-id="642f669ce4dc09621d945abc"] {
.button-cont {
a {
//サイズ小
&.size-s {
font-size: calc(4px + var(--fo-button-small-font-size));
}
//サイズ中
&.size-m {
font-size: calc(4px + var(--fo-button-medium-font-size));
}
//サイズ大
&.size-l {
font-size: calc(12px + var(--fo-button-large-font-size));
}
}
}
}
}
}
//ボタン共通
.component {
&.button {
//sp時センター寄せ
&.sp_center {
.button-cont:is(.left,.right) {
@include breakpoint-sp {
text-align: center;
}
}
}
//sp時アイコン化
&.sp_icon {
.button-cont {
a {
&:is(.size-s,.size-m,.size-l) {
@include breakpoint-msp {
background: none !important;
width: auto !important;
min-width: auto !important;
font-size: 0 !important;
letter-spacing: 0 !important;
border: 0 !important;
border-radius: 0 !important;
box-shadow: none !important;
margin: 0;
padding: 5px 10px 5px 5px;
}
@include breakpoint-ssp {
padding: 5px;
}
}
&::before,
&::after {
@include breakpoint-msp {
font-size: 22px;
line-height: 1;
color: var(--fo-main-color);
margin: 0;
top: 0;
}
@include breakpoint-ssp {
font-size: 20px;
}
}
}
}
}
//デフォルトパーツ
&.btn_custom01 {
.button-cont {
a {
&:is(.size-s,.size-m,.size-l) {
&::before {}
}
&:is(.blue,.red,.orange,.black,.white) {}
&:hover {}
}
}
}
}
}
/*------------- button(ボタン)END -------------*/
/*----------------------------------
heading(見出し)
----------------------------------*/
//ページ内リンクずれ対策class
.theme-fo-base {
.wrapper {
.contents {
section {
.component {
&.heading:not(:root) {
&.inPage_link {
@include breakpoint-pc {
margin-top: calc(-#{$inPage_link} - 10px);
padding-top: calc(#{$inPage_link} + 10px);
}
@include breakpoint-sp {
margin-top: calc(-#{$sp_inPage_link} - 10px);
padding-top: calc(#{$sp_inPage_link} + 10px);
}
}
}
}
}
}
}
}
//デザインパーツ
.component {
//見出し下余白条件分岐用
&:not(:root:root:root:root) {
&.heading[data-designpart-id] {
&:has(+ .component) {
:is(h1,h2,h3) {
@include margin-property(bottom,32px);
}
:is(h4,h5) {
@include margin-property(bottom,24px);
}
}
}
}
&:not(:root:root:root:root:root) {
// 見出し全体(例:自由にカスタマイズしてください)
&.heading[data-designpart-id] {
:is(h1,h2,h3,h4,h5) {}
}
//デザインパーツ
&.heading {
&.hd_custom01 {
:is(h1,h2,h3,h4,h5) {}
}
&.mt0_hd {
margin-top: 0;
}
&.mainClr_hd {
--fo-heading-main-color: var(--fo-main-color);
}
&.subClr_hd {
--fo-heading-main-color: var(--fo-sub-color);
}
&.accentClr_hd {
--fo-heading-main-color: var(--fo-accent-color);
}
}
}
}
//デフォルトパーツ
.theme-fo-base {
:is(.main-visual,.contents,.side,.foot) {
.component {
&.heading {
//&.rich-heading-align-right {}
//&.rich-heading-align-center {}
//&.rich-heading-align-left {}
//見出し01
&.hd_custom01 {
:is(h1,h2,h3,h4,h5) {}
}
//sp時センター
&.sp_center {
&:is(.rich-heading-align-right,.rich-heading-align-left) {
@include breakpoint-sp {
text-align: center !important;
}
}
}
//細字設定
:is(h1,h2,h3,h4,h5) {
.strong {
font-weight: $hd_font_strong;
}
}
}
}
}
}
/*------------- heading(見出し)END -------------*/
/*----------------------------------
article-post(ブログ用見出し)
----------------------------------*/
/*--- ブログ見出しフォント指定 ---*/
.component {
&.blog_article {
.article-post {
@include hd_blog;
}
}
}
/*------------- article-post(ブログ用見出し)END -------------*/
/*----------------------------------
main(コンテンツ)
----------------------------------*/
@include theme-fo-base {
.inner {
.row {
&.loop_row {
@include adjacentMargin(loop_row,40px);
}
//料金
&.price_table_row {
.col {
.component {
&.richtext {
:is(.normal-table,.table-with-two-headers) {
table {
thead {
tr {
th {
background-color: #fff;
font-weight: normal;
&:nth-child(2) {
background-color: color-mix(in srgb, var(--fo-main-color) 80%, #fff);
}
&:nth-child(3) {
background-color: color-mix(in srgb, var(--fo-main-color) 60%, #fff);
}
&:nth-child(n+4) {
background-color: color-mix(in srgb, var(--fo-main-color) 40%, #fff);
}
}
}
}
tbody {
tr {
:is(th,td) {
font-weight: normal;
background-color: #fff;
}
}
}
}
}
}
}
}
}
.col {
.component {
//リッチテキストパーツ
&.richtext {}
//画像パーツ
&.image {}
//リストパーツ
&.list {}
}
}
}
}
}
/*--- CTAパーツ ---*/
@include theme-fo-base {
//通常用
&.cta_sec {
.inner {
.row {
.col {
.component {
&.cta {
margin: 0;
.cta-row {
--fo-heading-main-color: #fff;
--fo-text-main-color: #fff;
--tel-botton-color: #fff;
&.btn_row {
@include breakpoint-pc {
display: flex;
max-width: 892px;
margin: auto;
}
@include breakpoint-pro_s {
display: block;
}
.cta-column {
@include breakpoint-pc {
display: flex;
justify-content: space-between;
}
@include breakpoint-pro_s {
display: block;
width: 100% !important;
}
&:not(:first-child) {
@include breakpoint-pro_s {
margin-top: 20px;
}
}
.component {
&.button[data-designpart-id] {
margin: 10px 0;
}
}
}
& + .cta-row {
max-width: 892px;
margin: auto;
.cta-column {
.component {
&.button[data-designpart-id] {
margin: 10px 0;
}
}
}
}
}
&.tel_row {
.cta-column {
.component {
&.button {
.button-cont {
a {
&:is(.size-s,.size-m,.size-l) {
color: var(--tel-botton-color,#000);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
//2カラム(CTA)
.theme-fo-base {
.wrapper {
&[class*="side-"] {
.contents {
section {
&.cta_sec {
.inner {
.row {
.col {
.component {
&.cta {
.cta-row {
&.btn_row {
display: block;
.cta-column {
display: block;
width: 100% !important;
}
}
}
}
}
}
}
}
}
}
}
.side {
.inner {
.component {
&.heading {
& + .button {
margin-top: 0;
}
}
}
}
}
}
}
}
/*--- デザインLPパーツ ---*/
@include theme-fo-base {
//ヘッダー
&.foPrp_header_sec {
padding: 0;
.inner {
padding: 10px 20px;
@include breakpoint-sp {
padding: 10px;
}
.row {
&.foPrp_header_row {
display: flex;
align-items: center;
@include breakpoint-pc {
min-height: 60px;
}
.col {
padding: 0;
&.foPrp_logo_col {
@include breakpoint-pc {
max-width: 300px;
min-width: 150px;
width: auto !important;
}
.component {
&.image {
margin: 0;
&.foPrp_logo_img {
img {
@include breakpoint-pc {
max-width: $header_logo !important;
width: 100% !important;
}
@include breakpoint-sp {
max-height: $header_sp_logo !important;
}
}
}
}
}
}
&.foPrp_btn_col {
display: flex !important;
justify-content: flex-end;
align-items: center;
flex: 1;
@include breakpoint-pc {
width: auto !important;
}
.component {
margin: 0;
&:not(:first-child) {
@include breakpoint-pc {
margin-left: 15px;
}
}
&.button {
margin-top: 0;
.button-cont {
a {
@include breakpoint-sp {
background: none;
width: auto;
min-width: auto;
font-size: 0 !important;
letter-spacing: 0;
border-radius: 0;
border: 0;
margin: 0;
box-shadow: none;
padding: 5px 10px 5px 5px;
}
&::before {
@include breakpoint-sp {
font-size: 22px;
line-height: 1;
color: var(--fo-main-color);
margin: 0;
}
}
}
}
&[data-designpart-id="642f669ce4dc09621d945abc"] {
.button-cont {
a {
@include breakpoint-pro {
background: none;
width: auto;
min-width: auto;
font-size: 0 !important;
letter-spacing: 0;
border-radius: 0;
border: 0;
margin: 0;
box-shadow: none;
padding: 5px 10px 5px 5px;
}
&::before {
@include breakpoint-pro {
font-size: 22px;
line-height: 1;
color: inherit;
margin: 0;
}
@include breakpoint-sp {
color: inherit;
}
}
}
}
}
}
}
}
}
}
}
}
}
//フッター
&.foPrp_footer_sec {
padding: 0;
background: $footer_bg_color;
.inner {
max-width: unset;
padding: 0;
.row {
.col {
padding: 0;
.component {
&.cta {
margin: 0;
.cta-row {
padding-top: 0;
&.page_top_row {
@include page_top;
}
.cta-column {
padding: 0;
.component {
&.richtext {
&.foot-copyright {
@include copyright_custom;
}
}
}
}
}
}
}
}
}
}
}
}
/*---------------------------------------------------
ここのパーツは自由に使用してください。
カスタマイズする場合はコピーして所定の場所で使用してください。
-----------------------------------------------------*/
@include theme-fo-base {
.inner {
.row {
.col {
.component {
&.richtext {
//テーブル(ボーダー無し)
&.custom_table {
table {
border: none;
:is(thead,tbody) {
border: 0;
tr {
border: 0;
th {
vertical-align: top;
border: 0;
}
td {
vertical-align: top;
border: 0;
}
p {
@include breakpoint-tb {}
}
}
}
}
}
//スマホ時テーブル固定スクロール
&.sp_table_scroll {
:is(
.normal-table,
.table-with-row-header,
.table-with-two-headers
) {
@include breakpoint-sp {
overflow-x: auto;
-webkit-overflow-scrolling: touch;
margin-bottom: 40px;
}
&::after {
@include breakpoint-sp {
content: "\f07e";
display: inline-block;
font-family: $font_family_awsm;
font-size: 30px;
line-height: 1;
color: var(--fo-main-color);
position: absolute;
left: 50%;
margin-left: -15px;
}
}
}
table {
@include breakpoint-tb {
min-width: 130vw;
}
@include breakpoint-ssp {
min-width: 200vw;
}
thead {
tr {
th {
@include breakpoint-sp {
white-space: initial;
}
}
}
}
tbody {
tr {
th {
@include breakpoint-sp {
display: table-cell !important;
white-space: nowrap;
}
}
td {
vertical-align: top;
@include breakpoint-sp {
display: table-cell !important;
white-space: initial;
}
p {
@include breakpoint-tb {}
}
}
}
}
}
}
//英語テキスト
&.en_text {
color: var(--fo-main-color);
table {
border: none;
:is(thead,tbody) {
border: 0;
tr {
border: 0;
th {
border: 0;
padding: 0;
}
td {
border: 0;
padding: 0;
}
p {
margin: 0 !important;
@include breakpoint-tb {}
}
}
}
}
}
//ナンバー
&.number_text {
table {
width: auto !important;
border: none;
:is(thead,tbody) {
border: 0;
tr {
border: 0;
th {
border: 0;
line-height: 1;
padding: 0;
}
td {
border: 0;
line-height: 1;
padding: 0;
}
p {
margin: 0 !important;
line-height: 1;
@include breakpoint-tb {}
}
}
}
}
}
}
}
}
}
}
}
/*------------------------------
カスタムパーツ 格納場所
基本的にパーツ単体の記述でお願いします。
パーツ名を忘れず記載してください。
-------------------------------*/
@include theme-fo-base {
.inner {
.row {
.col {
.component {}
}
}
}
}
/*--- カスタムパーツ 格納場所 end ---*/
/*----------------------------------
ユニバーサルクラス
----------------------------------*/
//スマホだけ表示させる
.spOnly {
@include breakpoint-pc {
display: none !important;
}
}
//PCだけ表示させる
.pcOnly {
@include breakpoint-sp {
display: none !important;
}
}
//displayNoneクラス
.displayNone {
display: none !important;
}
//ギャラリーパーツ
.poptrox-overlay {
z-index: 9999 !important;
.poptrox-popup {
.pic {
z-index: 10000;
}
}
}
//iframe
.component {
&.iframe {
display: flex;
//左寄せ
&.right {
justify-content: flex-end;
}
//中央寄せ
&.center {
justify-content: center;
}
//ワイド
&.if_16-9 {
aspect-ratio: 16/9;
}
//スタンダート
&.if_4-3 {
aspect-ratio: 4/3;
}
//スクエア
&.if_1-1 {
aspect-ratio: 1/1;
}
//縦撮り
&.if_9-16 {
aspect-ratio: 9/16;
}
//シネマスコープ
&.if_235-1 {
aspect-ratio: 2.35/1;
}
//カスタムclass
&.if_custom {
width: 100%;
height: 0;
position: relative;
$var: 300;
@while $var <= 3000 {
&.pc-h#{$var} {
@include breakpoint-pc {
height: #{$var}px;
}
}
&.sp-h#{$var} {
@include breakpoint-sp {
height: #{$var}px;
}
}
$var: $var + 10;
}
iframe {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
}
}
}
//スムーススクロール
html {
scroll-behavior: smooth !important;
}
//フォームパーツ
.component {
&.form {
.form-title {
color: var(--fo-text-main-color);
}
//フォームの必須
.form-label {
&.require {
&::after {
padding: 2px 7px 4px !important;
margin-left: 20px;
}
}
}
input[type=checkbox],
input[type=radio] {
min-height: auto;
}
.form-submit {
.popup-link {
font-weight: $font_weight;
}
}
&.vertical {
.form-label {
&::after {
position: relative;
top: -2px;
}
}
}
&.horizontal {
.form-label {
padding-right: 10px;
&::after {
@include breakpoint-pc {
top: 8px !important;
}
@include breakpoint-sp {
top: -2px !important;
}
}
}
}
}
}
//ズレ対策
.component {
&.form {
label.agreement {
display: flex;
align-items: center;
.form-label {
padding-top: 6px;
&::after {
top: -1.5px;
}
}
}
}
}
//角丸専用
.radius_all {
border-radius: $border_radius_common;
}
//2カラム時、PCとSPでカラムの位置を入れ替える
.reverse {
@include breakpoint-sp {
display: flex !important;
flex-wrap: wrap-reverse;
}
}
//全てbr非表示
.allbrClear {
br {
display: none;
}
}
//PCの時はbr非表示
.pcbrClear {
br {
display: none;
@include breakpoint-sp {
display: block;
}
}
}
//TABの時はbr非表示
.tbbrClear {
br {
@include breakpoint-tb {
display: none;
}
}
}
//width1024の時はbr非表示
.probrClear {
br {
@include breakpoint-pro {
display: none;
}
}
}
//スマホの時はbr非表示
.spbrClear {
br {
@include breakpoint-sp {
display: none;
}
}
}
/*------------- main(コンテンツ) END -------------*/
/* ----------------------------------
blog(ブログテンプレート)
----------------------------------*/
/*--- ブログページ一覧 ---*/
.component {
&.blog_articles {
hr {
border: 0;
border-bottom: 1px solid $blog_border_color;
margin-bottom: 30px;
@include breakpoint-sp {
margin-bottom: 10px;
}
}
article {
.infomation {
padding: 0 0 0 30px;
//タイトル
& > h2 {
line-height: 1.5;
padding: 0;
a {
display: inline-block;
font-family: var(--fo-heading-font-family);
font-size: $list_heading_pc_fontsize;
font-weight: bold;
letter-spacing: var(--fo-heading-letter-spacing);
line-height: var(--fo-heading-line-height);
color: var(--fo-heading-main-color);
@include breakpoint-sp {
font-size: $list_heading_sp_fontsize;
}
&:hover {
opacity: $hover_opacity;
}
}
}
p {
font-size: var(--fo-text-font-size-pc);
color: var(--fo-text-main-color);
line-height: var(--fo-text-line-height);
letter-spacing: var(--fo-text-letter-spacing);
padding: 0;
@include breakpoint-sp {
font-size: var(--fo-text-font-size-sp);
}
}
//記事を見るの位置
a {
&.view-article {
display: inline-block;
width: 100%;
font-size: var(--fo-text-font-size-pc);
color: var(--fo-text-link-color,var(--fo-text-main-color));
line-height: var(--fo-text-line-height);
letter-spacing: var(--fo-text-letter-spacing);
text-align: right;
text-decoration: underline;
@include breakpoint-sp {
font-size: var(--fo-text-font-size-sp);
}
&:hover {
opacity: $hover_opacity;
text-decoration: none;
}
}
}
//日付の背景色
span {
&.published_at {
background: none;
font-size: 14px;
color: var(--fo-text-main-color);
text-align: left;
padding: .5rem 0;
}
}
//タグスタイル
.tags {
padding-left: 0;
a {
&.tag {
@include tag_custom;
i {
margin-right: 0;
&::before {
@include tag_icon_custom;
}
}
}
}
}
}
.catch,
.infomation {
@include breakpoint-sp {
width: 100%;
float: none;
padding: 1em 0 0;
}
}
.catch {
a {
img {
border-radius: $blog_border_radius;
}
}
}
}
}
}
/*--- ブログ記事詳細 ---*/
.theme-fo-base {
.clearfix {
.contents {
&.blog-contents {
padding: 0;
section {
.inner {
@include breakpoint-sp {
padding: 0 20px 10px;
}
.row {
.col {
.component {
&.blog_article {
margin-top: 0;
.article-component {
//目次内
&.contents-table {
border-color: $border_color;
@include breakpoint-sp {
padding: 10px 20px;
}
ol {
@include breakpoint-sp {
margin-left: 0;
}
ol {
@include breakpoint-sp {
margin-left: 1em;
}
}
}
}
}
//日付・タグ
.article-meta-info {
opacity: unset;
span {
&.post-date {
time {
font-family: var(--fo-text-font-family);
}
}
&.article-category {
i {
display: none;
}
a {
color: var(--fo-main-color);
&::before {
@include category_icon_custom;
}
&:hover {
opacity: $hover_opacity;
}
}
}
&.article-tags {
i {
display: none;
}
a {
@include tag_custom;
display: inline-block;
margin-top: 10px;
&::before {
@include tag_icon_custom;
}
&::after {
content: none;
}
}
}
}
}
//詳細ページ設定
.article-eyecatch {
@include breakpoint-pc {
margin-bottom: 30px;
}
@include breakpoint-sp {
margin: 30px 0;
}
}
.article-post {
color: var(--fo-text-main-color);
padding: 0;
a {
color: var(--fo-text-main-color);
&:hover {
opacity: $hover_opacity;
}
}
//ブログ詳細の本文
.component {
&.richtext {
font-size: var(--fo-text-font-size-pc);
letter-spacing: var(--fo-text-letter-spacing);
line-height: var(--fo-text-line-height);
color: var(--fo-text-main-color);
@include breakpoint-sp {
font-size: var(--fo-text-font-size-sp);
}
p {
font-size: inherit;
letter-spacing: inherit;
line-height: inherit;
color: inherit;
a {
color: var(--fo-text-link-color);
&:hover {
opacity: var(--fo-text-link-hover-opacity,1);
text-decoration: var(--fo-text-link-hover-text-decoration,none);
font-weight: var(--fo-text-link-hover-font-weight,inherit);
color: var(--fo-text-link-color);
filter: unquote('invert(var(--fo-text-link-hover-invert,0))');
}
&.show-area {
&:hover {
opacity: $hover_opacity;
text-decoration: none;
font-weight: inherit;
color: var(--fo-text-link-color);
filter: none;
}
}
}
}
//ブログ詳細の表
table {
.table-content {
a {
color: var(--fo-text-link-color);
&:hover {
opacity: var(--fo-text-link-hover-opacity,1);
text-decoration: var(--fo-text-link-hover-text-decoration,none);
font-weight: var(--fo-text-link-hover-font-weight,inherit);
color: var(--fo-text-link-color);
filter: unquote('invert(var(--fo-text-link-hover-invert,0))');
}
}
}
}
.border {
margin-top: 0;
hr {
&.type01 {
background-image: -webkit-linear-gradient(left, transparent, $border_color, transparent);
}
&:is(.type02,.type03,.type04) {
border-color: $border_color;
}
}
}
//ブログ詳細の引用
blockquote {
font-size: inherit;
color: inherit;
padding: 40px 30px;
@include breakpoint-sp {
padding: 20px;
}
&::before {
font-size: 500%;
}
}
}
}
}
section {
//著者
&.author {
padding: 0;
border-color: $border_color;
@include breakpoint-sp {
display: flex;
padding: 15px;
}
.author-image {
margin-right: 15px;
@include breakpoint-sp {
width: 50%;
}
img {
border-radius: $blog_border_radius;
}
}
.author-info {
.author-name {
font-family: var(--fo-heading-font-family);
font-size: 18px;
color: var(--fo-heading-main-color);
line-height: var(--fo-heading-line-height);
letter-spacing: var(--fo-heading-letter-spacing);
@include breakpoint-sp {
font-size: 16px;
}
}
.author-description {
white-space: pre-wrap;
font-size: var(--fo-text-font-size-pc);
letter-spacing: var(--fo-text-letter-spacing);
line-height: var(--fo-text-line-height);
color: var(--fo-text-main-color);
@include breakpoint-sp {
font-size: var(--fo-text-font-size-sp);
}
}
}
}
}
}
}
section {
//ページネーション
&.prev-next-link {
display: flex;
gap: calc(40px * var(--fo-spacing-coef));
margin-top: calc(40px * var(--fo-spacing-coef));
@include breakpoint-sp {
flex-direction: column;
gap: 0;
margin: calc((40px * var(--fo-spacing-coef)) * .75) 0 20px;
padding: 0;
}
a {
color: var(--fo-text-main-color);
border-color: $border_color;
&:hover {
background: transparent;
opacity: $hover_opacity;
}
&::before,
&::after {
color: var(--fo-main-color);
}
//前の記事 次の記事
h3 {
&.prev-next-label {
font-family: var(--fo-heading-font-family);
font-size: 18px;
color: var(--fo-heading-main-color);
line-height: var(--fo-heading-line-height);
letter-spacing: var(--fo-heading-letter-spacing);
@include breakpoint-sp {
font-size: 16px;
}
}
}
div.thumb-wrap {
display: flex;
img {
float: none;
margin-right: 15px;
}
p {
font-size: 14px;
letter-spacing: var(--fo-text-letter-spacing);
line-height: var(--fo-text-line-height);
color: var(--fo-text-main-color);
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
text-overflow: ellipsis;
max-height: calc((14px * var(--fo-text-line-height)) * 2);
}
}
}
}
}
}
}
}
}
}
}
}
}
/*------------- blog(ブログテンプレート) END -------------*/
/* ----------------------------------
カテゴリ・タグ自動生成ページ
----------------------------------*/
.theme-fo-base {
&.clearfix {
.wrapper {
&.clearfix {
.contents {
:is(
.category-preview,
.tag-preview
) {
box-sizing: border-box;
margin: auto;
article {
display: table;
border-bottom: 1px solid $blog_border_color;
@include breakpoint-sp {
display: block;
width: 100%;
margin: 20px 0;
padding: 0;
}
.article-thumbnail {
display: table-cell;
width: 30%;
padding-bottom: 10px;
@include breakpoint-sp {
display: block;
width: 100%;
}
a {
display: block;
@include breakpoint-sp {
margin-bottom: 10px;
}
img {
width: 100%;
border-radius: 0;
}
}
}
.article-cont {
display: table-cell;
width: 70%;
height: auto;
vertical-align: top;
padding: 10px 30px;
@include breakpoint-sp {
display: block;
width: 100%;
margin-bottom: 20px;
padding: 0;
}
.article-title {
overflow: auto;
max-height: none;
a {
font-family: var(--fo-heading-font-family);
font-size: $list_heading_pc_fontsize;
font-weight: inherit;
color: var(--fo-heading-main-color);
line-height: var(--fo-heading-line-height);
letter-spacing: var(--fo-heading-letter-spacing);
@include breakpoint-sp {
font-size: $list_heading_sp_fontsize;
}
&:hover {
opacity: $hover_opacity;
}
}
}
.article-meta-info {
position: relative;
.article-category {
&::before {
content: none;
}
a {
color: var(--fo-text-link-color,var(--fo-text-main-color));
&::before {
@include category_icon_custom;
}
&:hover {
opacity: $hover_opacity;
}
}
}
//タグ自動生成のタグスタイル
.tag-lists {
@include breakpoint-sp {
display: block;
}
.article-tags {
@include tag_custom;
&::before {
@include tag_icon_custom;
}
}
}
//カレンダーアイコン削除
span {
&.post-date {
color: var(--fo-text-main-color);
&::before {
content: none;
}
time {
font-family: var(--fo-text-font-family);
}
}
&.article-author {
color: var(--fo-text-main-color);
}
}
}
}
}
}
}
}
}
}
}
:is(
.tag-preview article .article-cont .article-meta-info .tag-lists,
.category-preview article .article-cont .article-meta-info .tag-lists
) {
max-height: 100% !important;
}
/*------------- カテゴリ・タグ自動生成ページ END -------------*/
/*----------------------------------
side bar(サイドバー)
----------------------------------*/
//834幅から1カラム設定
.theme-fo-base {
.wrapper {
&:is(.side-left,.side-right) {
max-width: $max_width;
@include breakpoint-pro_s {
display: block; //崩れ対策
}
.contents {
background: transparent;
max-width: unset;
border-left: 0;
border-right: 0;
padding: 0;
@include breakpoint-pro_s {
display: block; //崩れ対策
}
section {
.inner {
padding: 20px;
}
}
}
.side {
@include breakpoint-pro_s {
display: block;
}
&:is(.left,.right) {
padding: 0;
@include breakpoint-pro_s {
width: 100%;
}
@include breakpoint-tb {
width: 100%;
margin: auto;
}
.inner {
padding: 20px;
.component:not(:root:root) {
margin: 20px 0;
&:first-child {
margin-top: 0;
}
&.heading {
h1 {
@include breakpoint-pc {
font-size: $blog_title_h1_fontsize_pc;
}
@include breakpoint-sp {
font-size: $blog_title_h1_fontsize_sp;
}
}
h2 {
@include breakpoint-pc {
font-size: $blog_title_h2_fontsize_pc - 2px;
}
@include breakpoint-sp {
font-size: $blog_title_h2_fontsize_sp;
}
}
}
&.blog-ranking {
&[data-designpart-id="642f669ce4dc09621d945ab4"] {
div {
&:nth-child(1 of .entry-list-unit) {
@include breakpoint-sp {
padding-top: 0;
}
}
}
}
}
&.button {
.button-cont {
a {
&:is(.size-s,.size-m,.size-l) {
@include breakpoint-pc {
width: 100%;
min-width: 100%;
}
}
&.size-s {
@include breakpoint-pro_s {
width: initial;
min-width: 200px;
}
}
&.size-m {
@include breakpoint-pro_s {
width: initial;
min-width: 280px;
}
}
&.size-l {
@include breakpoint-pc {
font-size: 16px;
}
@include breakpoint-pro_s {
font-size: 22px;
width: initial;
min-width: 350px;
}
}
}
}
}
}
}
}
}
}
&.side-left {
@include breakpoint-pro_s {
display: flex;
flex-wrap: wrap;
flex-direction: column-reverse;
}
}
&.side-both {
@include breakpoint-pro_s {
display: flex;
flex-wrap: wrap;
}
.contents {
@include breakpoint-pc {
width: 100%;
max-width: 560px;
}
@include breakpoint-pro_s {
display: block;
max-width: none;
order: 1;
padding: 10px 0;
}
@include breakpoint-sp {
padding: 10px 0;
}
section {
.inner {
padding: 20px;
.row {
.col {
@include breakpoint-pro_s {
padding: 0;
}
}
}
}
}
}
.side {
&:is(.left,.right) {
@include breakpoint-pro_s {
display: block;
width: 100%;
}
@include breakpoint-msp {
padding: 0;
}
@include breakpoint-tb {
width: 100%;
margin: auto;
}
.inner {
@include breakpoint-msp {
padding: 20px;
}
}
}
&.left {
@include breakpoint-pro_s {
order: 2;
}
}
&.right {
@include breakpoint-pro_s {
order: 3;
}
}
}
}
}
}
/*--- カテゴリ --- */
.component {
&.category {
&.category_custom {
margin-bottom: 20px !important;
a {
color: var(--fo-text-main-color);
&:hover {
opacity: $hover_opacity;
}
}
}
}
}
/*--- ランキング ---*/
.component {
&.blog-ranking {
&.ranking_custom {
@include breakpoint-sp {
width: 100%;
margin: auto;
}
.entry-list-unit {
border-color: $blog_border_color;
@include breakpoint-sp {
padding: 20px 0 10px;
}
.img {
padding: 0 !important;
@include breakpoint-sp {
padding-right: 0 !important;
}
img {
border-radius: 0;
}
}
.cont {
border-left: 0;
@include breakpoint-sp {
padding: 0 !important;
}
h3 {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
text-overflow: ellipsis;
color: var(--fo-text-main-color);
margin: 0 0 10px;
@include breakpoint-sp {
margin-top: 1em;
padding: 0;
}
a {
padding: 0;
margin: 0;
}
}
p {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
overflow: hidden;
text-overflow: ellipsis;
padding: 0;
}
}
.article-rank {
background: #fff;
color: var(--fo-main-color);
border: 1px solid var(--fo-main-color);
z-index: 2;
@include breakpoint-msp {
min-width: 45px;
height: 45px;
font-size: 20px;
line-height: 45px;
}
&:is(.rank-1,.rank-2,.rank-3) {
background: var(--fo-main-color) !important;
color: #fff;
border: 1px solid var(--fo-main-color);
}
}
}
}
}
}
/*--- カテゴリーアイコン ---*/
.fa-folder-open-o::before {
font-family: $font_family_awsm;
}
/*------------- side bar(サイドバー)END -------------*/
/*----------------------------------
foot(フッター)
----------------------------------*/
.theme-fo-base {
.foot {
&.ft_custom {
background: $footer_bg_color;
background-repeat: no-repeat;
color: var(--fo-text-main-color);
padding: 0;
.foot-cont {
padding: 60px 20px 70px;
@include breakpoint-msp {
padding: 40px 20px;
}
.row {
//ロゴの部分
&.ft_logo_row {
& + .ft_site_map_row {
@include breakpoint-pc {
margin-top: 30px;
}
@include breakpoint-msp {
margin-top: 20px;
}
}
}
&.ft_site_map_row {
@include breakpoint-tb {
display: flex;
gap: 10px;
}
& + .ft_bottom_row {
margin-top: 35px;
@include breakpoint-ssp {
margin-top: 15px;
}
}
//各colの幅やスタイル部分
.col {
vertical-align: top;
//リンクリストの部分
&.site_map_col {
& + .site_map_col {
@include breakpoint-ssp {
padding-top: 10px;
}
}
}
}
}
//ボタン固定
&.page_top_row {
@include page_top;
}
.col {
@include breakpoint-sp {
margin: 0;
padding: 0;
}
.component {
//イメージ
&.image {
&.ft_logo_img {
img {
max-width: 244px !important;
width: 100% !important;
}
}
}
//リスト
&.list {
&.site_map_list {
margin: 0;
ul {
font-size: inherit;
li {
list-style-type: none;
font-size: inherit;
color: inherit;
&:not(:first-child) {
margin: 8px 0 0;
}
a {
display: inline-block;
color: inherit;
padding: 0;
&:hover {
background: transparent;
opacity: $hover_opacity;
}
}
}
}
}
}
}
}
}
}
//コピーライト部分
.foot-copyright {
@include copyright_custom;
}
}
}
}
/*------------- foot(フッター END)-------------*/
/*----------------------------------
LP(フルカスタム用)
----------------------------------*/
/*
LP variables(変数)
LP button(ボタン)
LP header (見出し)
LP richtext(テキスト)
LP form(フォーム)
LP メインビジュアル
LP contents(コンテンツ)
LP body(本体)
*/
/* --------------------------------
LP variables(変数)
----------------------------------- */
//フォント
$lp_font_family: "Noto Sans JP";
//hover時の不透明度
$lp_hover_opacity: .4;
//カラー
$lp_main_color: black; //メインカラー
$lp_sub_color: #eee; //サブカラー
$lp_accent_color: #df8c3b; //アクセントカラー
$lp_text_color: #333; //テキストカラー
$lp_a_text_color: #003b82; //テキストリンクのカラ
$lp_form_hissu_color: #c70909;//赤 フォームの「必須マーク」カラー
//ヘッダー
$lp_header_logo: 200px; //PCでの幅サイズ(固定)
$lp_header_sp_logo: 30px; //SPでの高さサイズ(maxサイズ)
$lp_header_height: 80px; //PC時のヘッダーの高さ(固定時に使用)
$lp_header_sp_height: 52px; //SP時のヘッダーの高さ(固定時に使用)
//セクション余白
$lp_section_padding: 120px; //PC時のパディング
$lp_section_sp_padding: 60; //SP時のパディング
//テキスト
$lp_text_pc_fontsize: 16px; //ベースとなるフォントサイズ(PC)
$lp_text_sp_fontsize: 16px; //ベースとなるフォントサイズ(SP)
$lp_text_line_height: 1.5; //ベースとなるline-height(行間)
$lp_text_letter_spacing: .04em;
//見出し
$lp_hd_line_height: 1.5; //見出し用line-height(行間)
$lp_hd_letter_spacing:.04em;
$lp_hd_font_weight: bold; //見出し用
$lp_hd_font_strong: normal; //見出し用(編集画面の「.strong」に対応)
$lp_title_font_family: $lp_font_family; //サイト内見出しのフォントファミリー
////pc
$lp_hd_pc_h1_fontsize: 46px; //サイト内(ブログコンテンツを除く)の見出しh1のフォントサイズ(PC)
$lp_hd_pc_h2_fontsize: 38px; //サイト内(ブログコンテンツを除く)の見出しh2のフォントサイズ(PC)
$lp_hd_pc_h3_fontsize: 30px; //サイト内(ブログコンテンツを除く)の見出しh3のフォントサイズ(PC)
$lp_hd_pc_h4_fontsize: 20px; //サイト内(ブログコンテンツを除く)の見出しh4のフォントサイズ(PC)
$lp_hd_pc_h5_fontsize: 18px; //サイト内(ブログコンテンツを除く)の見出しh5のフォントサイズ(PC)
////sp
$lp_hd_sp_h1_fontsize: 26px; //サイト内(ブログコンテンツを除く)の見出しh1のフォントサイズ(SP)
$lp_hd_sp_h2_fontsize: 24px; //サイト内(ブログコンテンツを除く)の見出しh2のフォントサイズ(SP)
$lp_hd_sp_h3_fontsize: 22px; //サイト内(ブログコンテンツを除く)の見出しh3のフォントサイズ(SP)
$lp_hd_sp_h4_fontsize: 18px; //サイト内(ブログコンテンツを除く)の見出しh4のフォントサイズ(SP)
$lp_hd_sp_h5_fontsize: 16px; //サイト内(ブログコンテンツを除く)の見出しh5のフォントサイズ(SP)
//ボックスシャドウ
$lp_box_shadow_common: 2px 2px 10px 0 rgba(#000,.08);
$lp_box_shadow_nav_common: 0 3px 6px rgba(#000,.08);
//コピーライト
$lp_copyright_bg_color: #eae8e8; //コピーライトの背景色
$lp_copyright_text_color: $lp_text_color; //コピーライトのテキストカラー
$lp_copyright_text_fontsize: 12px; //コピーライトのフォントサイズ
//角丸
$lp_border_radius_common: 10px;
$lp_border_radius_btn_common: 50vh;
//その他
$lp_max_width: 1100px; //検索結果コンテンツ幅調整用
$lp_border_color: #eee;
$lp_inPageLink_pc: 80px; //ページ内リンクPC(PC時のヘッダーの高さを指定)
$lp_inPageLink_sp: 52px; //ページ内リンクSP(SP時のヘッダーの高さを指定)
/*----------------------------------
LP button(ボタン)
----------------------------------*/
.component {
&.button {
&:is(
.lp_btn_custom01,
.lp_btn_custom02
) {
.button-cont {
a {
box-sizing: border-box;
letter-spacing: $lp_text_letter_spacing;
line-height: 1.3;
text-align: left;
text-decoration: none;
border-radius: 0;
//サイズ小のとき
&.size-s {
//フォントサイズやボタンの大きさを設定
min-width: 220px;
font-size: 14px;
padding: 9px 20px;
@include breakpoint-pro {
min-width: 200px;
}
@include breakpoint-sp {
min-width: 80%;
width: auto;
}
@include breakpoint-tb {
min-width: 200px;
}
}
//サイズ中のとき
&.size-m {
min-width: 280px;
font-size: 16px;
padding: 15.5px 20px;
@include breakpoint-sp {
width: auto;
min-width: 90%;
padding: 15px;
}
@include breakpoint-tb {
min-width: 280px;
}
}
//サイズ大のとき
&.size-l {
display: inline-block;
min-width: 350px;
font-size: 20px;
margin: auto;
padding: 20px;
@include breakpoint-sp {
width: 100%;
min-width: auto;
}
@include breakpoint-tb {
width: auto;
min-width: 350px;
}
}
&:hover {
opacity: 1;
}
}
}
}
//ボタン01
&.lp_btn_custom01 {
.button-cont {
a {
&:is(.size-s,.size-m,.size-l) {
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: $lp_border_radius_btn_common;
border: 2px solid rgba(0,0,0,0);
&::before {
content: "\f15c";
font-family: $font_family_awsm6;
font-weight: 400;
color: inherit;
margin-right: 10px;
position: relative;
top: .5px;
}
}
&:is(.blue,.red,.orange,.black,.white) {
background: $lp_main_color;
color: #fff;
border-color: $lp_main_color;
}
&:hover {
opacity: $lp_hover_opacity;
}
}
}
}
//ボタン02
&.lp_btn_custom02 {
.button-cont {
a {
&:is(.size-s,.size-m,.size-l) {
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: $lp_border_radius_btn_common;
border: 2px solid rgba(0,0,0,0);
&::before {
content: "\f0e0";
font-family: $font_family_awsm6;
font-weight: 400;
color: inherit;
margin-right: 10px;
position: relative;
top: .5px;
}
}
&:is(.blue,.red,.orange,.black,.white) {
background: $lp_sub_color;
color: #000;
border-color: $lp_sub_color;
}
&:hover {
opacity: $lp_hover_opacity;
}
}
}
}
//telボタン
&.lp_btn_custom_tel {
.button-cont {
a {
&:where(.size-s,.size-m,.size-l) {
background-color: transparent;
font-family: $lp_font_family;
letter-spacing: $lp_text_letter_spacing;
color: $lp_text_color;
text-decoration: none;
position: relative;
border-radius: 0;
margin: 0;
padding: 0;
//背景色とかborder色など外観を設定
&::before {
content: "\f095";
font-family: $font_family_awsm6;
font-size: 100%;
font-weight: 900;
position: relative;
margin-right: .3rem;
}
&:visited {
color: $lp_text_color;
text-decoration: none;
}
&:hover {
opacity: $lp_hover_opacity;
}
&.size-s {
font-size: 18px;
}
&.size-m {
font-size: 20px;
}
&.size-l {
display: inline-block;
font-size: 32px;
}
}
}
}
}
}
}
/*----------------------------------
LP heading(見出し)
----------------------------------*/
@mixin lp-heading {
.component {
&.heading {
&.lp_inPageLink {
@include breakpoint-pc {
margin-top: calc(-#{$lp_inPageLink_pc} - 10px);
padding-top: calc(#{$lp_inPageLink_pc} + 10px);
}
@include breakpoint-sp {
margin-top: calc(-#{$lp_inPageLink_sp} - 10px);
padding-top: calc(#{$lp_inPageLink_sp} + 10px);
}
}
&.lp_hd_custom01 {
:is(h1,h2,h3,h4,h5) {
font-family: $lp_font_family;
font-weight: $lp_hd_font_weight;
line-height: $lp_hd_line_height;
letter-spacing: $lp_hd_letter_spacing;
.strong {
font-weight: $lp_hd_font_strong;
}
@include breakpoint-sp {
overflow-wrap: break-word;
}
}
h1 {
font-size: $lp_hd_pc_h1_fontsize;
@include breakpoint-sp {
font-size: $lp_hd_sp_h1_fontsize;
}
}
h2 {
font-size: $lp_hd_pc_h2_fontsize;
@include breakpoint-sp {
font-size: $lp_hd_sp_h2_fontsize;
}
}
h3 {
font-size: $lp_hd_pc_h3_fontsize;
@include breakpoint-sp {
font-size: $lp_hd_sp_h3_fontsize;
}
}
h4 {
font-size: $lp_hd_pc_h4_fontsize;
@include breakpoint-sp {
font-size: $lp_hd_sp_h4_fontsize;
}
}
h5 {
font-size: $lp_hd_pc_h5_fontsize;
@include breakpoint-sp {
font-size: $lp_hd_sp_h5_fontsize;
}
}
}
/*--- カスタム見出し ---*/
// カスタム見出し01
&.lp_hd_custom01 {
:is(h1,h2) {
margin-bottom: 60px;
}
:is(h3,h4,h5) {
margin-bottom: 30px;
}
}
}
}
}
/*----------------------------------
LP richtext(テキスト)
----------------------------------*/
@mixin lp-richtext($lp-marginTop:10px) {
.component {
&.richtext {
font-family: $lp_font_family;
font-size: $lp_text_pc_fontsize;
color: $lp_text_color;
line-height: $lp_text_line_height;
letter-spacing: $lp_text_letter_spacing;
@include breakpoint-sp {
font-size: $lp_text_sp_fontsize;
}
:link {
text-decoration: none;
}
:visited {
text-decoration: none;
}
a {
color: $lp_a_text_color;
&:hover {
opacity: $lp_hover_opacity;
}
}
p {
font-size: inherit;
line-height: inherit;
margin: 0;
& + :is(p,ul,ol,.normal-table,.table-with-row-header,.table-with-two-headers,.component.button) {
margin-top: $lp-marginTop;
}
}
//リスト
li {
font-size: inherit;
a {
font-size: inherit;
}
}
//テーブル
table {
:is(thead,tbody,tr,th,td) {
border-color: #eee;
tr {
:is(th,td) {
background-clip: padding-box; //FF,edgeでボーダー消える現象回避;
position: static; //FF,edgeでボーダー消える現象回避;
p {
font-size: inherit;
& + :is(p,ul,ol,.component.button) {
margin-top: $lp-marginTop !important;
}
}
:is(ul,ol) {
margin-left: 25px;
& + :is(p,ul,ol,.component.button) {
margin-top: $lp-marginTop !important;
}
}
.component.button {
& + :is(p,ul,ol,.component.button) {
margin-top: $lp-marginTop !important;
}
}
}
}
}
}
:is(ul,ol) {
margin: 0 0 0 25px;
& + :is(p,ul,ol,.normal-table,.table-with-row-header,.table-with-two-headers,.component.button) {
margin-top: $lp-marginTop;
}
}
:is(table,.normal-table,.table-with-row-header,.table-with-two-headers) {
& + :is(p,ul,ol,.normal-table,.table-with-row-header,.table-with-two-headers,.component.button) {
margin-top: $lp-marginTop;
}
}
.component.button {
margin: 0;
&.button {
& + :is(p,ul,ol,.normal-table,.table-with-row-header,.table-with-two-headers,.component.button) {
margin-top: $lp-marginTop;
}
.button-cont {
a {
&.blue {
background: #254a73;
color: #fff !important;
text-decoration: none;
&:hover {
opacity: .4;
}
}
}
}
}
}
}
}
}
/*----------------------------------
LP form(フォーム)
----------------------------------*/
@mixin lp-form($font-weight:bold) {
.component {
&.form {
//カスタムフォーム
&.lp_form_custom {
font-family: $lp_font_family;
font-size: $lp_text_pc_fontsize;
color: $lp_text_color;
@include breakpoint-sp {
font-size: $lp_text_sp_fontsize;
}
.form-title {
font-size: inherit;
color: inherit;
&:empty {
display: none;
}
}
//エラー
.show-notice {
font-size: inherit;
border-radius: 0;
font-size: $lp_text_pc_fontsize;
@include breakpoint-sp {
font-size: $lp_text_sp_fontsize;
}
&:empty {
display: none;
}
span {
padding: 5px;
& + span {
padding: 0 5px 5px;
}
}
}
.form-label {
&::after {
line-height: 1.5;
padding: 3px 7px !important;
}
}
.contact_form {
font-size: inherit;
color: inherit;
input {
accent-color: $lp_main_color;
}
//inputフルカスタム(必要な時に使用)
input[type="text"],
input[type="email"],
input[type="password"],
input[type="date"],
input[type="search"],
input[type="url"],
select,
textarea {
background: #fff;
height: auto;
font-family: inherit !important;
font-size: inherit;
line-height: $lp_text_line_height;
letter-spacing: $lp_text_letter_spacing;
color: inherit;
border-radius: 0;
border: solid 1px rgba(0,0,0,.20);
padding: .6rem .75rem;
&::placeholder {
font-family: inherit;
font-size: inherit;
color: rgba(0,0,0,.30);
}
&:hover {}
&:focus {
background-color: #fff;
color: #555;
border-color: #5a5a5a;
}
}
input[type="text"].form-error,
input[type="email"].form-error,
input[type="password"].form-error,
input[type="date"].form-error,
input[type="search"].form-error,
input[type="url"].form-error,
select.form-error,
textarea.form-error {
background: #fdf5f2;
border: 1px solid $lp_form_hissu_color !important;
}
.group {
font-size: inherit;
color: inherit;
margin: 20px 0;
.form-cont {
font-size: inherit;
color: inherit;
}
}
.form-label {
font-size: inherit;
@include breakpoint-sp {
display: inline-block !important;
}
}
.agree-label {
line-height: 1.5;
}
.form-cont {
font-size: inherit;
p {
font-size: inherit;
margin-top: .25rem;
}
:is(.checkbox,.radio) {
label {
display: flex;
align-items: center;
}
}
}
//規約テキスト
.service_term {
background: #fff;
overflow: auto;
font-size: inherit;
padding: 20px;
}
//規約リンク
.service_term_link {
font-size: inherit;
margin-top: 20px;
margin-bottom: 5px;
a {
color: $lp_a_text_color;
letter-spacing: 0;
text-decoration: none;
&:hover {
opacity: .4;
}
}
& + label.agreement {
padding: 5px 0;
.form-label {
display: flex !important;
align-items: center;
padding: 0;
&::after {
position: initial;
padding: 3px 7px !important;
}
}
}
}
}
}
//送信ボタンスタイル
&.lp_form_btn_custom01 {
.form-submit {
margin-top: 20px;
.popup-link {
min-width: 200px;
background: $lp_main_color;
font-family: $lp_font_family;
font-size: 18px;
font-weight: $font-weight;
border: 1px solid $lp_main_color;
border-radius: $lp_border_radius_btn_common;
padding: 15px 60px;
@include breakpoint-tb {
min-width: 200px;
width: auto;
}
@include breakpoint-sp {
padding: 10px 60px;
}
&:hover {
background: #fff;
color: $lp_main_color;
}
}
}
}
//フォームの必須
.form-label.require {
&:after {
background: $lp_form_hissu_color;
margin-left: 20px;
}
}
input[type=checkbox],
input[type=radio] {
min-height: auto;
}
&.vertical {
.form-label {
&:after {
position: relative;
top: -2px;
}
}
}
&.horizontal {
.form-label {
&:after {
@include breakpoint-pc {
top: 6px;
}
@include breakpoint-sp {
top: -3px;
}
}
}
}
}
}
}
/*----------------------------------
LP メインビジュアル
----------------------------------*/
@mixin lp-mv {
&.lp_mv_sec {
padding: 0;
}
}
/*----------------------------------
LP contents(コンテンツ)
----------------------------------*/
@mixin lp-contents {
font-family: $lp_font_family;
color: $lp_text_color;
line-height: $lp_text_line_height;
letter-spacing: $lp_text_letter_spacing;
//セクション余白調整
@include breakpoint-pc {
padding: calc(#{$lp_section_padding} - 30px) 0 calc(#{$lp_section_padding} - 40px);
}
@include breakpoint-sp {
padding: $lp_section_sp_padding 0;
}
&.lp_cta_sec {
.inner {
.row {
.col {
.component {
&.cta {
margin: 0;
}
}
}
}
}
}
.inner {
.row {
//よくあるご質問
&.lp_faq_row {
margin: 10px 0 20px;
& + .lp_faq_row {
margin-top: 40px;
}
.col {
background: #fff;
box-shadow: $lp_box_shadow_common;
border-radius: $lp_border_radius_common;
padding: 20px;
.component {
&.richtext {
&:is(.faq_qu,.faq_an) {
position: relative;
border-bottom: 1px solid $lp_border_color;
margin: 0;
padding: 15px 15px 15px 50px;
@include breakpoint-sp {
padding-left: 40px;
}
&::before {
content: "Q.";
display: inline-block;
font-size: 28px;
font-weight: bold;
color: $lp_accent_color;
position: absolute;
left: 5px;
top: 4px;
@include breakpoint-sp {
top: 2px;
}
}
}
&.faq_an {
border-bottom: 0;
&::before {
content: "A.";
color: $lp_text_color;
}
}
}
}
}
}
.col {
.component {
&.richtext {}
&.image {}
&.list {}
}
}
}
}
}
/*----------------------------------
LP body(本体)
基本触らないでください
----------------------------------*/
//ヘッダー固定時ズレを修正
html {
&:has(.lp_sticky_sec) {
@include breakpoint-pc {
scroll-padding-top: calc(#{$lp_header_height} + 10px);
}
@include breakpoint-sp {
scroll-padding-top: calc(#{$lp_header_height} + 10px);
}
}
}
@include theme-fo-base {
//LPヘッダー
&.lp_header_sec {
font-family: $lp_font_family;
color: $lp_text_color;
line-height: $lp_text_line_height;
letter-spacing: $lp_text_letter_spacing;
padding: 0;
@include lp-heading();
@include lp-richtext();
@include lp-form();
.inner {
padding: 10px 20px;
@include breakpoint-sp {
padding: 10px;
}
.row {
&.header_row {
display: flex;
align-items: center;
@include breakpoint-pc {
min-height: 60px;
}
.col {
padding: 0;
&.logo_col {
@include breakpoint-pc {
max-width: 300px;
min-width: 150px;
width: auto !important;
}
.component {
&.image {
margin: 0;
&.lp_logo_img {
img {
@include breakpoint-pc {
max-width: $lp_header_logo !important;
width: 100% !important;
}
@include breakpoint-sp {
max-height: $lp_header_sp_logo !important;
}
}
}
}
}
}
&.btn_col {
display: flex !important;
justify-content: flex-end;
align-items: center;
flex: 1;
@include breakpoint-pc {
width: auto !important;
}
.component {
margin: 0;
&:not(:first-child) {
@include breakpoint-pc {
margin-left: 15px;
}
}
&.button {
margin-top: 0;
.button-cont {
a {
@include breakpoint-sp {
background: none;
width: auto;
min-width: auto;
font-size: 0 !important;
letter-spacing: 0;
border-radius: 0;
border: 0;
margin: 0;
box-shadow: none;
padding: 5px 10px 5px 5px;
}
&::before {
@include breakpoint-sp {
font-size: 22px;
line-height: 1;
color: $lp_main_color;
margin: 0;
}
}
}
}
}
}
}
}
}
&.nav_row {
@include breakpoint-pc {
margin: 20px 0 -10px;
}
.col {
padding: 0;
.component {
&.list {
margin: 0;
ul {
@include breakpoint-pc {
display: table;
width: 100%;
table-layout: fixed;
}
li {
margin: 0;
padding: 0;
font-size: 14px;
@include breakpoint-pc {
display: table-cell;
}
@include breakpoint-sp {
width: 50%;
}
a {
display: block;
font-size: inherit;
color: inherit;
text-align: center;
padding: 20px 10px;
@include breakpoint-sp {
padding: 10px 5px;
}
&:hover {
background-color: $lp_main_color;
color: #fff;
}
}
}
}
}
}
}
}
}
}
//LPコンテンツ記述
& ~ section {
@include lp-heading();
@include lp-richtext();
@include lp-form();
@include lp-mv();
@include lp-contents();
//フッター
&.lp_footer_sec {
padding: 0;
.inner {
max-width: 100% !important;
padding: 0;
.row {
padding: 0;
&:not(.copyright_row) {
max-width: $lp_max_width;
margin: 0 auto;
padding: 0 20px;
}
&.site_map_row {
padding: 40px 20px;
.col {
vertical-align: middle;
}
}
&.page_top_row {
@include page_top;
}
&.copyright_row {
.col {
padding: 0;
.component {
&.richtext {
&.foot-copyright {
@include copyright_custom;
}
}
}
}
}
.col {
padding: 0;
.component {
&.image {
&.footLogo_img {
img {
max-width: 250px !important;
width: 100% !important;
}
}
}
&.list {
&.site_map_list {
ul {
display: flex;
gap: 10px 20px;
@include breakpoint-sp {
flex-direction: column;
}
li {
margin: 0;
padding: 0;
a {
color: inherit;
&:hover {
opacity: $lp_hover_opacity;
}
}
}
}
&.vertical {
ul {
flex-direction: column;
li {
a {
padding: 0;
}
}
}
}
}
}
}
}
}
}
}
}
}
//LPセクション固定
&.lp_sticky_sec {
position: sticky;
top: 0;
z-index: 1000;
box-shadow: $lp_box_shadow_nav_common;
}
}
/*------------- LP(フルカスタム用) END-------------*/
/*----------------------------------
JSパーツ記述場所
----------------------------------*/
/*------------- JSパーツ記述場所 END-------------*/
//col空処理
@include theme-fo-base {
.inner {
.row {
.col {
&:empty {
background: none;
border: 0;
box-shadow: none;
@include breakpoint-sp {
display: none !important;
}
}
}
}
}
}
/*----------------------------------
編集画面用CSS(編集画面のみに効くCSS)
----------------------------------*/
@include edit-page {
//既存フォント以外のフォントファミリー設定(使用しない場合は削除してください)
// --fo-heading-font-family: "Hiragino Kaku Gothic ProN", Meiryo, メイリオ, sans-serif;
// --fo-text-font-family: "Hiragino Kaku Gothic ProN", Meiryo, メイリオ, sans-serif;
//SP編集画面の幅制限
@include breakpoint-sp {
max-width: 769px;
margin: auto;
}
.pcOnly {
border: 1px solid blue;
&::before {
content: "PCのみ表示";
background: blue;
color: #fff;
position: absolute;
top: -24px;
right: 0;
padding: 0 5px;
}
}
.spOnly {
@include breakpoint-pc {
display: block !important;
border: 1px solid red;
opacity: .5;
z-index: 1;
}
&::before {
@include breakpoint-pc {
content: "SPのみ表示";
position: absolute;
background: red;
color: #fff;
top: -24px;
right: 0;
padding: 0 5px;
}
}
}
.displayNone {
@include breakpoint-pc {
display: block !important;
opacity: .5;
}
&::before {
@include breakpoint-pc {
content: "classで非表示設定";
background: black;
color: #fff;
position: absolute;
top: -24px;
right: 0;
padding: 0 5px;
}
}
}
//新CMS編集画面の共通ナビ固定解除
header#navigations {
&[class*="one_row_fix-navi"],
&[class*="two_row_fix-navi"] {
position: relative !important;
width: 100%;
&::after {
content: "ナビ固定中";
background: #0987d4;
box-sizing: border-box;
width: 100%;
font-size: 18px;
line-height: 25px;
color: #fff;
text-align: center;
position: absolute;
bottom: -45px;
padding: 10px;
z-index: -1;
}
}
}
//hover時に下線を削除
:is(.navi-001-01,.navi-002-01) {
header {
.inner {
.main-menu {
.level-01-trigger {
&:hover {
text-decoration: none;
}
}
a {
text-decoration: none;
}
}
}
}
}
//メインビジュアルパレット見えない対策
.theme-fo-base {
//新CMS編集画面のヘッダ固定解除
&[style*="padding-top"] {
padding-top: 45px !important;
}
}
//オーバーレイが公開画面で二重にかかるバグ
.theme-fo-base {
.main-visual {
.overlay {
display: block !important;
}
}
}
//row余白調整
:where(.theme-fo-base) {
:where(
.main-visual .main-visual-content,
.wrapper .contents section .inner,
.foot .foot-cont
) {
:where(.row) {
&:not(:first-child) {
margin-top: 30px;
}
}
}
}
//sticky解放用
.theme-fo-base {
&:has(:is(.lp_sticky_sec)) {
.wrapper {
.contents {
section {
overflow: visible;
}
}
}
}
}
//ページ内リンクずれ対策class
.theme-fo-base {
.wrapper {
.contents {
section {
.component {
&.heading {
&.inPage_link {
margin-top: 10px;
padding-top: 0;
}
}
}
}
}
}
}
//コンテンツ
.theme-fo-base {
.wrapper {
.contents {
section {
//編集画面内の仕様回避の為
margin: 50px 0 !important;
&.foPrp_footer_sec {
margin-bottom: 100px !important;
.inner {
padding: 20px 0;
.row {
.col {
.component {
&.cta {
.cta-row {
&.page_top_row {
@include edit-page_top;
margin-bottom: 30px;
}
}
}
}
}
}
}
}
.inner {
.row {
.col {
.component {
&.richtext {
&.foot-copyright {
text-align: center;
@include copyright_custom;
}
}
}
}
}
}
}
}
}
}
//sp時センター寄せ
.component {
&.button {
&.sp_center {
&::before {
content: "SP時に中央よせ";
background: #0987d4;
color: #fff;
position: absolute;
bottom: -24px;
left: 0;
padding: 0 5px;
}
}
}
}
//フッター
.theme-fo-base {
.foot {
&.ft_custom {
.foot-cont {
.row {
&.page_top_row {
@include edit-page_top;
}
}
}
}
}
}
//カスタムパーツの記述はここにお願いします
.theme-fo-base {
.wrapper {
.contents {
section {
.inner {
.row {
.col {}
}
}
}
}
}
}
//LPの記述はここにお願いします
.theme-fo-base {
.wrapper {
.contents {
section {
&.lp_sticky_sec {
position: relative;
&::after {
content: "固定中";
color: #fff;
font-size: 18px;
position: absolute;
bottom: -45px;
line-height: 25px;
width: 100%;
box-sizing: border-box;
background: #0987d4;
text-align: center;
padding: 10px;
}
}
&.lp_footer_sec {
.inner {
.row {
&.page_top_row {
.col {
.component {
&.image {
position: static !important;
margin: 10px 0 !important;
&::before {
content: "ページ右下に固定されます";
display: inline-block;
text-align: center;
background: #0987d4;
color: #fff;
position: absolute;
right: 0;
bottom: -24px;
left: 0;
z-index: 1;
padding: 0 5px;
}
}
}
}
}
&.copyright_row {
margin-top: 30px;
}
}
}
}
.inner {
.row {
.col {
.component {
&.heading {
&.lp_inPageLink {
margin-top: 10px;
padding-top: 0;
}
}
}
}
}
}
}
}
}
}
//JSパーツの記述はここにお願いします
.theme-fo-base {
.wrapper {
.contents {
section {
.inner {
.row {
.col {}
}
}
}
}
}
}
//共通パーツに白文字を使った時の警告文
&:has(.inner > [class*="id-"]) {
&::after {
content: "何も表示されない場合は「白」設定の可能性があるので、右上の「ダークモード」をONにしてください";
color: #c70909;
font-size: 12px;
line-height: 1.3;
white-space: pre;
padding: 5px;
border: 1px solid #c70909;
position: absolute;
top: -28px;
left: 0;
}
}
//共通パーツに白文字を使った時の警告文 end
}
/*------------- 編集画面用CSS END -------------*/
© Basic Inc. All Rights Reserved.