@charset "UTF-8";
/* ===================================
基本設定
=================================== */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
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 {
padding: 0;
margin: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
border: 0;
outline: 0;
}
body {
line-height: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
display: block;
}
nav ul {
list-style: none;
}
blockquote,
q {
quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
content: "";
content: none;
}
a {
padding: 0;
margin: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
}
/* change colours to suit your needs */
ins {
color: #000;
text-decoration: none;
background-color: #ff9;
}
/* change colours to suit your needs */
mark {
color: #000;
font-style: italic;
font-weight: bold;
background-color: #ff9;
}
del {
text-decoration: line-through;
}
abbr[title],
dfn[title] {
border-bottom: 1px dotted;
cursor: help;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* change border colour to suit your needs */
hr {
display: block;
height: 1px;
padding: 0;
margin: 1em 0;
border: 0;
border-top: 1px solid #ccc;
}
input,
select {
vertical-align: middle;
}
*,
*::before,
*::after {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
svg,
img {
max-width: 100%;
vertical-align: middle;
}
li {
list-style: none;
}
/* ===================================
共通
=================================== */
/* フォント */
html {
font-size: 16px;
}
body {
color: #000;
font-family: source-han-sans-japanese, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
-webkit-font-smoothing: antialiased;
line-height: 1.5;
-webkit-text-size-adjust: 100%;
}
.serif {
font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", "MS 明朝", serif;
}
.ff-din {
font-family: din-2014-narrow, sans-serif;
font-style: normal;
font-weight: 700;
}
/* ===================================
画面全体のレイアウト
=================================== */
/* 画面全体の表示設定 */
body {
color: #333;
text-align: center;
/* フォームエリアを中央に表示 */
}
/* フォームエリア全体の設定 */
div.container {
/* フォントの初期サイズ */
margin: 0 auto;
font-size: 16px;
/* 画面の中央に表示 */
text-align: left;
/* 左寄せ */
}
/* ===================================
設問エリアのレイアウト
=================================== */
/* 設問エリア全体の設定 */
div.wrapper {
width: 940px;
/* 画面の横幅 */
margin: 0 auto;
/* 中央に表示 */
}
/* 設問の行 */
tr.item {
border-bottom: 1px solid #c9c9c9;
}
/* 必要であれば行のデザインを設定することができます */
/*設問名のセルのデザイン */
td.label {
width: 200px;
/* 実際の設問名の文字の長さに合わせて調整してください */
padding: 12px 12px;
font-size: 16px;
font-weight: bold;
vertical-align: middle;
/* ラベルの配置 セルの上部に表示したい場合は top */
}
/* 設問の入力セルおよび表示セルのデザイン */
td.value {
width: 500px;
/* 入力コントロールの幅に合わせて調整してください */
padding: 12px 12px;
}
/* 設問の入力例/説明セルのデザイン */
td.comment {
padding-left: 10px;
color: DarkSlateGray;
font-size: 14px;
background: White;
}
/* 入力セルの「氏」「名」の文字のデザイン */
span.label_name {
padding-right: 5px;
color: DarkSlateGray;
font-size: 85%;
font-weight: bold;
}
/* 入力確認画面、完了画面の入力された文字のデザイン */
p.value {
font-size: 110%;
}
/* ボタンの表示エリアの設定 */
div.button_area {
width: 940px;
padding: 10px 0 10px 0;
margin: 10px auto 60px auto;
/* ボタンとの上下の隙間のサイズ */
text-align: center;
/* 中央に表示、上下に10pxの余白 */
background: GhostWhite;
/* 中央にボタンを表示 */
}
/* 入力エラーメッセージのデザイン */
div.message {
padding: 5px 10px 5px 10px;
/* メッセージテキストと背景色の隙間のサイズ */
margin: 10px 13px 10px 13px;
color: OrangeRed;
/* 上 右 下 左 の隙間のサイズ */
font-size: 14px;
font-weight: bold;
background: LightYellow;
}
/* 公開終了メッセージのデザイン */
div.finished-message {
padding: 5px 10px 5px 10px;
/* メッセージテキストと背景色の隙間のサイズ */
margin: 10px 13px 10px 13px;
color: Crimson;
/* 上 右 下 左 の隙間のサイズ */
font-size: 14px;
font-weight: bold;
background: MistyRose;
}
/* ===================================
入力コントロールのデザイン
=================================== */
/* 確認/送信/戻る/登録ボタン */
input[type=button] {
/* ボタンの色 */
padding: 5px 10px 2px 10px;
/* ボタンの文字の 上 右 下 左 の隙間のサイズ */
margin: 0 10px 0 10px;
/* ボタンに枠線をつけたい場合は、ここを設定してください */
color: white;
font-size: 18px;
/* 文字の色 */
font-weight: bold;
background: Steelblue;
/* 確認画面に表示される2つのボタンの左右の余白サイズ */
border: none;
}
input[type=button]:hover {
cursor: pointer;
}
/* 入力中のフィールドの背景色 */
/* それぞれの入力フィールドにカーソルが移動したときに背景の色が変わります。不要な場合は削除してください。 */
input[type="text"]:focus {
background-color: LightYellow;
}
/* テキストボックス */
select:focus {
background-color: LightYellow;
}
/* プルダウン */
textarea:focus {
background-color: LightYellow;
}
/* テキストエリア */
/* ===================================
必須項目のマークおよびメッセージなど
=================================== */
/* 必須項目のマーク */
span.required {
float: right;
margin-right: 4px;
color: OrangeRed;
font-size: 60%;
font-weight: bold;
}
span.required:after {
/* ここを編集することで表示されるマークを変更できます */
content: "※必須";
}
/* 必須項目についての説明文 */
p.required_msg {
margin-right: 4px;
color: OrangeRed;
font-size: 80%;
font-weight: bold;
text-align: right;
}
p.required_msg:after {
/* ここを編集することで表示されるマークを変更できます */
content: "「※必須」となっている項目は必ず入力してください。";
}
/* メールアドレスの再入力メッセージ */
p.label_mail {
margin: 5px 0 1px 0;
color: DarkSlateGray;
font-size: 85%;
font-weight: bold;
}
p.label_mail:after {
/* ここを編集することで表示されるメッセージを変更できます */
content: "確認のため、もう一度メールアドレスを入力してください";
}
/* ===================================
スマートフォン表示用のレイアウト
=================================== */
/* スマートフォンとして認識する画面の横幅のサイズ */
@media screen and (max-width: 479px) {
/* フォームエリア全体の設定 */
div.container {
width: 100%;
}
/* 設問エリア全体の設定 */
div.wrapper {
width: 100%;
}
/* 設問の表 */
table.items {
width: 100%;
}
/*設問名のセルのデザイン */
td.label {
float: left;
width: 95%;
height: 25px;
padding-top: 10px;
}
/* 必須項目のマーク */
span.required {
float: initial;
}
/* 設問の入力セルおよび表示セルのデザイン */
td.value {
float: left;
width: 95%;
/* 入力コントロールの幅に合わせて調整してください */
padding-bottom: 0;
}
/* 設問の入力例/説明セルのデザイン */
td.comment {
float: left;
width: 95%;
padding: 0 2px 10px 2px;
}
/* 設問の入力例/テキストボックス */
input[type="text"] {
width: 95% !important;
font-size: 120%;
}
/* 設問の入力例/テキストエリア */
textarea {
width: 95%;
height: 100px;
}
/* ボタンの表示エリアの設定 */
div.button_area {
width: 95%;
}
}
/* ===================================
上書き
=================================== */
input,
textarea,
select {
font-family: inherit;
font-size: inherit;
font-weight: inherit;
}
input,
textarea,
select {
*font-size: 100%;
}
textarea {
max-width: 440px;
}
table.items {
width: 100%;
border-collapse: collapse;
}
input[type="text"] {
height: 36px;
max-width: 400px;
padding: 0 .5em;
border: 1px solid #c9c9c9;
border-radius: 5px;
}
input[name="person_name_last"] {
margin-right: 10px;
}
select {
height: 36px;
}
@media screen and (max-width: 479px) {
select {
border: 1px solid #c9c9c9;
}
}
textarea {
padding: .5em .5em;
border: 1px solid #c9c9c9;
border-radius: 5px;
}
input[type=button] {
/* ボタンの色 */
padding: .5em 3em;
/* ボタンの文字の 上 右 下 左 の隙間のサイズ */
margin: 0 20px;
font-size: 24px;
/* 確認画面に表示される2つのボタンの左右の余白サイズ */
font-weight: bold;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background: #006ec8;
border-radius: 0;
}
@media screen and (max-width: 479px) {
input[type=button] {
padding: .5em 2em;
font-size: 20px;
}
}
#privacy_policy {
max-width: 940px;
margin-right: auto !important;
margin-left: auto !important;
}
div.button_area {
background: transparent;
}
@media screen and (max-width: 479px) {
td.comment {
float: left;
width: 95%;
padding: 4px 12px 10px 12px;
}
}
/* ===================================
カスタマイズ
=================================== */
/*----------------------------------------------------
レスポンシブ
----------------------------------------------------*/
.hide {
display: none;
}
.pc {
display: inline;
}
.pc.block {
display: block;
}
.sp {
display: none;
}
.sp.block {
display: none;
}
@media (max-width: 960px) {
.sp {
display: inline;
}
.sp.block {
display: block;
}
.pc {
display: none;
}
.pc.block {
display: none;
}
}
/*----------------------------------------------------
リンク
----------------------------------------------------*/
a {
color: #007bbb;
text-decoration: none;
-webkit-transition: color .3s ease-out, background .3s ease-out, border .3s ease-out;
transition: color .3s ease-out, background .3s ease-out, border .3s ease-out;
}
@media screen and (min-width: 769px), only screen and (min-device-width: 769px) and (max-device-width: 1024px) and (orientation: landscape) {
.privacy_policy a:hover {
text-decoration: underline;
}
}
/*----------------------------------------------------
body
----------------------------------------------------*/
@media (min-width: 961px) {
body {
min-width: 1140px;
}
}
@media (max-width: 960px) {
body {
padding-top: 60px;
}
}
body.no-scroll {
height: 100vh;
overflow: hidden;
}
/*----------------------------------------------------
コンテナ
----------------------------------------------------*/
.container-lf {
position: relative;
padding-right: 20px;
padding-left: 20px;
margin: 0 auto;
}
@media (min-width: 961px) {
.container-lf {
max-width: 966px;
}
}
@media (max-width: 960px) {
.container-lf {
padding-right: 4vw;
padding-left: 4vw;
}
}
@media (min-width: 961px) {
.container-lf--l {
max-width: 1140px;
}
}
@media (min-width: 961px) {
.container-lf--ll {
max-width: 1366px;
}
}
@media (min-width: 961px) {
.container-lf--xs {
max-width: 680px;
}
}
/*----------------------------------------------------
ヘッダー
----------------------------------------------------*/
header {
background-color: #fff;
}
@media (min-width: 961px) {
header {
padding: 20px 0 26px;
}
}
@media (max-width: 960px) {
header {
position: fixed;
top: 0;
left: 0;
z-index: 9999;
width: 100%;
}
}
@media (min-width: 961px) {
.header-content {
-ms-flex-pack: justify;
-webkit-box-pack: justify;
justify-content: space-between;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
}
@media (max-width: 960px) {
.header-content {
height: 60px;
padding: 8px 0 0;
}
}
/*----------------------------------------------------
header-logo
----------------------------------------------------*/
.header-logo__lead {
margin-bottom: 5px;
font-size: 14px;
line-height: 1.2;
}
.header-logo__logo {
-webkit-box-align: center;
align-items: center;
-ms-flex-align: center;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
font-family: din-2014-narrow, sans-serif;
font-size: 50px;
line-height: 1;
}
.header-logo__logo a {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.header-logo__web a {
color: #00a3af;
}
@media (min-width: 961px) {
.header-logo__web {
margin-right: 20px;
}
.header-logo__kbi {
margin-right: 10px;
}
}
@media (max-width: 960px) {
.header-logo__lead {
margin-bottom: 2px;
font-size: 10px;
}
.header-logo__logo {
font-size: 30px;
width: 50%;
}
.header-logo__kbi {
display: none;
}
.header-logo__daigas {
display: none;
}
}
/*----------------------------------------------------
.main-header
----------------------------------------------------*/
.main-header {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-ms-flex-pack: center;
-webkit-box-pack: center;
justify-content: center;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
height: 225px;
color: #fff;
text-align: center;
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
margin-bottom: 60px;
}
.main-header .en {
margin-bottom: 3px;
font-family: din-2014-narrow, sans-serif;
font-size: 50px;
font-weight: bold;
line-height: 1.2;
}
.main-header .ja {
font-size: 20px;
line-height: 1.2;
}
@media (max-width: 960px) {
.main-header {
height: 100px;
margin-bottom: 20px;
}
.main-header .en {
font-size: 30px;
}
.main-header .ja {
margin-top: 2px;
font-size: 10px;
}
}
.main-header--contact {
background-image: url(https://www.kbinfo.co.jp/web-service/assets/images/contact/header.jpg);
}
/*----------------------------------------------------
フッター
----------------------------------------------------*/
footer {
position: relative;
color: #fff;
background-color: #434343;
}
/*----------------------------------------------------
footer-bottom
----------------------------------------------------*/
.footer-bottom {
padding: 16px 0;
color: #fff;
background-color: #000;
}
.footer-bottom__list {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
font-size: 12px;
}
.footer-bottom__list li {
margin-right: 1em;
}
.footer-bottom__list a {
position: relative;
display: inline-block;
padding-left: 1em;
color: #fff;
}
.footer-bottom__list a:before {
position: absolute;
top: 50%;
left: 0;
content: "\f105";
font-family: "Font Awesome 5 Free";
font-weight: 900;
-webkit-transform: translateY(-40%);
transform: translateY(-40%);
}
@media screen and (min-width: 769px), only screen and (min-device-width: 769px) and (max-device-width: 1024px) and (orientation: landscape) {
.footer-bottom__list a:hover {
color: #007bbb;
}
}
@media (min-width: 961px) {
.footer-bottom__wrap {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.footer-bottom__copy {
margin-right: 4em;
font-size: 12px;
}
}
@media (max-width: 960px) {
.footer-bottom {
padding: 8px 0;
background-color: #313131;
}
.footer-bottom__wrap {
-webkit-box-orient: vertical;
-webkit-box-direction: reverse;
-ms-flex-direction: column-reverse;
flex-direction: column-reverse;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.footer-bottom__list {
margin-bottom: 8px;
font-size: 10px;
}
.footer-bottom__copy {
font-size: 10px;
}
}
/* ===================================
タグマネージャー
=================================== */
プライバシーポリシーに同意の上、送信してください。
同意して送信すると、Cookieにより当社のWebサイト上における閲覧履歴と個人情報を紐付けて把握、分析する場合があります。