@charset "utf-8";

/*
 * style.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */

/* !HTML5 elements
---------------------------------------------------------- */
header, 
footer, 
nav, 
section, 
aside, 
article {
    display: block;
}

/* !Reseting
---------------------------------------------------------- */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	scroll-behavior: smooth;
	font-family: "Shippori Mincho", "しっぽり明朝", serif;
}

fieldset {
  border: none;
}

ul,
ol,
li {
	list-style: none;
}

img {
	max-width: 100%;
    height: auto;
	vertical-align: top;
}

table {
	border-collapse: collapse;
}

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
}

select::-ms-expand {
	display: none;
}

input[type=radio]::-ms-check,
input[type=checkbox]::-ms-check{
	display: none;
}

select,
input[type=radio],
input[type=checkbox],
input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=number],
input[type=reset],
input[type=button],
input[type=submit],
textarea {
	appearance: none;
	border-radius: 0;
	font-family: "Zen Maru Gothic", sans-serif;
}

input[type=text]::-ms-clear,
input[type=tel]::-ms-clear,
input[type=number]::-ms-clear{
	display: none;
}

input[type=reset],
input[type=button],
input[type=submit]  {
	font-family: "Zen Maru Gothic", sans-serif;
	cursor: pointer;
}

*,
*:before,
*::after {
	box-sizing: border-box;
}
/* !Clearfix
---------------------------------------------------------- */
.clearfix {
    display: block;
    min-height: 1%;
}

.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

* html .clearfix {
    height: 1%;
}

/* !Layout
---------------------------------------------------------- */
html {
    overflow-y: scroll;
    font-size: 62.5%;
}

/*** タブレット 768x ~ 1200px***/
@media screen and (min-width: 768px) and (max-width: 1200px) {
    html {
        font-size: calc(100vw / 120);
    }
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    html {
        font-size: calc(100vw / 37.5);
    }
}

body {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 1.6rem;
    -webkit-text-size-adjust: none;
    line-height: 1.5;
    font-weight: normal;
    color: #000;
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.font {
    font-family: "Darumadrop One", sans-serif;
}

/* !Base Fonts -------------------------------------------------------------- */
a {
    color: #000;
    text-decoration: none;
}

/*** hover ***/
@media screen and (min-width: 960px) {
    a {
        transition: all 0.5s;
    }

    a:hover {
        text-decoration: underline;
    }

    .op {
        transition: opacity 0.5s ease-out;
    }

    .op:hover {
        opacity: .7;
        text-decoration: none;
    }

    a[href^="tel:"] {
        cursor: default;
        pointer-events:none;
    }
}

.is-hide {
    display: none;
}


/*** 非スマホ 751px ~ ***/
@media screen and (min-width: 768px) {
    .is-sp {
        display: none;
    }
}

@media only screen and (max-width : 767px){
    .is-pc {
        display: none;
    }
}

/* !wrapper
---------------------------------------------------------- */
#wrapper {
    width: 100%;
    background: #fff;
    overflow: hidden;
}


/* !main Visual
---------------------------------------------------------- */

#wrapper {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    justify-content: center;
}

#contents {
    width: 100%;
    max-width: 464px;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}

@media screen and (max-width: 1024px) {
    #content {
        margin: 0 auto;
    }
	#wrapper {
	padding: 0;
	display: block;
	}
}

@media screen and (max-width: 480px) { /* メディアクエリを使ってスマホ用のブレイクポイントを指定 */



}

footer{
	text-align: center;
	padding-bottom: 10px;
}

/*問い合わせフォーム*/

#contact_genz2{
padding: 5%;
}

#contact_genz2 h3{
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	display: none;
}

#contact_genz2 .Form-Item-Label{
	font-family: "Shippori Mincho", "しっぽり明朝", serif;
	margin-top: 14px;
	margin-bottom: 4px;
}

#contact_genz2 .Form-Item-Input{
	width: 100%;
	border: 1px solid #E61D78;
	border-radius: 5px;
}

#contact_genz2 .Form-Item-Textarea{
	width: 100%;
	border: 1px solid #E61D78;
	border-radius: 5px;
}

#contact_genz2 .Form-Item-Label-Required{
	background: #E61D78;
	border-radius: 9999px;
	padding: 1%;
	font-size: 1.1rem;
	color: #fff;
	font-weight: 900;
	margin-left: 10px;
	font-family: "Shippori Mincho", "しっぽり明朝", serif;
	padding: 3px 6px;
}

#contact_genz2 .Form-Btn {
    border-radius: 4rem !important;
    margin: 5rem auto;
    padding: 2.8rem;
    width: 100%;
    display: block;
    letter-spacing: 0.05em;
    background: #E61D78;
    color: #fff !important;
    font-weight: bold;
    font-size: 2rem;
    border: none;
    margin: 0 auto;
    text-align: center;
	margin-top: 2rem;
}

#contact_genz2 .Form-Btn button{
	color: #fff !important;
	margin: 0 auto;
	font-weight: 900;
	font-size: 1.6rem;
	font-family: "Shippori Mincho", "しっぽり明朝", serif;
}

@media screen and (max-width: 480px) {
#contact_genz2  .Form-Btn {
        margin-top: 2rem;
        padding: 2rem;
        width: auto;
        font-size: 16px;
    }
}
/* Z世代向け 実績一覧（新規追加） */
.genz-works-wrap {
    width: 100%;
    max-width: 464px;
    margin: 0 auto;
    padding: 20px 0 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px 20px;
}

.genz-item {
    text-align: center;
    display: block;
}

.genz-item img {
    width: 100%;
    border-radius: 16px;
}

.genz-title {
    margin-top: 6px;
    font-size: 1.4rem;
    font-weight: 600;
    font-family: "Zen Maru Gothic", sans-serif;
    color: #000;
}
/* ===== LP3 ===== */
/* ===== LP3共通スライダー ===== */
.img-marquee {
  position: relative;
  overflow: hidden;
  width: 100%;
}

/* 動く中身 */
.img-marquee__inner {
  position: absolute;
  top: 50%;
  left: 0;
  display: flex;
  width: max-content;
  transform: translateY(-50%);
  animation: marquee 18s linear infinite;
}

.img-marquee__inner img {
  display: block;
  width: auto;
}

/* アニメーション */
@keyframes marquee {
  from {
    transform: translate(0, -50%);
  }
  to {
    transform: translate(-50%, -50%);
  }
}

/* ===== スライダー個別設定 ===== */

/* 🐱 Z世代セイサクシツ！ */
.slider-01 {
  height: 80px;
  background: url("../img/lp/lp3/ slider background_01.jpg") center / cover no-repeat;
}

.slider-01 img {
  height: 32px;
}

/* WORKS */
.slider-02 {
  height: 60px;
  background: url("../img/lp/lp3/ slider background_02.jpg") center / cover no-repeat;
}

.slider-02 img {
  height: 90px;
  opacity: 0.4; /* 薄くしたくなければ消してOK */
}
/* ===== lp3：WORKSを縦並びにする ===== */
.lp3 .genz-works-wrap {
  display: block;
}

.lp3 .genz-item {
  width: 100%;
  display: block;
}
/* lp3：WORKSの余白を消す */
.lp3 .genz-works-wrap {
  padding-top: 0;
  padding-bottom: 0;
}
/* lp3：WORKS画像の角丸を解除 */
.lp3 .genz-item,
.lp3 .genz-item img {
  border-radius: 0;
}
/* =========================
   lp3：contact カラー上書き
========================= */

/* 入力欄（枠・フォーカス時） */
.lp3 #contact_genz2 .Form-Item-Input {
  border-color: #F13503;
}

.lp3 #contact_genz2 .Form-Item-Input:focus {
  border-color: #F13503;
  outline: none;
}

/* lp3：必須ラベルの背景色を変更 */
.lp3 #contact_genz2 .Form-Item-Label-Required {
  background-color: #262626; /* ← 好きな色 */
  color: #fff;               /* 文字色（背景に合わせて） */
  padding: 1px 8px;           /* 背景をきれいに見せる */
  border-radius: 10px;         /* 角丸（不要なら消す） */
}

/* 送信ボタン */
.lp3 #contact_genz2 .Form-Btn {
  background-color: #262626;
  border-color: #262626;
}

/* hover 時（念のため） */
.lp3 #contact_genz2 .Form-Btn:hover {
  opacity: 0.85;
}
/* 外側：白5px */
.lp3 #contact_genz2 {
  background: #fff;
  padding: 0 11px;
}
.lp3 #contact_genz2 .contact-inner {
  background: #F13503; /* テスト用に派手な色 */
  padding: 24px 16px;
}
/* =========================
   lp3：contact 文字色・フォント 完全上書き
  （MW WP FormのCSSに必ず勝つ）
========================= */

/* contact 全体の基本設定 */
body.lp3 #contact_genz2 {
  color: #fff !important;
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px;
  line-height: 1.6;
}

/* ラベル（項目名） */
body.lp3 #contact_genz2 .Form-Item-Label,
body.lp3 #contact_genz2 label {
  color: #fff !important;
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 700 !important;
}

/* 必須ラベル */
body.lp3 #contact_genz2 .Form-Item-Label-Required {
  color: #fff !important;
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 700 !important;
}

/* 入力欄の文字 */
body.lp3 #contact_genz2 input,
body.lp3 #contact_genz2 textarea {
  color: #000 !important; /* 入力文字は黒（白背景前提） */
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px;
}

/* プレースホルダー */
body.lp3 #contact_genz2 input::placeholder,
body.lp3 #contact_genz2 textarea::placeholder {
  color: #aaa !important;
  font-weight: 400 !important;
}

/* 送信ボタン */
body.lp3 #contact_genz2 .Form-Btn,
body.lp3 #contact_genz2 input[type="submit"],
body.lp3 #contact_genz2 button {
  color: #fff !important;
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px;
}
/* =========================
   lp3：footer 白フチ＋オレンジ背景（完成形）
========================= */

/* 外側：白（左右の余白） */
body.lp3 footer {
  background: #fff;
  margin: 0;
  padding: 0;
}

/* 内側：オレンジ（幅を絞って中央寄せ） */
body.lp3 #footer {
  background: #F13503;        /* オレンジ */
  max-width: calc(100% - 22px); /* ← 左右11px分 白を残す */
  margin: 0 auto;             /* 中央寄せ */
  padding: 5px 0;
}

/* フォント・色 */
body.lp3 #footer,
body.lp3 #footer * {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
}

/* コピーライト中央寄せ */
body.lp3 #copyright {
  text-align: center;
}

