@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Sawarabi+Gothic&family=Sawarabi+Mincho&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:wght@:400;500;700;900&display=swap");
/*--------------------------------------------------------------------------------------------------

   common

--------------------------------------------------------------------------------------------------*/
/* ==========================================================================
   Foundation
   ========================================================================== */
/*reset-------------------------------------------------*/
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,
l,
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; }

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1; }

* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box; }

img {
  border: none;
  vertical-align: top; }

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

input,
textarea {
  margin: 0;
  padding: 0; }

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

table {
  border-spacing: 0; }

caption,
th {
  text-align: left; }

img,
a img {
  border: none; }

a {
  cursor: pointer; }

/*-------------------------------------------------reset*/
/*base-------------------------------------------------*/
body {
  margin: 0;
  padding: 0;
  color: #313131;
  font-family: 'Sawarabi Mincho', serif;
  font-size: 16px;
	 }

.font-sawarabi-gothic {
  font-family: 'Sawarabi Gothic', sans-serif;
		font-weight: normal; }

.font-noto-san-jp {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif; }

a {
  color: #313131;
  text-decoration: none;
  display: block; }

a:hover {
  opacity: 0.5; }

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

address {
  font-style: normal; }

/*-------------------------------------------------base*/
/* ==========================================================================
   Layout
   ========================================================================== */
.l-page {
  position: relative; }
  .l-page::before {
    left: 0;
    top: 0;
    border-top: 465px solid #e60012;
    border-right: 780px solid transparent;
    z-index: -1; }

/*--------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------*/
.l-header {
  position: relative;
  text-align: center;
		 }
  .l-header__info {
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 10;
		 }
  .l-header nav {
    width: 100%;
    margin: 0 auto;
    margin-top: 70px;
				position: fixed;
				z-index: 100;
		 }
			.l-header nav li.flogo img {
				width: 160px;
				margin-right: 20px;
			}
			#second nav.fixed li.flogo {
				display: block;
			}
			
			.l-header nav.fixed {
				margin-top: 0;
				padding: 40px 0;
				background-color: rgba(255, 255, 255, .8);
			}
			.l-header nav.fixed a {
				color: #000;
			}
			.l-header nav.fixed .l-header__btn-link {
				color: #FFF;
			}
  .l-header__logo {
    margin: 170px 0 0; }
  .l-header__menu {
    justify-content: center; }
    .l-header__menu li {
      margin-right: 30px; }
      .l-header__menu li:first-child {
        margin-right: 17px; }
      .l-header__menu li:nth-child(2n) {
        margin-right: 32px; }
      .l-header__menu li:nth-child(3n) {
        margin-right: 38px; }
      .l-header__menu li:nth-child(4n) {
        margin-right: 38px; }
      .l-header__menu li:last-child {
        margin-right: 0; }
      .l-header__menu li a {
        font-size: 20px;
        color: #fff;
        text-align: center; }
        .l-header__menu li a small {
          font-size: 14px;
          display: block; }
		.l-header__text {
			margin: 100px 0 0;
		}
  .l-header__text a {
    padding: 10px 55px;
    background-color: #000;
    box-shadow: 5px 5px #ff0000;
    display: inline-block;
    color: #fff; }
  .l-header__links {
    position: fixed;
    right: 0;
    bottom: 40%;
				z-index: 10; }
    .l-header__links li {
      margin-bottom: 25px; }
      .l-header__links li a {
        color: #fff; }
  .l-header__btn-link {
    min-width: 195px;
    background: #000;
    padding: 5px 29px;
    font-size: 20px;
    letter-spacing: 0.5px;
    box-shadow: 5px 5px #ff0000; }
    .l-header__btn-link--contact {
      text-transform: uppercase; }
    .l-header__btn-link--ins {
      padding-left: 55px;
      background: url(../image/img-ins-white.png) no-repeat left 24px center #000; }
    .l-header__btn-link--you {
						background: url(../image/icon-you-header.png) no-repeat left 24px center #000;
						background-size: 20px; }
  .l-header--page {
    padding: 25px 0; }
    .l-header--page__info {
    width: 100%;
      justify-content: space-between; }
    .l-header--page__logo {
      margin-left: 100px; }
    .l-header--page nav {
      margin-top: 15px; }
    .l-header--page .l-header__menu li a {
      color: #000; }
    .l-header--page .l-header__btn-link {
      color: #fff !important; }
    .l-header--page .l-header__links {
      top: 420px; }
  .l-header--news .l-header__links {
    top: 155px; }
.l-header--page__info .l-wrapper {
width: 1366px;
max-width: 90%;
margin: 0 auto;
}
/*-------------------------------------------------header*/
/*------------------------------------------------------------------------------------------------
  main
--------------------------------------------------------------------------------------------------*/
.l-wrapper {
  width: 1366px;
  max-width: 90%;
  margin: 0 auto; }
  .l-wrapper--1030 {
    width: 1030px; }

/*改行クラス（PC）*/
.breakLinePc {
  display: block; }

/*改行クラス（SP）*/
.breakLineSp {
  display: inline; }

/*スクロールフェードイン効果*/
.fadeInWrapTop {
  display: block;
  position: relative;
  transition-duration: 1.0s;
  opacity: 0;
  bottom: -50px; }

.fadeInWrapTop.active {
  opacity: 1;
  bottom: 0; }

.fadeInWrapBegin {
  position: relative;
  transition-duration: 1.0s;
  opacity: 0;
  bottom: -50px; }

.fadeInWrapBegin.active {
  opacity: 1;
  bottom: 0; }

.fadeInWrapBegin02 {
  position: relative;
  transition-duration: 1.0s;
  transition-timing-function: ease-in-out;
  opacity: 0; }

.fadeInWrapBegin02.active {
  opacity: 1; }

.fadeInWrapRight {
  position: relative;
  transition-duration: 1.0s;
  transition-timing-function: ease-in-out;
  opacity: 0;
  right: -50px; }

.fadeInWrapRight.active {
  opacity: 1;
  right: 0; }

.fadeInWrapLeft {
  position: relative;
  transition-duration: 1.0s;
  transition-timing-function: ease-in-out;
  opacity: 0;
  left: -50px; }

.fadeInWrapLeft.active {
  opacity: 1;
  left: 0; }

/*-------------------------------------------------main*/
/*------------------------------------------------------------------------------------------------
  footer
--------------------------------------------------------------------------------------------------*/
.l-footer__link-menu {
  background: url(../image/bg-menu-footer.jpg) no-repeat;
  background-size: cover;
   }
			.l-footer__link-menu a {
			padding: 105px 0 100px 0;
			}
  .l-footer__link-menu a h2 {
    color: #fff; }
.l-footer__link-contact {
  padding: 110px 0 135px 0; }
.l-footer__access {
  padding: 60px 0;
  background: url(../image/bg-personal-top.jpg) repeat; }
  .l-footer__access .l-wrapper {
    width: 985px;
				margin: 0 auto; }
  .l-footer__access__title {
    margin-left: 0;
    padding-top: 15px;
    position: relative;
    text-align: center;
    margin: 0 auto; }
    .l-footer__access__title .p-heading {
      width: 255px;
      background: url(../image/bg-personal-top.jpg) repeat;
      display: inline-block;
      position: relative;
      z-index: 1; }
    .l-footer__access__title::after {
      content: "";
      position: absolute;
      width: 100%;
      top: 40px;
      height: 2px;
      border-bottom: 2px solid #ff0000;
      left: 0; }
  .l-footer__access__info {
    margin-top: 40px;
    justify-content: space-between; }
  .l-footer__access__text {
    color: #000;
    width: 62%; }
    .l-footer__access__text img {
      border-bottom: 10px solid #ff0000; }
    .l-footer__access__text address {
      margin-top: 18px;
      margin-right: 80px; }
    .l-footer__access__text__time {
      margin-top: 18px; }
.l-footer__info {
  color: #fff;
  background-color: #000;
  padding: 70px 0 30px 0; }
  .l-footer__info .l-wrapper {
    width: 960px; }
  .l-footer__info .l-header__btn-link {
    background: #d9d9d9 url(../image/img-ins.png) no-repeat left 35px center;
    box-shadow: 13px 7px #ff0000;
    padding: 5px 29px 5px 70px;
    color: #000; }
  .l-footer__info__logo {
    margin: 30px 0 20px 0; }
  .l-footer__info__text__time {
    margin-left: 80px; }
.l-footer__coppy {
  padding: 20px 0;
  color: #fff;
  background-color: #e60012;
  text-align: center; }
.l-footer .ptop {
  width: 130px;
  height: 130px;
  background: #e60012 url(../image/ptop.png) no-repeat center top 14px;
  border-radius: 50%;
  padding-top: 80px;
  text-align: center;
  color: #fff;
  font-size: 18px;
  position: absolute;
  bottom: 450px;
  right: 9%;
  line-height: 1.1;
  cursor: pointer; }

/*-------------------------------------------------footer*/
/* ==========================================================================
   Object
   ========================================================================== */
/*------------------------------------------------------------------------------------------------
  Component
--------------------------------------------------------------------------------------------------*/
.c-btn {
  width: 193px;
  display: inline-block;
  padding: 5px 0;
  background-color: #e60012;
  color: #fff;
  text-align: center;
  letter-spacing: 2px;
  font-size: 20px;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.8); }

/*-------------------------------------------------Component*/
/*------------------------------------------------------------------------------------------------
  Project
--------------------------------------------------------------------------------------------------*/
.p-heading {
  font-size: 45px;
  color: #000;
  line-height: 1.2;
  text-transform: uppercase;
  text-align: center; }
  .p-heading small {
    display: block;
    font-size: 16px;
				margin-top: 6px;
				text-transform: lowercase; }
  .p-heading span {
    text-transform: lowercase; }

.p-links {
  justify-content: center;
  flex-direction: column;
  align-items: center; }
  .p-links__reservation {
    width: 1024px;
    max-width: 95%;
    text-align: center;
    background-color: #e60012;
    box-shadow: 10px 10px #3e3a39;
    margin-bottom: 40px;
   }
    .p-links__reservation::before {
      left: 0;
      top: 0;
      border-top: 60px solid #000;
      border-right: 60px solid transparent; }
  .p-links__contact {
    width: 1024px;
    max-width: 95%;
    justify-content: space-between;
    margin-top: 50px; }
    .p-links__contact li {
      width: calc(50% - 37px);
      background-color: #000;
      box-shadow: 10px 7px #ff0000;
      align-items: center;
      justify-content: center;
       }
						.p-links__contact li a {
						padding: 50px 0;
						width: 100%;
						text-align: center;
						}
      .p-links__contact li a h3 {
        font-size: 45px;
        font-weight: bold;
								border-bottom: none;
								text-align: center; }
        .p-links__contact li a h3 img {
          margin-left: 5px; }
      .p-links__contact li a p {
        margin-top: 15px;
        font-size: 16px;
        line-height: 1.1; }
  .p-links a {
    color: #fff;
    font-size: 45px;
				   }
					.p-links__reservation a {
						padding: 50px 0 55px 0;
					}
    .p-links a small {
      font-size: 18px;
      display: block; }

.p-triangle {
  position: relative; }
  .p-triangle::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0; }

.p-pagination__list::before, .p-pagination__list::after {
  content: "-";
  position: absolute;
  top: 3px; }

.p-pagination__list {
  position: relative;
  display: inline-block; }
  .p-pagination__list::before {
    left: 0;
    margin-right: 7px; }
  .p-pagination__list::after {
    right: 0;
    margin-left: 7px; }
  .p-pagination__list li {
    margin: 0 16px;
    font-size: 20px;
    display: inline-block; }
    .p-pagination__list li a {
      font-size: 20px; }
    .p-pagination__list li span {
      color: #e60012; }

/*-------------------------------------------------Project*/
/*------------------------------------------------------------------------------------------------
  utility
--------------------------------------------------------------------------------------------------*/
.u-al-center {
  text-align: center;
  margin-left: auto;
  margin-right: auto; }

.u-al-right {
  text-align: right; }

.u-al-left {
  text-align: left; }

.u-fl-left {
  float: left; }

.u-flex {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex; }

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

/* mac \*/
* html .u-clear {
  height: 1%; }

/*-------------------------------------------------utility*/

.yoyaku {
	position: fixed;
	bottom: 20px;
	right: 20px;
    font-size: 18px;
    line-height: 1.1;
}

.yoyaku a {
	color: #FFF;
 padding-top: 80px;
 text-align: center;
 width: 130px;
 height: 130px;
 background: #e60012 url(../image/ptop.png) no-repeat center top 14px;
 border-radius: 50%;
}

.fadeInNow {
	animation: fadeup 1s forwards;
}

@keyframes fadeup {
  0% {
    transform: translateY(50px);
  }
  100% {
    transform: translateY(0);
  }
}

@media screen and (min-height:900px) {
	.l-header__logo {
		margin: 300px 0 0;
	}
}


@media screen and (min-height:880px) and ( max-height:899px) {
	.l-header__logo {
		margin: 280px 0 0;
	}
}

@media screen and (min-height:840px) and ( max-height:879px) {
	.l-header__logo {
		margin: 240px 0 0;
	}
}

@media screen and (min-height:790px) and ( max-height:839px) {
	.l-header__logo {
		margin: 200px 0 0;
	}
}

.btnWrap {
	width: 1027px;
	margin: 0 auto;
	padding: 100px 0 0;
}

.btnWrap p {
	margin: 0 0 40px;
}

.btnWrap ul {
	display: flex;
	justify-content: space-between;
}

.l-header #second nav.fixed2 {
width: 100%;
top: 0;
				margin-top: 0;
				padding: 40px 0;
				background-color: rgba(255, 255, 255, .8);
}

.scroll {
	padding-top: 130px;
	margin-top: -130px;
}

#profile {
	padding: 100px 0 0;
}

#access {
	padding: 100px 0 0;
}

.l-header__text_spp {
	display: none;
}

/*# sourceMappingURL=common.css.map */
