/* -------------------- 共通 -------------------- */
/* メインのフォントを設定 */
body {
	/* font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; */
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	-webkit-font-smoothing: antialiased;
	background: #fffdfa;
	color: #222;
}
a {
	text-decoration: none;
	color: #000000;
}
img {
	display: block;
}
ul {
	list-style: none;
}
iframe {
	width: 100%;
	height: 100%;
}

/* -------------------- contact form7 -------------------- */
input[type="button"]
,input[type="text"]
,input[type="tel"]
,input[type="email"]
,input[type="submit"]
,input[type="image"]
,textarea{
   -webkit-appearance: none;
   border-radius: 0;
}
/* コーポレートカラーに変更する */
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
textarea:focus{
  outline: 2px solid #001384;
}
input[type="submit"]:focus {
  outline: none;
}
/* お問い合わせ完了テキスト */
div.wpcf7-mail-sent-ok
,div.wpcf7-validation-errors
,div.wpcf7-acceptance-missing {
  color: #ffffff;
  text-align: center;
  letter-spacing: 1px;
	line-height: 24px;
}
/* 必須入力テキスト */
span.wpcf7-not-valid-tip {
	font-size: 14px!important;
  position: absolute;
  top: 50%;
  left: 100px;
  transform: translateY(-50%);
}

/* -------------------- 文字色 -------------------- */
.txtWhite {
	color: #ffffff;
}
.txtBlack {
	color: #000000;
}
.txtCorp1 {
	color: #7a5529;
}
.txtCorp2 {
	color: #ff8a3b;
}

/* -------------------- 背景色 -------------------- */
.bgWhite {
	background: #ffffff;
}
.bgBlack {
	background: #000000;
}
.bgCorp1 {
	background: #fffdfa;
}
.bgCorp2 {
	background: #ff8a3b;
}

/* -------------------- フォント -------------------- */
.fontGothic {
	font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.font-yuCothic {
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.fontArial {
	font-family: Avenir Next,Avenir,Lato,Arial,Ebrima,Modern,sans-serif;
}
.fontMin {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.fontMeiryo {
	font-family: futura-pt,source-han-sans-japanese,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","游ゴシック体","Yu Gothic",YuGothic,"メイリオ",Meiryo,sans-serif;
}
.fontYellowtail {
	font-family: 'Yellowtail', cursive;
	/* <link href="https://fonts.googleapis.com/css2?family=Yellowtail&display=swap" rel="stylesheet"> */
}
.fontMarugo {
  font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}
.fontPatrick {
	font-family: 'Patrick Hand', cursive;
	/* <link href="https://fonts.googleapis.com/css2?family=Patrick+Hand&display=swap" rel="stylesheet"> */
}
.fontBoogaloo {
	font-family: 'Boogaloo', cursive;
	/* <link href="https://fonts.googleapis.com/css2?family=Boogaloo&display=swap" rel="stylesheet"> */
}
.fontAnton {
	font-family: 'Anton', sans-serif;
	/* <link href="https://fonts.googleapis.com/css2?family=Yellowtail&display=swap" rel="stylesheet"> */
}
.fontDancing {
	font-family: 'Dancing Script', cursive;
	/* <link href="https://fonts.googleapis.com/css2?family=Dancing+Script&display=swap" rel="stylesheet"> */
}
.fontAllura {
	font-family: 'Allura', cursive;
}
.fontNote {
	font-family: 'Noto Sans JP', sans-serif;
	/* <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@900&display=swap" rel="stylesheet"> */
}
.fontOswald {
	font-family: 'Oswald', sans-serif;
	/* <link href="https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap" rel="stylesheet"> */
}
.fontNunit {
	font-family: 'Nunito', sans-serif;
	/* <link href="https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;600;700;800;900&display=swap" rel="stylesheet"> */
}
.fontCabin {
	font-family: 'Cabin Sketch', cursive;
	/* <link href="https://fonts.googleapis.com/css2?family=Cabin+Sketch:wght@400;700&display=swap" rel="stylesheet"> */
}
.fonrRock {
	font-family: 'Rock Salt', cursive;
	/* <link href="https://fonts.googleapis.com/css2?family=Rock+Salt&display=swap" rel="stylesheet"> */
}
.fontNoto {
	font-family: 'Noto Sans JP', sans-serif;
	/* <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@900&display=swap" rel="stylesheet"> */
}


/* -------------------- 画像装飾 -------------------- */
.objFit {
	object-fit: cover;
	font-family: 'object-fit: cover';
}
.imgFlame {
	padding: 10px;
  border: 1px solid #eee;
  background: #ffffff;
  box-sizing: border-box;
}

/* -------------------- スクロールアニメーション -------------------- */
.dpFadeIn {
	opacity : 0;
	transform : translate(0, 10px);
	transition : .5s;
}
.dpFadeInDisp {
	opacity : 1;
	transform : translate(0, 0);
}

/* -------------------- スクロールアニメーション -------------------- */
/***** 下からフェードイン *****/
.scFadeIn {
	opacity : 0;
	transform : translate(0, 30px);
	transition : .5s;
}
.scFadeInDisp {
	opacity : 1;
	transform : translate(0, 0);
}

/**** 出現 ****/
.scAppear {
	opacity : 0;
	transform : scale(0);
	transition : .5s;
}
.scAppearDisp {
	opacity : 1;
	transform : scale(1);
}

/**** ブロックに隠れてフェードイン ****/
.imgFade { /* これで画像divを囲む */
	position: relative;
	width: 0;
	/* height: 100%; */
	transition: 0.5s ease-in-out;
	overflow: hidden;
}
.imgFadeDisp {
	width: 100%;
}
.imgFadeScreen { /* imgFadeの第一子要素 */
	position: absolute;
	top: 0;
	right: 0;
	background: #f2f0e8;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.imgFadeScreenFade {
	width: 0%;
	transition: 0.3s  ease-in-out;
	transition-delay: 0.5s;
}
.imgFadeChild { /* 画像divに付与 */
	transition: 1s ease-in-out;
	transition-delay: 0.5s;
	transform: scale(1.1);
}
.imgFadeChildZoom {
	transform: scale(1.0);
}

/****  左から表示される背景  ****/
.txtBg { /* div要素に付与する */
  display: inline-block;
  filter: drop-shadow(5px 5px 40px rgba(0,0,0,0));/*これがないとばぐる*/
}
.txtBg:before {
	background: rgba(255,255,255,0.9); /* 背景色 */
  position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	transform-origin: right top;
	transform: scale(0, 1);
  transition: transform 0.8s;
}
.txtBgDisplay:before { /* jsで付与する */
  transform-origin: right top;
  transform: scale(1, 1);
}
.txtBgTxt { /* テキストに付与する */
  display: inline-block;
  transition-delay: 0.3s;
}
.txtBgTxtTmLg { /* span要素のフェードイン時差 */
	transition-delay: 0.4s;
}

/* -------------------- 時間差 -------------------- */
.scTd02 {
	transition-delay: 0.2s;
}

/* -------------------- シャドウ -------------------- */
.tpTxtFilter { /* トップ画面テキスト */
	filter: drop-shadow(5px 5px 40px #000000);
}
.hdTxtFilter { /* h2タイトル */
  filter: drop-shadow(6px 6px 3px rgba(0,0,0,0.4));
}
.itemFilter { /* アイテム画像 */
  box-shadow: 1px 1px 10px rgba(0,0,0,0.3);
}
.txtFilter { /* テキスト用 */
  filter: drop-shadow(1px 1px 3px rgba(0,0,0,0.5));
}

/* -------------------- テキスト装飾 -------------------- */
.break:before {
	content: "\A";
  white-space: pre;
}
.underline {
  text-decoration: underline;
}

/* -------------------- 画面下固定 -------------------- */
/* トップリンク */
.topLnk {
  height: 40px;
  width: 40px;
  background: rgba(0,0,0,0.6);
  position: fixed;
  right: 10px;
  bottom: 10px;
  border-radius: 50%;
  opacity: 1;
  transition: 0.3s;
}
.topLnk:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  transform: rotate(-45deg) translate(-20%,-50%);
}

/* お問い合わせ */
.fixCon {
	position: fixed;
  bottom: 10px;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 0 10px;
  box-sizing: border-box;
	transition: 0.3s;
	opacity: 1;
}
.fixContact
,.fixLine {
	height: 45px;
  font-size: 12px;
	font-weight: 600;
  letter-spacing: 2px;
  line-height: 45px;
  width: 49%;
  text-align: center;
}
.fixContact {
	color: #ffffff;
	background: #ff0000;
}
.fixLine {
	color: #ffffff;
  background: #1dcd00;
}

/* 隠す */
.topLnkFade {
  opacity: 0;
  transition: 0.3s;
}

/* -------------------- セクション -------------------- */
.sctionContainer {
  padding: 50px 20px;
}
/* h2コンテナ */
.scHead {
	margin-bottom: 50px;
}
/* h2タイトル */
.scHeadTtl {
	display: block;
  font-weight: 500;
  font-size: 22px;
  letter-spacing: 2px;
}
/* h2サブタイトル */
.scHeadSbTtl {
  display: block;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 2px;
  margin-bottom: 7px;
}
/* セクション各アイテム */
.scItemCon {
	margin-bottom: 50px;
}
/* h3要素 */
.scItemHead {
  margin-bottom: 7px;
  letter-spacing: 1px;
}
/* h3タイトル */
.scItemHeadTtl {
  font-weight: 500;
  font-size: 20px;
}
/* h3サブタイトル */
.scItemHeadSbTtl {
  display: block;
  font-weight: 500;
  font-size: 12px;
  margin-bottom: 6px;
}
/* h3補足 */
.scItemHeadSupport {
  font-size: 14px;
  letter-spacing: 1px;
}
/* アイテムテキスト */
.scItemTxt {
  font-size: 11px;
  letter-spacing: 2px;
  line-height: 24px;
}

/****************************** tablet ******************************/
@media (min-width: 600px){
/* -------------------- セクション -------------------- */
  .sctionContainer {
    padding: 50px 40px;
  }

	/* -------------------- 時間差 -------------------- */
	.scTd04 {
		transition-delay: 0.4s;
	}
	.scTd06 {
		transition-delay: 0.6s;
	}

	/* -------------------- 画面右下固定 -------------------- */
	/* .topLnk {
		display: none;
	} */
	.topLnk {
	  height: 45px;
	  width: 45px;
	  right: 20px;
	  bottom: 20px;
	}
}
/****************************** tablet Pro ******************************/
@media (min-width: 960px){
/* -------------------- セクション -------------------- */
	.sctionContainer {
    width: 950px;
    margin: 0 auto;
    padding: 100px 0;
  }
	/* h2コンテナ */
	.scHead {
		margin-bottom: 70px;
	}
	/* h2タイトル */
	.scHeadTtl {
		font-size: 26px;
	}
	/* h2サブタイトル */
	.scHeadSbTtl {
		margin-bottom: 10px;
		font-size: 12px;
	}
	/* セクション各アイテム */
	.scItemCon {
	}
	/* h3タイトル */
	.scItemHeadTtl {
	  font-size: 20px;
	}
	/* h3タサブイトル */
	.scItemHeadSbTtl {
		font-size: 14px;
		margin-bottom: 8px;
	}
	/* アイテムテキスト */
	.scItemTxt {
    font-size: 13px;
		letter-spacing: 3px;
    line-height: 28px;
  }
}
