@charset "UTF-8";
/*--------------------------------------------------------
scss 定数とかmixin設定をここに記載
--------------------------------------------------------*/
/*--------------------------------------------------------
Reset
--------------------------------------------------------*/
html {
  font-size: 62.5%;
  overflow: auto; }

body {
  overflow-x: hidden;
  font-size: 1.6rem;
  /*16px*/
  line-height: 1.8;
  /*  font-family: メイリオ, Meiryo, 'Hiragino Kaku Gothic Pro',
      'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', Arial, Verdana, sans-serif;*/
  font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  text-align: justify;
  text-justify: inter-ideograph;
  font-feature-settings: "palt" 1; }

input, select, textarea {
  /* font-family: メイリオ, Meiryo, 'Hiragino Kaku Gothic Pro',
  'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', Arial, Verdana, sans-serif;*/
  font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; }

body, h1, h2, h3, h4, h5, p, ul, ol, li, dl, dd, dt {
  margin: 0;
  padding: 0px; }

li {
  list-style: none;
  margin: 0;
  padding: 0; }

a {
  text-decoration: none;
  color: #000; }
  a:hover {
    text-decoration: none; }

/*a img:hover { opacity: 0.9; -moz-opacity: 0.9;}*/
a img {
  border-style: none; }

img {
  vertical-align: bottom;
  /* 一番上の画像だけ注意。隙間が空く可能性あり */
  line-height: 0 !important;
  /* display:block; */ }

button {
  background-color: transparent;
  border: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  button:focus {
    outline: none; }
  button:hover {
    cursor: pointer; }

input:focus,
select:focus {
  outline: none; }

/*--------------------------------------------------------
定数（基本的に、全サイト共通に使えるもの）
--------------------------------------------------------*/
.c {
  text-align: center !important; }

.cm {
  margin-left: auto;
  margin-right: auto; }

.r {
  text-align: right !important; }

.l {
  text-align: left !important; }

.inline-block {
  display: inline-block; }

.block {
  display: block; }

.vertical-top {
  vertical-align: top; }

.vertical-middle {
  vertical-align: middle; }

.pointer {
  cursor: pointer; }

.br::before {
  content: "\a";
  white-space: pre; }

.padding100 {
  padding-top: 100px; }

.padding90 {
  padding-top: 90px; }

.padding80 {
  padding-top: 80px; }

.padding70 {
  padding-top: 70px; }

.padding60 {
  padding-top: 60px; }

.padding50 {
  padding-top: 50px; }

.padding40 {
  padding-top: 40px; }

.padding30 {
  padding-top: 30px; }

.padding20 {
  padding-top: 20px; }

.padding10 {
  padding-top: 10px; }

.padding500p {
  padding-top: 50%; }

.padding450p {
  padding-top: 45%; }

.padding400p {
  padding-top: 40%; }

.padding350p {
  padding-top: 35%; }

.padding300p {
  padding-top: 30%; }

.padding250p {
  padding-top: 25%; }

.padding200p {
  padding-top: 20%; }

.padding150p {
  padding-top: 15%; }

.padding100p {
  padding-top: 10%; }

.padding90p {
  padding-top: 9%; }

.padding80p {
  padding-top: 8%; }

.padding70p {
  padding-top: 7%; }

.padding60p {
  padding-top: 6%; }

.padding50p {
  padding-top: 5%; }

.padding40p {
  padding-top: 4%; }

.padding30p {
  padding-top: 3%; }

.padding20p {
  padding-top: 2%; }

.padding10p {
  padding-top: 1%; }

.visible1800, .visible1000, .visible900, .visible750, .visible600, .visible500, .visible400, .visible320 {
  display: none; }

/* clearfix */
.clearfix:after {
  content: "";
  clear: both;
  display: block; }

/*重なりの優先度*/
.relative {
  position: relative; }

.absolute {
  position: absolute; }

/*要素固定*/
.fixed {
  position: fixed; }

.z0 {
  z-index: 0; }

.z1 {
  z-index: 1; }

.z2 {
  z-index: 2; }

.z3 {
  z-index: 3; }

.z4 {
  z-index: 4; }

.z5 {
  z-index: 5; }

.z6 {
  z-index: 6; }

.z7 {
  z-index: 7; }

.z8 {
  z-index: 8; }

.z9 {
  z-index: 9; }

.z10 {
  z-index: 10; }

/*横幅*/
.w100 {
  width: 100%; }

.w90 {
  width: 90%; }

.w80 {
  width: 80%; }

.w70 {
  width: 70%; }

.w60 {
  width: 60%; }

.w50 {
  width: 50%; }

.w40 {
  width: 40%; }

.w30 {
  width: 30%; }

.w20 {
  width: 20%; }

.w10 {
  width: 10%; }

.disabled {
  pointer-events: none;
  /*リンクを無効にする*/ }

/*--------------------------------------------------------
サイト毎に変化のある定数
--------------------------------------------------------*/
.fullscreen {
  width: 100%;
  margin-left: auto;
  margin-right: auto; }

.contents {
  width: 900px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto; }
  .contents1800 {
    width: 100%;
    max-width: 1800px;
    margin-left: auto;
    margin-right: auto; }
  .contents1000 {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto; }

.contents_inner {
  width: 90%;
  padding: 0 5%; }

.img_center {
  margin-left: -450px; }

.white {
  color: #FFF; }

.black {
  color: #000; }

.red {
  color: #FF0000; }

.bg_black {
  background-color: black; }
.bg_white {
  background-color: white; }
.bg_red {
  background-color: red; }
.bg_green {
  background-color: green; }
.bg_clear {
  background-color: transparent; }

/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/
header {
  width: 100%;
  top: 0;
  margin: 0 auto;
  line-height: 0;
                /* 画像の上下に隙間が空いてしまう対策 *    
position:fixed;
z-index:100;
/* top:-1px; */ }

/*--------------------------------------------------------
フッター
--------------------------------------------------------*/
footer {
  /*position:fixed;*/
  position: relative;
  z-index: 2;
  text-align: center;
  background-color: #2D1015;
  color: #fff;
  bottom: 0;
  left: 0;
  right: 0; }

.copyright {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 7px 60px; }

.copyright,
.copyright a {
  font-size: 2rem;
  color: #fff; }

.pp {
  font-size: 3.4rem !important; }

.copyright a:hover {
  text-decoration: underline; }

.bg-clr {
  background-color: #000; }

/*--------------------------------------------------------
↓↓↓ 各種レイアウト ↓↓↓
--------------------------------------------------------*/
/*--header--*/
/*--header-end--*/
/*--contents--*/
#nav {
  position: fixed;
  bottom: 10px;
  right: 0;
  z-index: 100;
  display: none; }

#nav:hover {
  opacity: 0.7; }

/*--contents-end--*/
/*--footer--*/
.ksg_18 {
  padding-right: 5px; }

/*--footer-end--*/
/* --背景設定-- */
.ksg_btn {
  top: 79%; }
  .ksg_btn2 {
    top: 79%; }
.ksg_04_1 {
  top: 18.2%; }
.ksg_04_2 {
  top: 34.7%; }
.ksg_05_1 {
  top: 48%; }
.ksg_05_2 {
  top: 89.7%; }
.ksg_08_1 {
  top: -21%; }
.ksg_11b {
  top: 0%;
  left: 0%; }
.ksg_11_1 {
  top: 8%; }
.ksg_11_2 {
  top: 0.8%;
  left: 5.4%; }
.ksg_17_1 {
  top: 22%;
  right: 4.6%; }
.ksg_17_2 {
  top: 63%;
  right: 4.8%; }

/* --背景設定-end-- */
/* --画像位置設定-- */
/* --画像位置設定-end-- */
/* --プラポリ-- */
.light-weight {
  font-weight: normal; }

.bg_privacy {
  /*background-color: #515151;*/
  background: url("../img/ksg_bg.png");
  background-repeat: repeat-y;
  max-width: 1800px;
  margin: 0 auto; }

.contents_privacy {
  width: 740px;
  border-radius: 40px;
  border: 2px solid #2D1015;
  padding: 10px 20px;
  color: #2D1015; }
  .contents_privacy p {
    font-size: 2.3rem;
    padding-bottom: 3rem; }

/*.back-btn{
  position: relative;
  padding: 1rem 10rem;
  box-sizing: border-box;
  font-size: 3rem;
  .fas{
    position:  absolute;
    top: 50%;
    left: 5%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  } 
}*/
.h2_privacy {
  font-size: 3rem; }

.h3_privacy {
  font-size: 2.6rem; }

.icon {
  position: relative;
  line-height: 1.5em;
  /*text-indent:2em;*/
  padding-left: 1.5em; }
  .icon::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 5px;
    background: url("../img/ksg_21.png") no-repeat;
    background-size: contain;
    display: inline-block;
    width: 1.5em;
    height: 1.5em; }

/* --プラポリ-end-- */
/*--toggleMenu--*/
/*--toggleMenu-end--*/
/*--------------------------------------------------------
↑↑↑ 各種レイアウト ↑↑↑
--------------------------------------------------------*/
/*--------------------------------------------------------
↓↓↓ フォーム部分 ↓↓↓
--------------------------------------------------------*/
form {
  color: #000;
  font-size: 1.5rem; }

.err_msg {
  color: red; }

.form {
  width: 90%; }

.form_item {
  margin-top: 1.5rem;
  margin-bottom: 0.3rem;
  line-height: 1.8; }

input[type="text"],
input[type="email"],
input[type="password"],
select,
textarea {
  width: 96%;
  padding: 1% 2% 1.0% 2%;
  display: block;
  background-color: #FFF;
  border: 1px solid #333;
  /* border-radius: 10px; */ }

input::-webkit-input-placeholder {
  padding-top: 0.1rem; }

/*iphone対応*/
input:disabled {
  opacity: 0.8; }

select {
  width: 100%; }

textarea {
  height: 10rem; }

/********
チェックボックス
********/
.checkbox-input {
  display: none; }
  .checkbox-input:checked + .checkbox-parts {
    color: red; }
    .checkbox-input:checked + .checkbox-parts::after {
      content: "";
      display: block;
      position: absolute;
      top: -9px;
      left: 7px;
      width: 14px;
      height: 28px;
      transform: rotate(40deg);
      border-bottom: 5px solid red;
      border-right: 5px solid red; }

.checkbox-parts {
  /* padding-top:30px; */
  padding-left: 40px;
  position: relative;
  /* margin-right: 20px; */
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 2rem; }
  .checkbox-parts::before {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 25px;
    height: 25px;
    border: 2px solid #333;
    border-radius: 4px; }

/*--------------------------------------------------------
↑↑↑ フォーム部分 ↑↑↑
--------------------------------------------------------*/
/*--------------------------------------------------------
サンキュー用レイアウト
--------------------------------------------------------*/
/*--------------------------------------------------------
特定商用レイアウト
--------------------------------------------------------*/
.margin_t_01 {
  margin-top: -0.01%;
}