@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,
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,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  line-height: 1.8em
}

article,
aside,
details,
figcaption,
figure,
main,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block
}

body {
  vertical-align: baseline;
  -webkit-text-size-adjust: 100%
}

img {
  display: inherit;
	max-width: 100%;
	height: auto;
}

ol,
ul {
  list-style: none
}

blockquote,
q {
  quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none
}

* {
  box-sizing: border-box;
  word-break: normal;
  background-repeat: no-repeat
}

html,
body {
  width: 100%;
  min-width: 1000px;
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 768px) {
  html,
  body {
    min-width: inherit
  }
}

body {
font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN", "Hiragino Sans","Yu Gothic Medium", "Yu Gothic", "YuGothic","Meiryo", "Roboto", sans-serif;
  color: #000;
  line-height: 1.8em;
	position: relative;
}

div#container {
  width: 100%;
  height: 100%
}

::selection {
  background: #001da0;
  color: #fff
}

::-moz-selection {
  background: #001da0;
  color: #fff
}

a {
  transition: background-color .4s ease, color .4s ease, opacity .4s ease
}

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

a img {
  transition: opacity .4s ease
}

a:hover {
  opacity: .8
}

picture {
  display: block
}
br {
  line-height: inherit
}
hr {
  height: 1px;
  clear: both;
  border: none;
  border-top: #d9ecff 1px solid;
  color: #fff
}
.unselectable {
  -ms-user-select: none;
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  user-select: none
}

input,
select,
textarea,
search {
  color: #000;
 font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN", "Hiragino Sans","Yu Gothic Medium", "Yu Gothic", "YuGothic","Meiryo", "Roboto", sans-serif;
  border: #ccc 1px solid;
  background-color: #fff;
  -webkit-appearance: none;
  font-size: 16px;
  border-radius: 0
}

input.--wth420,
select.--wth420,
textarea.--wth420,
search.--wth420 {
  width: 100%
}

@media screen and (min-width: 769px) {
  input.--wth420,
  select.--wth420,
  textarea.--wth420,
  search.--wth420 {
    max-width: 420px
  }
}

input.--wth280,
select.--wth280,
textarea.--wth280,
search.--wth280 {
  width: 100%
}

@media screen and (min-width: 769px) {

  input.--wth280,
  select.--wth280,
  textarea.--wth280,
  search.--wth280 {
    max-width: 280px
  }
}

button { 
	font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN", "Hiragino Sans","Yu Gothic Medium", "Yu Gothic", "YuGothic","Meiryo", "Roboto", sans-serif;
  background-color: rgba(0, 0, 0, 0);
  border: none
}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: 0;
  border-color: #001da0
}

:-ms-input-placeholder {
  color: #ddd
}

::placeholder {
  color: #ddd
}

::selection {
  color: #fff;
  background: #001da0
}

input::selection,
textarea::selection {
  color: #fff;
  background: #001da0
}

input {
  width: 100%;
  padding: 10px;
  margin: 5px 0
}
textarea {
  width: 100%;
  height: 10em;
  padding: 10px;
  resize: vertical
}


select::-ms-expand {
  display: none
}
input[type=radio],
input[type=checkbox] {
  display: none
}
input[type=file] {
  border: none;
  padding: 0
}

input[type=submit],
input[type=reset],
input[type=button],
button[type=submit],
button[type=button] {
  margin-inline: auto
}
button,
input[type=submit].input_return,
input[type=reset].input_return,
input[type=button].input_return,
button[type=submit].input_return,
button[type=button].input_return,
p#fm_ajax_message,
body {
  font-size: 16px
}

@media screen and (max-width: 768px) {
  button,
  input[type=submit].input_return,
  input[type=reset].input_return,
  input[type=button].input_return,
  button[type=submit].input_return,
  button[type=button].input_return,
  p#fm_ajax_message,
  body {
    font-size: 15px
  }
}

@media screen and (max-width: 568px) {
  button,
  input[type=submit].input_return,
  input[type=reset].input_return,
  input[type=button].input_return,
  button[type=submit].input_return,
  button[type=button].input_return,
  p#fm_ajax_message,
  body {
    font-size: 14px
  }
}



/* ヘッダーメニュー */


.l-header__inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	background-color: #fff;
	height: 85px;
	width: 90%;
	max-width: 1300px;
	top: 30px;
	  left: 0;
  right: 0;
  margin:0 auto;
	position: fixed;
	box-shadow: 0 0 12px rgba(28, 102, 165, .16);
	padding: 0;
	z-index: 1000;
	border-radius: 100px;
	padding: 0px 35px;

}

.l-header__logo {
  font-size: 10px;
  text-align: center;
	color: #4e2b0e;
}

.l-header__logo a {
  display: block;
  text-align: center
}

.l-header__logo a img {
  display: block;
  margin: auto
}

@media screen and (max-width: 1295px) {
  .l-header__logo a img {
    width: 165px;
    height: auto
  }
}
@media screen and (max-width: 1100px) {
	.l-header__inner {
	
	}	
}
.l-header__nav {
  flex: 1
}

.l-header__nav__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-right: 10px
}

@media screen and (max-width: 1000px) {
  .l-header__nav__list {
    display: block;
    padding-right: 0;

  }
}



@media screen and (min-width: 1001px) {
  .l-header__nav__list li {
    height: var(--header-height);
    padding: 0 15px;
    display: flex;
    align-items: center
  }
}

@media screen and (max-width: 1000px) {
  .l-header__nav__list li {
    width: 100%;
    padding: 0
  }
}

.l-header__nav__list li:has(.l-nav__parent-menu) {
  cursor: pointer
}

.l-header__nav__list li>a,
.l-header__nav__list li>p {
  display: flex;
  flex-direction: column-reverse;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
	color: #4e2b0e;
}

.l-header__nav__list li>a[target=_blank] span,
.l-header__nav__list li>p[target=_blank] span {
  line-height: 1
}




@media screen and (max-width: 1000px) {

  .l-header__nav__list li>a,
  .l-header__nav__list li>p {
    display: block;
    font-size: 16px;
    text-align: center;
  }

  .l-header__nav__list li>a:not(.l-nav__parent-menu),
  .l-header__nav__list li>p:not(.l-nav__parent-menu) {
    padding: 30px 20px;
	  color: #FFFFFF;position: relative;
  }

  .l-header__nav__list li>a:not(.l-nav__parent-menu)::before,
  .l-header__nav__list li>p:not(.l-nav__parent-menu)::before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: hsla(0,0%,100%,0.20);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1
  }
}

.l-header__nav__list li a {
  transition: .3s
}

.l-header__nav__list li a:hover {
  opacity: .7
}


.l-header__nav__logo {
  position: absolute;
  top: 12px;
  left: 5%
}

@media screen and (min-width: 1001px) {
  .l-header__nav__logo {
    display: none
  }
}

.l-header__nav__close {
  width: 50px;
  height: 50px;
  top: 20px;
  right: 6%;
  position: absolute;
  cursor: pointer;
  padding: 0;
		border-radius: 50%;
	background-color: #FFFFFF;/* 円の色 */  
	  
}

@media screen and (min-width: 1001px) {
  .l-header__nav__close {
    display: none
  }
}

.l-header__nav__close:before,
.l-header__nav__close:after {
  content: "";
  display: block;
width: 23px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  background-color: #4e2b0e;
  border-radius: 2px;
}

.l-header__nav__close:before {
  rotate: 45deg
}

.l-header__nav__close:after {
  rotate: -45deg
}

@media screen and (max-width: 768px) {
  .l-header__nav__close {
    top: 22px;
    width: 50px;
    height: 50px;
		border-radius: 50%;
	background-color: #FFFFFF;/* 円の色 */	
		
		
  }

  .l-header__nav__close:before,
  .l-header__nav__close:after {
    width: 23px;
    height: 2px
  }
}

@media screen and (max-width: 1000px) {
  .l-header__cv {
    margin: 40px auto 0
  }
}

.l-header__cv a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	background: linear-gradient(#4e2b0e, #1c120d);
	height: 55px;
	width: 180px;
	font-size: 16px;
	line-height: 1.4;
	text-align: center;
	border-radius: 100pt;
}




.l-header__cv a,
.l-header__cv a:hover,
.l-header__cv a:visited,
.l-header__cv a:link {
  color: #fff;
  text-decoration: none
}

.l-header__cv a .ruby-jp { 
	font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN", "Hiragino Sans","Yu Gothic Medium", "Yu Gothic", "YuGothic","Meiryo", "Roboto", sans-serif;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.4
}

.l-header__cv a strong {
  line-height: 1.4
}

@media screen and (max-width: 1295px) {
  .l-header__cv a {
    font-size: 14px;
    width: 120px
  }

  .l-header__cv a .ruby-jp {
    font-size: 8px
  }
}

@media screen and (max-width: 1000px) {

  .l-header__cv a {
 width: 80%;
    max-width: 325px;
    margin-inline: auto;
    font-size: 20px;
    height: 80px;
    border-radius: 50px;
	  background: linear-gradient(#e54a3a, #f3c11d);
  }

  .l-header__cv a .ruby-jp {
    font-size: 12px
  }
}

.l-nav {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: end
}

@media screen and (max-width: 1000px) {
  .l-nav {
    display: none;
    width: 90%;
    max-width: 500px;
    position: fixed;
    z-index: 100;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    background-color: #fff;
    padding: 80px 0;
    border-radius: 30px;
    overflow: auto
  }
}

@media screen and (max-width: 768px) {
  .l-nav {
    width: 100%;
    max-width: 100%;
    height: 150vh;
    top: 0;
    left: 0;
    translate: 0 0;
    border-radius: 0;
	 background: linear-gradient(#4e2b0e, #1c120d);
  }
}

.l-nav.is_open {
  display: block;
  opacity: 1;
  animation-duration: .4s;
  animation-name: fadeInScale;
	background: linear-gradient(#4e2b0e, #1c120d);
}

@keyframes fadeInScale {
  from {
    opacity: 0;
    transform: scale(0.9)
  }

  to {
    opacity: 1;
    transform: scale(1)
  }
}

@keyframes fadeOutScale {
  from {
    opacity: 1;
    transform: scale(1)
  }

  to {
    opacity: 0;
    transform: scale(0.9)
  }
}

.l-nav__sub-menu {
  display: none
}

@media screen and (min-width: 1001px) {
  .l-nav__sub-menu {
    position: fixed;
    z-index: 99;
    width: 100vw;
    height: 54px;
    top: 68px;
    left: 0;
    background-color: #f0f0f0;
    padding: 20px
  }
}

@media screen and (max-width: 1000px) {
  .l-nav__sub-menu {
    background-color: #e6eff7;
    padding: 10px 5%
  }

  .l-nav__sub-menu li+li {
    padding-top: 15px
  }
}


body.drawer_open {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none
}

.drawer_bg {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  background-color: rgba(51, 51, 51, .5)
}

:root {
  --margin-top-pan: 40px
}

@media screen and (max-width: 768px) {
  :root {
    --margin-top-pan: 20px
  }
}

.c-hamburger {
  display: none
}

@media screen and (max-width: 1000px) {
  .c-hamburger {
    display: block;
    position: absolute;
    cursor: pointer;
    width: 50px;
    height: 50px;
    top: 50%;
    transform: translateY(-50%);
    right: 4%;
	  text-align: center;
	  	border-radius: 50%;
	background-color: #4e2b0e;/* 円の色 */
  }

  .c-hamburger span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    border-radius: 2px;
    background-color: #FFFFFF;
    border-radius: 2px;
    width: 20px;
    height: 2px;
	  color: #FFFFFF;
	   width: 20px; left: 0;
  right: 0;
  margin: 0 auto;
	  
  }

  .c-hamburger span:nth-of-type(1) {
    top: 18px
  }

  .c-hamburger span:nth-of-type(2) {
    top: 28px
  }
}

@media screen and (max-width: 768px) {
  .c-hamburger {
    right: 6%;
    width: 50px;
    height: 50px;
		border-radius: 50%;
	background-color: #4e2b0e;/* 円の色 */	
	  text-align:center;
		
		
  }

  .c-hamburger span {
    height: 2px;
	 
  }

  .c-hamburger span:nth-of-type(1) {
    top: 20px
	
  }

  .c-hamburger span:nth-of-type(2) {
    top: 30px
  }
}

.c-hamburger.active {
  position: absolute
}




/* フッター */
.c-cv {
	color: #fff;
	padding-top: 70px;
	padding-bottom: 70px;
	position: relative;

	background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)), url(../../assets/images/footer_bk.png);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	border-top-left-radius: 100px;
	border-top-right-radius: 100px;
	
}
.c-cv::after{
		content: '';
	display: block;
	width: 100%;
	height: 500px;
	background-color: #FFFFFF;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.subpage::after{
	content: '';
	display: block;
	width: 100%;
	height: 500px;
	background-color: #1C120D !important;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.c-cv__bg-movie {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: #000
}

.c-cv__text {
  margin-top: 30px;
  margin-bottom: 30px;
  text-align: center;
  font-weight: 500
}



.l-footer {
  background: linear-gradient(#372316, #1c120d);
  position: relative;
  z-index: 1;
	color: #FFFFFF;
}
.l-footer h2{
	font-size: 15px;
	font-weight: 500;
	line-height: 2;
	margin-left: 10px;	
}
.l-footer__inner {
	padding: 100px 0 50px;
	max-width: 1166px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	border-bottom: 1px solid rgba(255,255,255,0.30);
}
.material-icons{font-size: 17px;line-height: 0}

@media screen and (min-width: 769px) {
  .l-footer__inner {
    display: flex;
    justify-content: space-between
  }

  .l-footer__inner__links {
    width: calc(100% - 335px);
	  display: flex;
	  align-items: flex-end;
  }
.l-footer__inner__links .box p{
		font-size: 13px;
	}		
}


@media screen and (min-width: 769px)and (max-width: 1200px) {
  .l-footer__inner__links {
    width: calc(100% - 300px)
  }
}

@media screen and (max-width: 768px) {
  .l-footer__inner {
    padding: 50px 0 30px;
    width: 78%
  }
}

.l-footer__inner__info__logo img {
  width: 250px;
  height: auto;
  max-width: 100%
}

@media screen and (max-width: 768px) {
  .l-footer__inner__info {
    text-align: center
  }
}

@media screen and (max-width: 1200px) {
  .l-footer__inner__links {
    gap: 20px
  }
}

@media screen and (max-width: 768px) {
  .l-footer__inner__links {
    margin-top: 30px;
    display: block
  }
  .l-footer__inner__links .box p{
  font-size: 3.2vw;
  }	
}

.l-footer__bottom {
  max-width: 1166px;
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  padding: 30px 0 10px;
}

@media screen and (min-width: 769px) {
  .l-footer__bottom {
	 padding: 80px 0 160px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }	
}

.l-footer__bottom__menu{
  display: flex;
  justify-content: center;
  gap: 35px
}

.l-footer__bottom__menu a {
  display: block;
	color: #FFFFFF;
	font-weight: 500;
	letter-spacing: 0.08em;
}
.l-footer__bottom__copyright {
  font-size: 12px
}

@media screen and (max-width: 768px) {
  .l-footer__bottom__copyright {
    text-align: center;
    margin-top: 50px
  }
.l-footer__bottom__menu{
  display: block;
}
.l-footer__bottom__menu li{
	margin-bottom: 15px;
	}
.l-footer__bottom {
  width: 78%;
}
.l-footer__bottom__menu a::before {
  content: '→';
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #FFFFFF;
  color: #000000;
  line-height: 1.8;
  text-align: center;
  font-size: 10px;
	vertical-align: middle;
margin: 0 15px 0 0;
}
}

.c-ttl__middle {
  line-height: 1.2;
  font-size: 43px;
font-family: "Montserrat","Noto Sans JP","Hiragino Kaku Gothic Pro","Hiragino Sans","Yu Gothic",YuGothic,"Yu Mincho","Meiryo","Roboto",sans-serif;
  font-weight: 600;
}
.c-cv .box{

}
.c-cv .box p{
	border-radius: 30px;
	padding: 8px 30px;
	margin: 30px 5px 30px 5px;
	display: inline-block;
	font-weight: 500;
}
.c-cv .tel_ara{
	background-color: #FFFFFF;
	padding: 20px 50px 20px;
	border-radius: 10px;
	color: #372316;
	text-align: center;
	max-width: 520px;
	margin: auto;	
}
.tel_link {
  display: flex;
  align-items: center;  
	justify-content: center; 
}
.tel_link::before{
  content: '';
  width: 40px;
  height: 40px;
  background-image: url(../../assets/images/tel_icon.png);
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 15px;
  flex-shrink: 0;     
}
.c-cv .tel_ara .tel_link a{
	  line-height: 1.2;
  font-size: 43px;
font-family: "Montserrat","Noto Sans JP","Hiragino Kaku Gothic Pro","Hiragino Sans","Yu Gothic",YuGothic,"Yu Mincho","Meiryo","Roboto",sans-serif;
  font-weight: 600;
	color: #372316;
	
}
.c-cv .tel_ara p{
	font-size: 15px;
	font-weight: 500;
	font-family: "Montserrat","Noto Sans JP","Hiragino Kaku Gothic Pro","Hiragino Sans","Yu Gothic",YuGothic,"Yu Mincho","Meiryo","Roboto",sans-serif;
	
}
.f_Google_Map a{
	color: #FFFFFF;
	text-decoration: underline;	
}
.f_Google_Map a:hover{
	text-decoration: none;	
}
.wrap_02 {
  overflow: hidden;
}
.sliding_02 {
	background-repeat: repeat-x;
	background-image: url(../../assets/images/footer_color_spray.png);
	height: 60px;
	width: 3384px;
	animation: slide 60s linear infinite;
	background-size: auto 60px;
}
.c-pagetop {
  position: absolute;          /* すでに absolute ならそれでOK */
  right: 80px;                 /* スクショの位置に近い値に調整してね */
  top: 40px;                   /* 親要素(fotter内)からの位置 */

  display: inline-flex;
  align-items: center;
  justify-content: center;

  /* 最初は非表示状態 */
  opacity: 0;
  transform: translateY(15px);
  pointer-events: none;
  transition:
    opacity 0.6s ease,
    transform 0.6s ease;
}

/* アイコン部分（白い丸＋矢印） */
.c-pagetop__icon {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: #fff;
  background-image: url("../../assets/images/icon_arrow_top.png"); /* 矢印画像 */
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px auto;
  box-shadow: 0 0 0 2px #3b281a; /* こげ茶の外枠っぽく */
}

/* 画面に入ったときに付くクラス → 表示状態 */
.c-pagetop.is-visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.c-pagetop:hover .c-pagetop__icon {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.35);
}
.l-footer__bottom__copyright {
font-family: "Montserrat", "Noto Sans JP","Hiragino Kaku Gothic ProN", "Hiragino Sans","Yu Gothic Medium", "Yu Gothic", "YuGothic","Meiryo", "Roboto", sans-serif;
  font-weight: 400
}

@media screen and (max-width: 768px) {
.c-pagetop {
  right: 40px;
  }
}
@media screen and (max-width: 568px) {
.c-ttl__middle {
  font-size: 33px;
}
.c-cv .box {
	margin-top: 30px;
	margin-bottom: 30px;
}
.c-cv .box p {
font-size: 3.2vw;
	margin: 0px 5px 10px 5px;
}	
.c-cv__text{
	font-size: 3.2vw;
}	
.c-cv .tel_ara .tel_link a {
  font-size: 28px;	
}
.tel_link::before {
  width: 30px;
  height: 30px;
  margin-right: 10px;
}	
.c-cv .tel_ara p {
  font-size: 13px;
	margin-top: 5px;

}	
.sliding_02 {
	height: 45px;
	background-size: auto 45px;
}
.c-pagetop {
  top: auto;
	bottom: 120px;
	right: 20px
}
.c-pagetop__icon {
  width: 50px;
  height: 50px;
  background-size: 10px auto;
}
}



/* 共通 */
.l-wrapper {
  width: 90%;
  max-width: 1166px;
  margin: auto;
  position: relative
}
.s-wrapper {
  width: 90%;
  max-width: 966px;
  margin: auto;
  position: relative;
}

.c-slideup {
  opacity: 1;
  transition: opacity 1s ease-in-out, transform 1.8s cubic-bezier(0.35, 0.34, 0.22, 0.99);
  will-change: transform, opacity
}

.c-slideup.--slow {
  transition: opacity 1s ease-in-out, transform 1.8s cubic-bezier(0.35, 0.34, 0.22, 0.99)
}

.c-slideup.init {
  opacity: 0;
  transform: translate(0, 100px)
}

@media screen and (max-width: 768px) {
  .c-slideup.init {
    transform: translate(0, 80px)
  }
}

.c-slideup--js {
  opacity: 0;
  transform: translate(0, 150px);
  will-change: transform, opacity
}


@media screen and (min-width: 569px) {
  .delay_100 {
    transition-delay: 100ms
  }

  .delay_200 {
    transition-delay: 200ms
  }

  .delay_300 {
    transition-delay: 300ms
  }

  .delay_400 {
    transition-delay: 400ms
  }

  .delay_400_0 {
    transition-delay: 400ms
  }
}

@media screen and (min-width: 569px)and (max-width: 568px) {
  .delay_400_0 {
    transition-delay: 0
  }
}



.red{color: #e54a3a}
.pink{color: #ea73af}
.green{color: #4fad34}
.yellow{color: #f3c11d}
.orange{color: #f08300}
.brown{color: #4e2b0e}
.blue{color: #168caf}
.white{color: #FFFFff}
.bk_brown{background: linear-gradient(#372316, #1c120d);}
.bk_red{background-color:#e54a3a}
.bk_pink{background-color:#ea73af}
.bk_green{background-color:#4fad34}
.bk_orange{background-color:#f08300}
.bk_yellow{background-color:#f3c11d}
.font_28{
	font-size: 28px;
	font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
	line-height: 1.7;
	color: #FFFFFF;
	letter-spacing: 0.08em;
}
.formal_font{
	font-size: 16px;
	font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
	line-height: 2;
	color: #FFFFFF;
	letter-spacing: 0.08em;
}
.sp_only{display: none;}

.btn_01{
}
.btn_01 a{
	background-color: #FFFFFF;
	border-radius: 100px;
	max-width: 300px;
	width: 80%;
	color: #2d2316;
	display: inline-block;
	padding: 20px 5px 20px 35px;
	position: relative;
	text-align: left;
	font-size: 16px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	border: 1px solid #4e2b0e;
	
}
.btn_01 a::after{
		content: '→';
display: inline-block;
width: 50px;
height: 50px;
		border-radius: 50%;
	background: linear-gradient(#4e2b0e, #1c120d);
	color: #FFFFFF;
	position: absolute;
	top: 50%;
transform: translateY(-50%);
	right: 10px;
	line-height: 3;
	text-align: center;
	font-size: 16px;
}
.colorful{
	line-height: 1.2;
  font-size: 20px;
  letter-spacing: 0.1em;
  font-weight: bold;
	margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
.tabu_kara{}
.sp_none{display: none;}
.sp_only{display: block;}
}
@media screen and (max-width: 568px){
.font_28 {
  font-size: 5.688vw;
	line-height: 1.5;
}
.formal_font {
  font-size: 3.6vw;
}
.btn_01 a{
	font-size: 3.2vw;
}
}


/*****************
下層ページ
*****************/
.page{
	padding: 100px 0;
	color: #FFFFFF;
}
.c-pageTitle{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.c-pageTitle .l-wrapper{
	max-height: 600px;
	height: 600px;
	position: relative;
}
.c-pageTitle .c-ttl {
  position: absolute;
  top: 60%;
  left: 0%;
  transform: translateY(-60%);
}
.c-pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(0,0,0,0.4); 
  pointer-events: none;
	  max-height: 600px;
  height: 600px;
}
.c-pageTitle .l-wrapper .white{text-shadow: 0 3px 4px rgba(0, 0, 0, 0.45);}

@media (max-width: 896px) {
.page {
  padding: 50px 0;
}
.c-pageTitle .l-wrapper,.c-pageTitle::before  {
    max-height: 500px;
    height: 500px;
  }

}
@media screen and (max-width: 568px){
.c-pageTitle .l-wrapper ,.c-pageTitle::before{
    max-height: 400px;
    height: 400px;
  }

}


/***********************************
 breadcumb
************************************/
#breadcrumb {
	padding: 0 0 70px;
	font-size: 12px;
	color: #FFFFFF;
	background-color: #1C120D;
}

#breadcrumb span {
  display: inline-block;
	padding: 0 3px;
}

#breadcrumb span a {
	text-decoration: underline !important;
	color: rgba(255,255,255,0.50);
	display: inline-block;
}

#breadcrumb span:first-child a::before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  background: url("./common/images/breadcrumb_home.png") no-repeat center/contain;
  top: -3px;
  position: relative;
  margin-right: 10px;
}
@media screen and (max-width: 568px){
#breadcrumb {
	padding: 0 0 30px;
	font-size: 10px;
}
}