/* ========================================================================== common ========================================================================== */ @PARENT_MAX_WIDTH: 1200px; @TABLET_WIDTH: 769px; @PHONE_WIDTH: 599px; /* ========================================================================== body ========================================================================== */ @BODY_FONT_FAM: 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; @BODY_FONT_COLOR: #333; @BODY_FONT_SIZE: 16px; @BODY_LETTER_SPACING: 0.08em; @BODY_BG: #fff; .yum { font-family: "Noto Serif JP","游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", "MS 明朝", serif; } .yug { font-family: @BODY_FONT_FAM; } /* ========================================================================== color ========================================================================== */ @PRIMARY_PINK: #E0577F; @PRIMARY_PURPLE: #694567; @PRIMARY_GREEN: #54BA73; @PRIMARY_ORANGE: #FE9148; @PRIMARY_PINK2: #FEF2F3; @PRIMARY_PURPLE2: #FAF5FF; @PRIMARY_GREEN2: #E7F1E8; @PRIMARY_ORANGE2: #FFF4EE; @PRIMARY_COLOR: #E0577F; @SECONDARY_COLOR: #6E7F89; @THIRDLY_COLOR:#ff8800; @PRIMARY_RED: #ff0000; @PRIMARY_BLUE: #0000bf; @PRIMARY_YELLOW: #ffe100; @PRIMARY_GRAY: #EDF4F7; @PRIMARY_BLACK: #111; @PRIMARY_WHITE: #fff; /* ========================================================================== ここからスタイル ========================================================================== */ html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; font-weight: normal; } img { border-style: none; vertical-align: bottom; max-width: 100%; } svg:not(:root) { overflow: hidden; } .ap_hidden { display: none !important; visibility: hidden; } a { text-decoration: none; color:@BODY_FONT_COLOR; transition: 0.5s; } a:hover { color: @PRIMARY_COLOR; transition: 0.5s; } /* ========================================================================== サイズrem ========================================================================== */ .fs16 { font-size: 1.6rem; } .fs18 { font-size: 1.8rem; } .fs20 { font-size: 2rem; } .fs22 { font-size: 2.2rem; } .fs24 { font-size: 2.4rem; } .fs26 { font-size: 2.6rem; } .fs28 { font-size: 2.8rem; } .fs30 { font-size: 3rem; } .fs32 { font-size: 3.2rem; } .fs34 { font-size: 3.4rem; } .fs36 { font-size: 3.6rem; } .fs38 { font-size: 3.8rem; } .fs40 { font-size: 4rem; } .fs42 { font-size: 4.2rem; } .fs44 { font-size: 4.4rem; } .fs46 { font-size: 4.6rem; } .fs48 { font-size: 4.8rem; } .fs50 { font-size: 5rem; } .fs52 { font-size: 5.2rem; } .fs54 { font-size: 5.4rem; } .fs56 { font-size: 5.6rem; } .fs58 { font-size: 5.8rem; } .fs60 { font-size: 6rem; } /* ========================================================================== font-size ========================================================================== */ html { font-size: 62.5%; text-size-adjust: 100%; -webkit-text-size-adjust: 100%; } @media screen and (max-width: 1400px) { html { font-size: 55%; } } @media screen and (max-width: 1200px) { html { font-size: 50%; } a, p, th, td, ul, ol, li, dl, dt, dd{ font-size: 16px; } } @media screen and (max-width: 1024px) { html { font-size: 45%; } } @media screen and (max-width: @PHONE_WIDTH) { html { font-size: 40%; } span, a, p, th, td, ul, ol, li, dl, dt, dd{ font-size: 14px; } } /* ========================================================================== サイズ固定値 ========================================================================== */ /*pcから固定*/ .fixed_16fs{ font-size: 16px; } .fixed_14fs{ font-size: 14px; } .fixed_12fs{ font-size: 12px; } /*1400pxから固定*/ @media screen and (max-width: 1400px) { .fixed_16fs_sp{ font-size: 16px!important; } .fixed_14fs_sp{ font-size: 14px!important; } .fixed_12fs_sp{ font-size: 12px!important; } } /* ========================================================================== common ========================================================================== */ body { font-family: @BODY_FONT_FAM; font-size: @BODY_FONT_SIZE; color: @BODY_FONT_COLOR; background: @BODY_BG; letter-spacing: @BODY_LETTER_SPACING; overflow-wrap: break-word; word-break: normal; overflow-x: hidden; max-width: 100vw; word-wrap: break-word; } ul { list-style: none; } section { padding: 5rem 0; } .sm_side{ padding: 0 2rem; } .ap_inner{ width: 90%; max-width: @PARENT_MAX_WIDTH; margin: 0 auto; box-sizing: border-box; } .ap_pagetop{ cursor:pointer; } .ap_tb_visible { display: none; } .ap_sm_visible { display: none; } @media screen and (max-width: @TABLET_WIDTH) { .ap_tb_visible { display: block; } .ap_tb_hidden { display: none !important; } } @media screen and (max-width: @PHONE_WIDTH) { .ap_sm_hidden { display: none !important; } .ap_sm_visible { display:block; } } /*ap_flex*/ .ap_flex { display: flex; &.reverse { flex-direction: row-reverse; } &.end { justify-content: flex-end; } &.center { position: relative; align-items: center; } &.wrap { flex-wrap: wrap; } &.just_center { justify-content: center; } &.between{ justify-content: space-between; } &.around{ justify-content: space-around; } &.stretch{ align-items:stretch; } } /*カラム設定*/ .column2, .column3, .column4, .column5 { display: flex; flex-wrap: wrap; justify-content: space-between; } .column2.center, .column3.center, .column4.center, .column5.center { align-items: center; } @media screen and (max-width: 1279px) { .column2, .column3, .column4, .column5 { justify-content: space-around; } } .column2>figure, .column2>div, .column2>li, .column2>img{ width: 48%; } @media screen and (max-width: 767px) { .column2>figure, .column2>div, .column2>li, .column2>img{ width: 100%; } } .column3>figure, .column3>div, .column3>li, .column3>img{ width: 31.7%; } @media screen and (max-width: 767px) { .column3>figure, .column3>div, .column3>li, .column3>img{ width: 100%; } } .column4>figure, .column4>div, .column4>li, .column4>img{ width: 23.2%; } @media screen and (max-width: 1279px) { .column4>figure, .column4>div, .column4>li, .column4>img{ min-width: 45%; } } .column5>figure, .column5>div, .column5>li, .column5>img{ width: 17%; } @media screen and (max-width: 1279px) { .column5>figure, .column5>div, .column5>li, .column5>img{ min-width: 45%; } } /*ポインター*/ .ap_pointer{ cursor: pointer; } .ap_pointer_none{ pointer-events: none; } /*文字数制限*/ .ellipsis { width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .line-clamp { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; } /*共通装飾*/ .ap_bold{ font-weight: bold; } .ap_underline{ text-decoration: underline; } /* ========================================================================== margin_style ========================================================================== */ .ma { margin: 0 auto; } .mb0{ margin-bottom: 0; } .mb5{ margin-bottom: 0.5rem; } .mb10{ margin-bottom: 1rem; } .mb15 { margin-bottom: 1.5rem; } .mb20{ margin-bottom: 2rem; } .mb25{ margin-bottom: 2.5rem; } .mb30{ margin-bottom: 3rem; } .mb35{ margin-bottom: 3.5rem; } .mb40{ margin-bottom: 4rem; } .mb45{ margin-bottom: 4.5rem; } .mb50 { margin-bottom: 5rem; } .mb55 { margin-bottom: 5.5rem; } .mb60 { margin-bottom: 6rem; } .mb65 { margin-bottom: 6.5rem; } .mb70 { margin-bottom: 7rem; } .mb75 { margin-bottom: 7.5rem; } .mb80 { margin-bottom: 8rem; } .mb85 { margin-bottom: 8.5rem; } .mb90 { margin-bottom: 9rem; } .mb95 { margin-bottom: 9.5rem; } .mb100{ margin-bottom: 10rem; } .mt0{ margin-top: 0.5rem; } .mt10{ margin-top: 1rem; } .mt15 { margin-top: 1.5rem; } .mt20{ margin-top: 2rem; } .mt25{ margin-top: 2.5rem; } .mt30{ margin-top: 3rem; } .mt35{ margin-top: 3.5rem; } .mt40{ margin-top: 4rem; } .mt45{ margin-top: 4.5rem; } .mt50 { margin-top: 5rem; } .mt55 { margin-top: 5.5rem; } .mt60 { margin-top: 6rem; } .mt65 { margin-top: 6.5rem; } .mt70 { margin-top: 7rem; } .mt75 { margin-top: 7.5rem; } .mt80 { margin-top: 8rem; } .mt85 { margin-top: 8.5rem; } .mt90 { margin-top: 9rem; } .mt95 { margin-top: 9.5rem; } .mt100{ margin-top: 10rem; } /* ========================================================================== font_style ========================================================================== */ .ap_center_text { text-align: center !important; } .ap_right_text { text-align: right !important; } .ap_left_text { text-align: left !important; } .ap_primary, .ap_primary a, a.ap_primary{ color:@PRIMARY_COLOR; } .ap_secondary, .ap_secondary a, a.ap_secondary{ color:@SECONDARY_COLOR; } .ap_thirdly, .ap_thirdly a, a.ap_thirdly{ color:@THIRDLY_COLOR; } .ap_red, .ap_red a, a.ap_red { color: @PRIMARY_RED; } .ap_orange, .ap_orange a, a.ap_orange { color: @PRIMARY_ORANGE; } .ap_blue, .ap_blue a, a.ap_blue { color: @PRIMARY_BLUE; } .ap_purple, .ap_purple a, a.ap_purple { color: @PRIMARY_PURPLE; } .ap_green, .ap_green a, a.ap_green { color: @PRIMARY_GREEN; } .ap_yellow, .ap_yellow a, a.ap_yellow { color: @PRIMARY_YELLOW; } .ap_pink, .ap_pink a, a.ap_pink { color: @PRIMARY_PINK; } .ap_gray, .ap_gray a, a.ap_gray { color: @PRIMARY_GRAY; } .ap_black, .ap_black a, a.ap_black { color: @PRIMARY_BLACK; } .ap_white, a.ap_white .ap_white a { color: @PRIMARY_WHITE; } /* ========================================================================== background_style ========================================================================== */ .ap_bg_primary{ background:@PRIMARY_COLOR; } .ap_bg_secondary{ background:@SECONDARY_COLOR; } .ap_bg_thirdly{ background:@THIRDLY_COLOR; } /* ========================================================================== button_style ========================================================================== */ #header{ position: relative; } .ap_menu_btn_trigger { position: relative; width: 35px; height: 30px; cursor: pointer; } .ap_menu_btn_trigger span { position: absolute; left: 0; width: 100%; height: 3px; background-color: #000; border-radius: 50px; } .ap_menu_btn_trigger, .ap_menu_btn_trigger span { display: inline-block; transition: all 0.5s; box-sizing: border-box; } .ap_menu_btn_trigger span:nth-of-type(1) { top: 0; } .ap_menu_btn_trigger span:nth-of-type(2) { top: 13.5px; } .ap_menu_btn_trigger{ & span:nth-of-type(3){ bottom: 0; } } .ap_menu_btn_trigger.active span:nth-of-type(1) { -webkit-transform: translateY(13.5px) rotate(-45deg); transform: translateY(13.5px) rotate(-45deg); } .ap_menu_btn_trigger.active span:nth-of-type(2) { left: 50%; opacity: 0; -webkit-animation: active-btn05-bar02 0.8s forwards; animation: active-btn05-bar02 0.8s forwards; } @-webkit-keyframes active-btn05-bar02 { 100% { height: 0; } } @keyframes active-btn05-bar02 { 100% { height: 0; } } .ap_menu_btn_trigger.active span:nth-of-type(3) { -webkit-transform: translateY(-13.5px) rotate(45deg); transform: translateY(-13.5px) rotate(45deg); } /* ========================================================================== 404_style ========================================================================== */ .wrap.not_found [class*="ap_col_child"]{ display: flex; align-items: center; min-height: 30vh; } /* ========================================================================== input_style ========================================================================== */ input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea, select { color: #666; background-image: -webkit-linear-gradient( rgba(255, 255, 255, 0), rgba(255, 255, 255, 0) ); display: block; padding: 0.7em; border: 1px solid #666; width: 100%; transition: 0.25s; appearance: none; background: #fff; border-radius: 3px; min-height: 4rem; } input[type="text"]:hover, input[type="email"]:hover, input[type="password"]:hover, input[type="date"]:hover, input[type="tel"]:hover, textarea:hover, textarea:focus, select:hover, select:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, input[type="tel"]:focus, input[type="date"]:focus { transition: 0.25s; box-shadow: 0px 0px 10px 0.2px @PRIMARY_COLOR; outline: 0; &::placeholder{ font-size: 0; color: #fff; } } /*チェックボックスのCSS*/ input[type="checkbox"] { position: absolute; opacity: 0; } .wpcf7-list-item { position: relative; display: block; margin: 0 0 1rem 0; } /*チェックボックスの枠*/ .wpcf7-list-item-label:before { content: ''; display: inline-block; width: 2rem; height: 2rem; position: relative; top: -3px; margin-right: 2rem; vertical-align: middle; cursor: pointer; text-align: center; background: #fff; border: 1px solid #666; border-radius: 3px; } /* ========================================================================== 電話番号 ========================================================================== */ @media screen and (min-width: @PHONE_WIDTH){ a[href*="tel:"] { pointer-events: none; cursor: default; text-decoration: none; } } /* ========================================================================== 旧※基本的に使わないでください ========================================================================= .ap_col_container { width: 100%; position: relative; &.full{ display: flex; } } .ap_col_parent { width: 100%; max-width: @PARENT_MAX_WIDTH; margin: 0 auto; box-sizing: border-box; display: flex; display: -ms-flexbox; flex-direction: row; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-wrap: nowrap; &.reverse { flex-direction: row-reverse; } &.end { justify-content: flex-end; } &.center { align-items: center; } &.full { max-width: 100vw; } &.wrap { flex-wrap: wrap; } &.just_center { justify-content: center; } &.between{ justify-content: space-between; } &.around{ justify-content: space-around; } } [class*="ap_col_child"] { word-wrap: break-word; max-width: 100%; } .ap_col_child_1 { width: (@PARENT_MAX_WIDTH / 12); } .ap_col_child_2 { width: ((@PARENT_MAX_WIDTH / 12) * 2) ; } .ap_col_child_3 { width: ((@PARENT_MAX_WIDTH / 12) * 3) ; } .ap_col_child_4 { width: ((@PARENT_MAX_WIDTH / 12) * 4) ; } .ap_col_child_5 { width: ((@PARENT_MAX_WIDTH / 12) * 5) ; } .ap_col_child_6 { width: ((@PARENT_MAX_WIDTH / 12) * 6) ; } .ap_col_child_7 { width: ((@PARENT_MAX_WIDTH / 12) * 7) ; } .ap_col_child_8 { width: ((@PARENT_MAX_WIDTH / 12) * 8) ; } .ap_col_child_9 { width: ((@PARENT_MAX_WIDTH / 12) * 9) ; } .ap_col_child_10 { width: ((@PARENT_MAX_WIDTH / 12) * 10) ; } .ap_col_child_11 { width: ((@PARENT_MAX_WIDTH / 12) * 11) ; } .ap_col_child_12 { width: @PARENT_MAX_WIDTH ; } @BASE_PERCENT: 0.08333; .ap_col_child_p_1 { width: percentage(@BASE_PERCENT); } .ap_col_child_p_2 { width: (percentage(@BASE_PERCENT * 2)); } .ap_col_child_p_3 { width: (percentage(@BASE_PERCENT * 3)); } .ap_col_child_p_4 { width: (percentage(@BASE_PERCENT * 4)); } .ap_col_child_p_5 { width: (percentage(@BASE_PERCENT * 5)); } .ap_col_child_p_6 { width: (percentage(@BASE_PERCENT * 6)); } .ap_col_child_p_7 { width: (percentage(@BASE_PERCENT * 7)); } .ap_col_child_p_8 { width: (percentage(@BASE_PERCENT * 8)); } .ap_col_child_p_9 { width: (percentage(@BASE_PERCENT * 9)); } .ap_col_child_p_10 { width: (percentage(@BASE_PERCENT * 10)); } .ap_col_child_p_11 { width: (percentage(@BASE_PERCENT * 11)); } .ap_col_child_p_12 { width: (percentage(@BASE_PERCENT * 12)); } */ @import "yourstyle.less"; @import "old_style.less";