:root {
  --easing: cubic-bezier(.2, 1, .2, 1);
  --transition: .8s var(--easing);
  --color-base: #ffffff;
  --color-gold: #D4D1A5;
  --color-black: #555555;
  --color-gray: #ddd;
  --color-theme: #f5695f;
  --color-theme-darken: #f12617;
  --box-shadow: .8rem .8rem 1.2rem rgba(0, 0, 0, .05), -.8rem -.8rem 1.2rem #fff;
  --box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, .08), -1rem -1rem 1.5rem #fff;
  --box-shadow-inset: inset .8rem .8rem 1.2rem rgba(0, 0, 0, .05), inset -.8rem -.8rem 1.2rem #fff;
  --box-shadow-dark: .8rem .8rem 1.2rem rgba(0, 0, 0, .1), -.8rem -.8rem 1.2rem rgba(#fff,.2);
}
html {
	height: 100%;
	word-break: break-word;
	background-color: var(--color-base);
	-webkit-appearance: none;
	-webkit-tap-highlight-color: transparent;
	scroll-behavior: smooth;/*スムーズにスクロールさせる*/
}

body {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0;
	text-size-adjust: 100%;
 　　-webkit-text-size-adjust: 100%;/*Chrome,Safari文字の大きさを安定させる！*/
 　　-ms-text-size-adjust: 100%;/*EgdeMobile*/
 　　-moz-text-size-adjust: 100%;/*firefox*/
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

#circle_bar {
	margin: 20px;
	width: 200px;
	height: 200px;
	position: relative;
	color:#D4D1A5
	z-index: 556;
}
#circle_bar img {
	position: absolute;
	left: 20%;
	top: 35%;
	width: 60%;
}

section {
	margin-bottom: 0em;
}

.display_none{
    display: none;
}
span{
	display: inline-block;
}

#dk_js_attention {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	font-size: 100%;
	text-align: center;
	color: #f00;
	padding: 10px 0;
	background: #fff;
	border-top: 1px solid #e0e0e0;
	z-index: 999;
}

a{
	color: inherit;
	text-decoration: none;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

::-moz-selection {
  color: #fff;
  background: var(--color-theme);
}

/*::selection {
  color: #fff;
  background: var(--color-theme);
}*/

/*input {
    display: none;
}*/

img {
  /*border: 0;
  margin: 0;*/
	vertical-align: top;/*画像下の隙間を無くす*/
}
figure {
  margin: 0;
}

/*フォント（明朝体）*/
/*@font-face {
	font-family: "NotoSerifJP-Bold";
	src: url("font/NotoSerifJP/NotoSerifJP-Bold.woff2") format('woff2'),
	url("font/NotoSerifJP/NotoSerifJP-Bold.woff") format('woff'),
	url("font/NotoSerifJP/NotoSerifJP-Bold.eot?") format('eot'),
	url("font/NotoSerifJP/NotoSerifJP-Bold.ttf") format('truetype');
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}*/
@font-face {
	font-family: "NotoSerifJP-SemiBold";
	src: url("font/NotoSerifJP/NotoSerifJP-SemiBold.woff2") format('woff2'),
	url("font/NotoSerifJP/NotoSerifJP-SemiBold.woff") format('woff'),
	url("font/NotoSerifJP/NotoSerifJP-SemiBold.eot?") format('eot'),
	url("font/NotoSerifJP/NotoSerifJP-SemiBold.ttf") format('truetype');
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}
/*@font-face {
	font-family: "NotoSerifJP-Medium";
	src: url("font/NotoSerifJP/NotoSerifJP-Medium.woff2") format('woff2'),
	url("font/NotoSerifJP/NotoSerifJP-Medium.woff") format('woff'),
	url("font/NotoSerifJP/NotoSerifJP-Medium.eot?") format('eot'),
	url("font/NotoSerifJP/NotoSerifJP-Medium.ttf") format('truetype');
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}*/
@font-face {
	font-family: "NotoSerifJP-Regular";
	src: url("font/NotoSerifJP/NotoSerifJP-Regular.woff2") format('woff2'),
	url("font/NotoSerifJP/NotoSerifJP-Regular.woff") format('woff'),
	url("font/NotoSerifJP/NotoSerifJP-Regular.eot?") format('eot'),
	url("font/NotoSerifJP/NotoSerifJP-Regular.ttf") format('truetype');
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}
/*フォント（ゴシック体）*/
@font-face {
	font-family: "NotoSansJP-Bold";
	src: url("font/NotoSansJP/NotoSansJP-Bold.woff2") format('woff2'),
	url("font/NotoSansJP/NotoSansJP-Bold.woff") format('woff'),
	url("font/NotoSansJP/NotoSansJP-Bold.eot?") format('eot'),
	url("font/NotoSansJP/NotoSansJP-Bold.ttf") format('truetype');
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}
@font-face {
	font-family: "NotoSansJP-Regular";
	src: url("font/NotoSansJP/NotoSansJP-Regular.woff2") format('woff2'),
	url("font/NotoSansJP/NotoSansJP-Regular.woff") format('woff'),
	url("font/NotoSansJP/NotoSansJP-Regular.eot?") format('eot'),
	url("font/NotoSansJP/NotoSansJP-Regular.ttf") format('truetype');
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}


/* TOPページのトップイメージ */
.opning_img{
	width: 100%;
	height: 45vw;
	/*max-height: 600px;*/
	position: relative;
	background-color: #000000;
	overflow: hidden;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
@media only screen and (orientation:portrait) {
.opning_img{
	height: 100vh;
}
}
@media only screen and (max-width: 767px) and (orientation:portrait) {
.opning_img{
	height: 100vh;
}
}
.opning_img_01{
	position: absolute;
	top: 5%;
	left: -7%;
	width: 60%;
}
.opning_img_02{
	position: absolute;
	bottom: 10%;
	right: -7%;
	width: 45%;
}
@media only screen and (orientation:portrait) {
.opning_img_01{
	left: -10%;
	top: -1%;
	width: 100%;
}
.opning_img_02{
	right: -10%;
	bottom: 2%;
	width: 70%;
}
}
@media only screen and (max-width: 767px) and (orientation:portrait) {
.opning_img_01{
	top: 2vh;
	left: -12%;
	width: 90%;
	min-width: 500px;
}
.opning_img_02{
	bottom: 2vh;
	right: -10%;
	width: 70%;
	min-width: 350px;
}
}
.opning_titl{
	position: absolute;
	left: 0;
	top:calc(50% - 100px);
	width: 100%;
	font-family: "NotoSerifJP-SemiBold";
	letter-spacing: 0.15em;
	color: #FFFFFF;
	display: flex;
	display: -webkit-flex;
	align-self: center;
	flex-direction: column;
	flex-wrap: wrap;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;/*右寄せ*/
	-webkit-justify-content: center;/*右寄せ*/
}
.opning_titl h1{
	font-size: 38px;
	text-align: center;
}
.opning_titl h2{
	font-size: 21px;
	text-align: center;
}
.opning_titl p{
    font-size: 16px;
    text-align: center;
    margin-top: .8em;
}
.opning_titl img{
    text-align: center;
    margin-top: .8em;
    width:150px;
}
@media only screen (max-width: 1024px) and (orientation:portrait) {
.opning_titl{
	top:calc(50% - 18vw);
}
.opning_titl img{
    width:150px;
}
}
@media only screen and (max-width: 767px) and (orientation:portrait) {
.opning_titl{
	top:calc(50% - 18vw);
}
.opning_titl h1{
	font-size: min(7vw, 36px);
}
.opning_titl h2{
	font-size: min(4vw, 21px);
}
.opning_titl p{
	font-size: min(3vw, 16px);
}
.opning_titl img{
    width: 24vw;
}
}

/* その他TOPイメージ */
.object_fit_cover_right {
	object-fit: cover;
	object-position: right 0px bottom 0px;
	width: 100%;
	height: 300px;
}
.object_fit_cover_left {
	object-fit: cover;
	object-position: left 0px bottom 0px;
	width: 100%;
	height: 300px;
}
@media only screen and (max-width: 767px) and (orientation:portrait) {
.object_fit_cover_right {
	object-fit: cover;
	object-position: right 0px bottom 0px;
	height: 250px;
}
.object_fit_cover_left {
	object-fit: cover;
	object-position: left 0px bottom 0px;
	width: 100%;
	height: 250px;
}
}

/* TOPスライド */
[class*=swiper]:focus {
  outline: none;
}

.slide-media,
.thumb-media {
  position: relative;
  overflow: hidden;
}
.slide-media img,
.thumb-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /*z-index: 1;*/
}

.top_slide {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	border-top: 1px solid #eee;  /* ページネーション */
}
@media only screen and (max-width: 1024px) {
  .top_slide {
    margin-bottom: 0rem;
  }
}
.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  position: relative;
  -webkit-transition-property: opacity, -webkit-transform ;
  transition-property: opacity, -webkit-transform ;
  transition-property: opacity, transform ;
  transition-property: opacity, transform, -webkit-transform ;
  pointer-events: none;
}
.slide {
  display: grid;
  place-content: center;
  height: 87vh;
  padding: 0 8rem;
  text-align: center;
}
@media only screen and (max-width: 1024px) and (orientation:portrait) {
.slide {
  height: 60vh;
  }
}
@media only screen and (max-width: 767px) and (orientation:portrait) {
.slide {
  height: 70vh;
  }
}
/*【iPhone〜 横向きのみ】
@media only screen and (max-width: 767px) and (orientation: landscape){
.slide {
  height: 87vh;
  }
}*/
.slide-media {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.slide-media img {
  -webkit-transition: 7s 1s linear;
  transition: 7s 1s linear;
  -webkit-transform: translateX(-1.5%) scale(1.1);
          transform: translateX(-1.5%) scale(1.1);
}
.slide_title, 
.slide_text,
.slide_link {
	font-family: "NotoSerifJP-SemiBold";
	transform: translate(-50%, -50%);
  -webkit-animation: 2s var(--easing) both;
          animation: 2s var(--easing) both;
	opacity: 0;
	z-index: 2;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
.swiper-slide:nth-child(1n) {
	color: #f5695f;
}
.swiper-slide:nth-child(2n) {
	color: #f5695f;
}
.swiper-slide:nth-child(3n) {
	color: #ffffff;
}
.slide_title {
	position: absolute;
	bottom: 46%;
	right: 20px;
	font-size: 38px;
	line-height: 1.1;
	-webkit-animation-delay: 0.6s;
	animation-delay: 0.6s;
}
.slide_text {
	position: absolute;
	bottom: 42%;
	right: 23px;
	font-size: 14px;
	-webkit-animation-delay: 0.9s;
	animation-delay: 0.9s;
}
.slide_bt {
	position: absolute;
	bottom: 40px;
	right: 20px;
	-webkit-animation-delay: 1.2s;
	animation-delay: 1.2s;
}
/*【 縦向きのみ】*/
@media (max-aspect-ratio: 3/4)  {
.slide_title {
	font-size: 32px;
}
.slide_text {
	font-size: 12px;
}
}
@media only screen and (max-width: 767px) and (orientation:portrait) {
.slide_title {
	font-size: 24px;
}
.slide_text {
	font-size: 12px;
}
}
@media only screen and (max-width: 767px) and (orientation: landscape){
.slide_title {
	font-size: 24px;
}
.slide_text {
	font-size: 12px;
}
}
.slide_link {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.slide-button {
	font-size: 1.2rem;
	display: inline-block;
	color: var(--color-theme);
}
.slide-button::before {
  display: inline-block;
  width: 6rem;
  height: 1px;
  margin: -2px 1.6rem 0 0;
  content: "";
  vertical-align: middle;
  background-color: currentColor;
}
.swiper-slide[class*=-active] .slide-media img {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transform: translateX(1.5%) scale(1.05);
          transform: translateX(1.5%) scale(1.05);
}
/*TOPムービー*/
#movie {
    /*全画面表示の場合 */
	/*width: 177.77777778vh; 16:9 の幅→16 ÷ 9＝ 177.77% */
    /*height: 56.25vw;16:9の幅 → 9 ÷ 16 = 56.25% */
    width: 100vw;
	height: 100%;
	margin: 0px auto 0px auto;
	top: 0;
	left: 0;
	object-fit: cover;
}
.movie_overlay {
	position: absolute;
    left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(45deg, rgba(0,0,0,.2) 50%, rgba(0,0,0,.6) 50%);
	background-size: 2px 2px;
}
.btn_start {
	position: absolute;
	top: calc(50% - 5%);
	left: calc(50% - 5%);
	width: 10%;
	cursor : pointer;
	opacity: 60%;
}
/*TOPムービー上文字*/
.swiper-slide.anm-started .slide_title,
.swiper-slide.anm-started .slide_text,
.swiper-slide.anm-started .slide_link {
  -webkit-animation-name: top_slide-fadeIn;
          animation-name: top_slide-fadeIn;
}
.swiper-slide.anm-finished .slide_title,
.swiper-slide.anm-finished .slide_text,
.swiper-slide.anm-finished .slide_link {
  -webkit-animation-name: top_slide-fadeOut;
          animation-name: top_slide-fadeOut;
}
@-webkit-keyframes top_slide-fadeIn {
  0% {
    -webkit-transform: translateY(6rem);
            transform: translateY(6rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes top_slide-fadeOut {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-6rem);
            transform: translateY(-6rem);
    opacity: 0;
  }
}
@keyframes top_slide-fadeIn {
  0% {
    -webkit-transform: translateY(6rem);
            transform: translateY(6rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes top_slide-fadeOut {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-6rem);
            transform: translateY(-6rem);
    opacity: 0;
  }
}
.fraction {
  position: absolute;
  top: 4rem;
  left: 4rem;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  margin: auto;
  font-size: 0;
  z-index: 50;
}
@media only screen and (max-width: 1024px) {
.fraction {
  top: 3rem;
  left: 6rem;
  }
}
.fraction .current {
  font-size: 3.2rem;
  display: inline-block;
  overflow: hidden;
  width: 5rem;
}
.fraction .current .num {
  display: inline-block;
}
.fraction .current .num.anm-started {
  -webkit-animation: mv05-fraction 1s var(--easing);
          animation: mv05-fraction 1s var(--easing);
}
.fraction .total {
  vertical-align: 0.5em;
}
.fraction .total::before {
  content: " / ";
}
.swiper-pagination {
	position: absolute;
	bottom: 20px;
	right: 10px;
	width: 100%;
	height: -webkit-max-content;
	height: -moz-max-content;
	height: max-content;
	margin: auto;
	text-align: right;
	-webkit-transition: 300ms opacity;
	-o-transition: 300ms opacity;
	transition: 300ms opacity;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	z-index: 1;
}
.swiper-pagination-bullet {
	display: inline-block;
	width: 7%;
	height: 2px;
	margin-left: 5px;
	background-color: rgba(119,119,119,0.4);
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
}
.swiper-pagination-bullet:not(:first-child) {
  margin-top: 1.6rem;
}
.swiper-pagination-bullet-active {
  background-color: var(--color-theme);
}

.caption {
	font-size: 10px;	
}
.breadcrumb {
	margin: 0px 0 0 20px;
	font-size: 12px;
	text-align: left !important;
	clear: both;
	overflow: hidden;
	z-index: 200;
	background: #EFF0F1 !important;
}
.lineup-c-section__basic--sns {
	margin-top: 0px;
	margin-bottom: 0px;
}
.lineup-c-section__basic--note {
	margin-top: 0px;
	margin-bottom: 0px;
	padding-top: 50px;
	padding-bottom: 100px;
}
.blackwrap {
	z-index: 77;
}
.main_img {
	position: -webkit-sticky;/*これが無いと下へ回り込む*/
	position: sticky;/*これが無いと下へ回り込む*/
	top: 0;
	overflow: hidden;
}
.background_color_09 {
	position: relative;
}

/*ローダー*/
#loader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: #000;
	z-index: 555;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
}
#loader P {
	font-family: "NotoSerifJP-SemiBold";
	font-size: 24px;
	color: #ffffff;
	line-height: 3em;
	letter-spacing: 0.2em;
}
.loaded {
  opacity: 0;
  visibility: hidden;
}

/*ヘッダー*/
#header {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 60px;
	padding:0 3px 0 3px;
	background-color: #000000;
	border-radius: 0 0 12px 12px;
	opacity: 0.8;
	transition: .5s;
	z-index: 55;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
#header .title_rogo {
	position: absolute;
	left: 25px;
	top: 13px;
	height: 35px;
	color: #EE0000;
}
@media print, screen and (max-width: 767px) {
#header .title_rogo {
	left: 15px;
}
}
@media print, screen and (min-width: 1025px) {
.pc_menu {
	margin-top: 28px;
	display: flex;
	display: -webkit-flex;
	align-self: center;
	align-items: center;
	-webkit-align-items: center;
	justify-content: flex-end;/*右寄せ*/
	-webkit-justify-content: flex-end;/*右寄せ*/
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
}
@media print, screen and (max-width: 1024px) {
.pc_menu {
	display: none;
}
}
.pc_menu li {
	font-size: 12px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #D4D1A5;
	padding: 0em 3em;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.pc_menu li:first-of-type {
	margin-left: 0px;
	border-left-width: 0px;
}
.pc_menu li:last-of-type {
	margin-right: 0%;
}
.menu_light li {
    color: #D4D1A5;
  }
.menu_light li.active {
	color: var(--color-theme);
	text-decoration: underline;
	text-underline-offset: 6px;
  }
/*タブレットサイズ以下の場合、スクロールでヘッダーが表示・非表示*/
@media print, screen and (max-width: 1024px) {
#header.UpMove{/*上に上がる動き*/
  animation: UpAnime 0.5s forwards;
}
#header.DownMove{/*下に下がる動き*/
  animation: DownAnime 0.5s forwards;
}
}
@keyframes UpAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 0;
  transform: translateY(-100px);
  }
}
@keyframes DownAnime{
  from {
    opacity: 0;
  transform: translateY(-100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}
@media print, screen and (min-width: 1025px) {
.hamburger_menu {
	display: none;
}
}
@media print, screen and (max-width: 1024px) {
.hamburger_menu {
	position: absolute;
	top: 2px;
	right: 10px;
}
}
@media print, screen and (max-width: 767px) {
.hamburger_menu {
	top: 2px;
	right: 0px;
}
}
.openbtn {/*ボタン外側*/
	position: relative;
	right: 20px;
	width: 40px;
	height: 50px;
	overflow: hidden;
	mix-blend-mode: difference;
	cursor: pointer;
	z-index: 100;
}
@media print, screen and (max-width: 767px) {
.openbtn {/*ボタン外側*/
	width: 40px;
	height: 48px;
}
}
.openbtn span {/*ボタン内側*/
	position: absolute;
	top: 0px;
	width: 100%;
	height: 1px;
	background-color: #D4D1A5;
	display: inline-block;
	transition: all .4s;
	left: 25%;
}
.openbtn span:nth-of-type(1) {
	top: 13px;
}
.openbtn span:nth-of-type(2) {
	top: 19px;
}
.openbtn span:nth-of-type(3) {
	top: 25px;
}
.openbtn::after {/*「Navi」表示*/
	content: "Navi";
	position: absolute;
	bottom: 3px;
	left: calc(50% - 6px);
	left: -webkit-calc(50% - 6px);
	font-size:9px;
	color: #D4D1A5;
}
#header_01:checked ~ #header label[for="header_01"] > .openbtn span:nth-of-type(1) {/*「×」に変更*/
	top: 14px;
	left: 14px;
	transform: translateY(6px) rotate(-45deg);
	width: 70%;
	background-color: #D4D1A5;
}
#header_01:checked ~ #header label[for="header_01"] > .openbtn span:nth-of-type(2) {
	opacity: 0;
}
#header_01:checked ~ #header label[for="header_01"] > .openbtn span:nth-of-type(3) {
	top: 26px;
	left: 14px;
	transform: translateY(-6px) rotate(45deg);
	width: 70%;
	background-color: #D4D1A5;
}
#header_01:checked ~ #header label[for="header_01"] > .openbtn::after {/*「Close」表示*/
	content: "Close";
	color: #D4D1A5;
	left: calc(50% - 4px);
	left: -webkit-calc(50% - 4px);
}
#header_01:checked ~ #header label[for="header_01"] > .tablet_menu {/*「ハンバーガーメニュー内」表示*/
	right: 0%;
	-webkit-transition: .5s;
	transition: .5s;
	overflow: scroll;/*スクロールさせる*/
	scrollbar-width: none;/*スクロールバーを消す（fire fox）*/
	-ms-overflow-style: none;/*スクロールバーを消す（explorer）*/
	opacity: 1;
}
#header_01:checked ~ section {
    filter:blur(3px) grayscale(.7);
	-webkit-filter:blur(3px) grayscale(.7);
    -moz-filter:blur(3px) grayscale(.7);
    -ms-filter:blur(3px) grayscale(.7);
}
.tablet_menu {
	position: fixed;
	top: 0px;
	right: -100%;
	width: 30vw;
	height: 100vh;
	padding: 120px 4vw 20px 4vw;
	background-color: rgba(17,17,17,0.6);
	-webkit-transition: .5s;
	transition: .5s;
	font-size: 0px;/*1カラム改行されてしまうのを解消*/
	opacity: 0;
	z-index: 50;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
@media print, screen and (max-width: 767px) {
.tablet_menu {
	width: 100vw;
	padding: 120px 20px 20px 20vw;
}
}
.tablet_menu li {
	font-family: "NotoSerifJP-SemiBold";
	font-size: 16px;
	color: #D4D1A5;
	text-align: left;
	line-height: 1.5em;
	margin-bottom: 2em;
	display: block;
}
.tablet_menu li::before {/*「Menu」表示*/
	content: "▸";
}

@media print, screen and (max-width: 767px) {
.tablet_menu li {
	font-size: 16px;
}
}
.tablet_menu::-webkit-scrollbar {/*スクロールバーを消す（safafi,chrome）*/
 display:none;
}
@-webkit-keyframes move_tablet_menu {
 0% {
	 right: -100%;
	opacity: 0;
}
 15%, 85% {
	 right: 0%;
	opacity: 1;
}
 100% {
	 right: -100%;
	opacity: 0;
}
}
 @keyframes move_tablet_menu {
 0% {
	 right: -100%;
	opacity: 0;
}
 15%, 85% {
	 right: 0%;
	opacity: 1;
}
 100% {
	 right: -100%;
	opacity: 0;
}
}
label .move_tablet_menu {
	-webkit-animation-name: move_tablet_menu;
	animation-name: move_tablet_menu;
	animation-delay: 0s;
	-webkit-animation-duration: 2.5s;
	animation-duration: 2.5s;
	animation-fill-mode: none;
}

/*フッター*/
.sns_inner {
	width: 97%;
	margin: 50px auto 0  auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.sns_inner .title_rogo {
	position: absolute;
	left: 0;
	top: 0px;
	display: flex;
	display: -webkit-flex;
	align-items: center;
	flex-direction: row;
	flex-wrap: wrap;
}
.sns_inner .title_rogo img {
	height: 40px;
}
@media print, screen and (max-width: 767px) {
.sns_inner .title_rogo {
	display: none;
}
}
/*sns*/
.sns_rogo {
	position: absolute;
	left: 25px;
	top: 10px;
	height: 35px;
}
.sns_rogo img {
	/*mix-blend-mode: overlay;*/
}
.sns_menu {
	margin-top: 28px;
	display: flex;
	display: -webkit-flex;
	align-self: center;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	-webkit-align-items: center;
	justify-content: flex-end;/*右寄せ*/
	-webkit-justify-content: flex-end;/*右寄せ*/
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
@media print, screen and (max-width: 767px) {
.sns_menu {
	justify-content: center;/*右寄せ*/
	-webkit-justify-content: center;/*右寄せ*/
}
}
.sns_menu li {
	margin-right: 5px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.sns_menu li:first-of-type {
	margin-left: 0px;
}
.sns_menu li:last-of-type {
	margin-right: 0px;
}
.sns_menu li img {
	width: 40px;
}
.footer_inner {
	width: 100%;
	height: 40px;
	font-size: 10px;
	color: #D4D1A5;
	background-color: #000000;
	border-radius: 12px 12px 0 0;
	opacity: 0.8;
	z-index: 55;
	margin:10px 0 0 0;
	display: flex;
	display: -webkit-flex;
	align-self: center;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;/*中央寄*/
	-webkit-justify-content: center;/*中央寄せ*/
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.footer_inner li {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

/*TOPムービー*/
.top_stop_scroll_container {
	position: relative;
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.top_stop_scroll {
	position: -webkit-sticky;
	position: sticky;
	top: 0px;
    left: 50%
	width: 100%;
	/*max-width: 1180px;*/
	margin: 0px auto 0px auto;
	display: flex;
	align-items: start;
	justify-content: center;
	overflow: hidden;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	z-index: -1;
}
 @media print, screen and (max-width: 1240px) {
.top_stop_scroll {
	margin: 0px 0px 0px 0px;
}
}
 @media print, screen and (max-width: 1024px) {
.top_stop_scroll {
	margin: 0px 0px 0px 0px;
}
}
 @media print, screen and (max-width: 767px) {
.top_stop_scroll {
	margin: 0px 0px 0px 0px;
}
}
.background_color_09 {
	position: -webkit-sticky;/*これが無いと下へ回り込む*/
	position: sticky;/*これが無いと下へ回り込む*/
	top: 0;
	width: 100%;
	overflow: hidden;
	padding: 5vw 5vw 5vw 5vw;
	background-color: #FFF;
	z-index: 2;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

/*position: sticky用*/
.stop_scroll_container {
	position: relative;
	width: 100%;
	max-width: 1240px;
	margin: 0px auto 0px auto;
	padding-right: 30px;
	padding-left: 30px;
	top: 0px;
	font-size: 0px;/*1カラム改行されてしまうのを解消*/
	display: flex;
	display: -webkit-flex;
	align-self: stretch;
	flex-direction: row;
	flex-wrap: wrap;
    align-items: stretch;/*縦位置*/
	 -webkit-align-items: stretch;
	justify-content: flex-end;/*右寄せ*/
	-webkit-justify-content: flex-end;
	align-content: flex-start;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
 @media print, screen and (max-width: 1024px) {
.stop_scroll_container {
	padding-right: 20px;
	padding-left: 20px;
}
}
.stop_scroll {
  position: -webkit-sticky;
  position: sticky;
  top: 10vw;
  width: 100%;
}
@media only screen and (max-width: 1024px) {
.stop_scroll {
  top: 13vw;
}
}
@media only screen and (max-width: 834px) {
.stop_scroll {
  top: 15vw;
}
}
@media only screen and (max-width: 767px) {
.stop_scroll {
	position: relative;
  top: 0vw;
}
}

/*本文*/
.background_white,
.background_gray {
	position: relative;
	width: 100%;
	/*overflow: hidden;*//*position stkcy対策*/
	display: flex;
	display: -webkit-flex;
	align-self: stretch;
	flex-direction: row;
	flex-wrap: wrap;
    align-items: stretch;/*縦位置*/
	 -webkit-align-items: stretch;
	justify-content: flex-start;/*横位置*/
	-webkit-justify-content: flex-start;
	align-content: flex-start;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
.background_white,
.background_gray {
	justify-content: flex-start;/*横位置*/
	-webkit-justify-content: flex-start;
}
}
/*白バック*/
.background_white {
	background-color: #fff;
}
/*グレーバック*/
.background_gray {
	background-color: #F3F3F3;
}
.background_wrapper_top {
	position: relative;
	width: 100%;
	max-width: 1240px;
	margin: 0 auto 0 auto;
	padding: 2vw 5% 0vw 5%;
	display: block;
}
.background_wrapper {
	position: relative;
	width: 100%;
	max-width: 1240px;
	margin:0 auto 0 auto;
	padding:7vw 5% 7vw 5%;
}
 @media screen and (max-width: 767px) {
.background_wrapper_top {
	padding:10vw 7% 0vw 7%;
}
.background_wrapper {
	padding:10vw 7% 10vw 7%;
}
}
.background_wrapper h1 {
	font-family: "NotoSerifJP-SemiBold";
	font-size: 24px;
	color: var(--color-black);
	line-height: 2em;
	letter-spacing: 0.15em;
	margin-bottom: 0.5em;
}
.background_wrapper_top h2 {
	font-family: "NotoSerifJP-SemiBold";
	font-size: 36px;
	color: var(--color-black);
	line-height: 2em;
	letter-spacing: 0.1em;
}
.background_wrapper h3 {
	font-family: "NotoSerifJP-SemiBold";
	font-size: 21px;
	color: var(--color-black);
	line-height: 2em;
	letter-spacing: 0.15em;
	margin-bottom: 0.3em;
}
.background_wrapper P,
.background_wrapper td {
	font-family: "NotoSansJP-Regular";
	font-size: 14px;
	color: var(--color-black);
	line-height: 2em;
	letter-spacing: 0.15em;
}
.noto_sans_bold {
	font-family: "NotoSansJP-Bold";
	font-size: 15px;
	color: var(--color-black);
	line-height: 2em;
	letter-spacing: 0.15em;
}
.links_mind {
	font-family: "NotoSansJP-Bold";
	font-size: 24px;
	color: var(--color-black);
	line-height: 2em;
	margin-bottom: 0.5em;
}
.links_mind_h2 {
	font-family: "NotoSansJP-Bold";
	font-size: 36px;
	color: var(--color-black);
	line-height: 2em;
}
 @media screen and (max-width: 1024px) {
.background_wrapper h1,
.links_mind {
	font-size: 21px;
}
.background_wrapper_top h2,
.links_mind_h2 {
	font-size: 28px;
}
.background_wrapper P,
.background_wrapper td {
	font-size: 13px;
}
.noto_sans_bold {
	font-size: 14px;
}
}
 @media screen and (max-width: 767px) {
.background_wrapper h1,
.links_mind {
	font-size: 21px;
	line-height: 1.6em;
	letter-spacing: 0.05em;
}
.background_wrapper_top h2,
.links_mind_h2 {
	font-size: 24px;
	line-height: 1.6em;
	letter-spacing: 0.05em;
}
.background_wrapper h3 {
	font-size: 21px;
	line-height: 1.6em;
	letter-spacing: 0.05em;
}
.background_wrapper P,
.background_wrapper td {
	font-size: 12px;
	letter-spacing: 0.1em;
}
.noto_sans_bold {
	font-size: 13px;
	letter-spacing: 0.1em;
}
}
.under_line {
	width: 100%;
	margin-bottom: 10px;
	overflow: hidden;
}
.under_line img {
	width: 1400px;
}
#otoiawase input {
	display: inline;
}
.bt_w {
	width: 200px;
	font-family: "NotoSansJP-Regular";
	font-size: 14px;
	color: var(--color-gold);
	letter-spacing: 0.1em;
	text-align: center;
	padding: 1em;
	margin-top: 30px;
	background-image: linear-gradient(90deg, rgba(85, 85, 85, 1), rgba(0, 0, 0, 1));
	border: 1px solid var(--color-gold);
	border-radius: 9999px;/*高さが変わっても必ず超楕円になる*/
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
}
 @media screen and (max-width: 767px) {
.bt_w {
	width: 120px;
	font-size: 12px;
	margin-top: 0px;
}
}
.bt_contact {
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.bt_contact li {
	width: 48%;
	margin: 20px 3% 0 0;
	display: inline-block;
}
.bt_contact li:last-child {
	margin: 20px 0 0 0;
}
#form a,
#tel a {
	width: 100%;
	font-family: "NotoSerifJP-SemiBold";
	font-size: 21px;
	color: var(--color-black);
	letter-spacing: 0.1em;
	padding: 0.5em;
	border: 1px solid #707070;
	border-radius: 9999px;/*高さが変わっても必ず超楕円になる*/
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
}
#form img,
#tel img {
	height: 25px;
	margin: 0 10px 0 0;
}
 @media screen and (max-width: 767px) {
.bt_contact li {
	width: 100%;
	margin: 20px 0 0 0;
	display: block;
}
}
.bt_w:hover,
#form a:hover,
#tel a:hover {
	transition-duration: 0.3s;
	color: var(--color-theme);
	border: 1px solid  var(--color-theme);
	cursor : pointer;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
  }
.bt_traial_hajimetenokatahe {
	display: inline-block;
	float: right;
}
.bt_traial {
	width: 130px;
	display: inline-block;
	margin-top: -70px;
}
.bt_traial:hover {
	transition-duration: 0.3s;
	opacity: 0.6;
	cursor : pointer;
  }
 @media screen and (max-width: 767px) {
 .bt_traial {
	width: 110px;
}
 }
.column_top {
	display: flex;
	display: -webkit-flex;
	align-self: stretch;
	flex-direction: row;
	flex-wrap: wrap;
    align-items: stretch;
	 -webkit-align-items: stretch;
	justify-content: flex-start;
	-webkit-justify-content: flex-start;
	align-content: flex-start;
	position: relative;
	font-size: 0px;/*1カラム改行されてしまうのを解消*/
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.column_2,
.column_3,
.column_4,
.column_1_5 {
	position: relative;
	font-size: 0px;/*1カラム改行されてしまうのを解消*/
	display: flex;
	display: -webkit-flex;
	align-self: stretch;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: stretch;
	-webkit-align-items: stretch;
	justify-content: flex-start;
	-webkit-justify-content: flex-start;
	align-content: flex-start;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.column_top li {
	width: 100%;
	margin-top: 2vh;
	position: relative;
	overflow: hidden;
	background-color: #fff;
}
.column_1 li {
	width: 100%;
	margin-bottom: 2vh;
}
@media only screen and (max-width: 767px) {
.column_1 li {
	width: calc(100% * 1/2);
	width: -webkit-calc(100% * 1/2);
	max-width: 47.5%;/*1カラム改行されてしまうのを解消*/
	margin-right: 5%;
	margin-bottom: 3vw;
}
.column_1 li:nth-of-type(2n) {
	margin-right: 0%;
}
}
.column_2 li {
	width: calc(100% * 1/2);
	width: -webkit-calc(100% * 1/2);
	max-width: 47.5%;/*1カラム改行されてしまうのを解消*/
	margin-right: 5%;
	margin-bottom: 0vw;
}
.column_3 li {
	width: calc(100% * 1/3);
	width: -webkit-calc(100% * 1/3);
	max-width: 30%;/*1カラム改行されてしまうのを解消*/
	margin-right: 5%;
	margin-bottom: 100px;
	position: relative;
}
.column_3 li img {
	margin-bottom: 20px;
}
.column_4 li {
	width: calc(100% * 1/4);
	width: -webkit-calc(100% * 1/4);
	max-width: 22.5%;/*1カラム改行されてしまうのを解消*/
	margin-right: 3.3%;
	margin-bottom: 3vw;
}
.column_1_5 li {
	display: inline-block;
	margin-top: 30px;
	margin-bottom: 30px;
	margin-right: 5%;
}
.column_1_5 li:nth-of-type(1n) {
	width: 17%;
}
.column_1_5 li:nth-of-type(2n) {
	width: 78%;
}
.underline_doto {
	width: 100%;
	border-bottom: 1px dashed #555555;
}
.column_2 li:nth-of-type(2n),
.column_3 li:nth-of-type(3n),
.column_4 li:nth-of-type(4n),
.column_4_3 li:nth-of-type(4n),
.column_1_5 li:nth-of-type(2n),
.border_right_no {
	margin-right: 0%;
}
@media screen and (max-width:767px) {
.column_2 li {
	width: 100%;
	max-width: 100%;
	margin-right: 0%;
	margin-bottom: 20px;
}
.column_2 li:nth-of-type(1n) {
	margin-right: 0%;
}
.column_2 li:nth-of-type(2n) {
	margin-top: 0vw;
}
.column_3 li {
	width: 100%;
	max-width: 100%;
	margin-right: 0%;
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-bottom: 1px dashed #555555;
}
.column_4 li {
	width: calc(100% * 1/2);
	width: -webkit-calc(100% * 1/2);
	max-width: 47.5%;/*1カラム改行されてしまうのを解消*/
	margin-right: 5%;
	margin-bottom: 4vw;
}
.column_1_5 li {
	margin-top: 0px;
	margin-bottom: 0px;
}
.column_1_5 li:nth-of-type(1n) {
	width: 100%;
	max-width: 100%;/*1カラム改行されてしまうのを解消*/
	margin-right: 0%;
}
.column_1_5 li:nth-of-type(2n) {
	width: 100%;
	max-width: 100%;/*1カラム改行されてしまうのを解消*/
	margin-right: 0%;
	margin-top: 20px;
	margin-bottom: 30px;
}
.underline_doto {
	margin-bottom: 40px;
}
}
.padding_right {
	padding-right: 10%;
}
@media only screen and (max-width: 767px) {
.sp_light {
	order: 1;/*スマホで順番入れ替え（左から2番目に移動）*/
}
}

/* Google Mapを囲う要素 */
.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 60%; /* 比率を固定 */
}
 
/* Google Mapのiframe */
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*フッター*/
.footer_area {
	width: 100%;
	background-color: #888888;
}
.footer_wrap {
	position: relative;
	width: 100%;
	max-width: 1240px;
	margin: 0px auto 0px auto;
	padding: 30px 30px 30px 30px;
	font-size: 0px;/*1カラム改行されてしまうのを解消*/
	color: #ffffff;
	font-family: "NotoSansJP-Regular","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.footer_content {
	font-size: 12px;
	display: flex;
	display: -webkit-flex;
	align-self: stretch;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: stretch;/*縦位置*/
	-webkit-align-items: stretch;/*縦位置*/
	justify-content: flex-start;/*横位置*/
	-webkit-justify-content: flex-start;/*横位置*/
	align-content: flex-start;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.footer_content li {
	width: calc(100% * 1/4);
	width: -webkit-calc(100% * 1/4);
	max-width: 22.5%;/*1カラム改行されてしまうのを解消*/
	margin-right: 3.3%;
	margin-bottom: 3vw;
}
.footer_content li:nth-of-type(4n) {
	margin-right: 0%;
}
 @media print, screen and (max-width: 1024px) {
.footer_content {
	padding-right: 20px;
	padding-left: 20px;
}
}

/*フッター（SNS）*/
.footer_sns_area {
	position: relative;
	background-color: #FFF;
	border-top: 1px solid #D9D9D9;
}
.footer_sns,.footer_news_area {
	max-width: 1240px;
	margin: 0 auto;
	padding: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.footer_news_area {
	padding-top: 80px;
	position: relative;
}
 @media print, screen and (max-width: 1024px) {
.footer_sns,.footer_news_area {
	padding: 0 20px 0 20px;
}
}
 @media screen and (max-width: 767px) {
.footer_sns,.footer_news_area {
	margin: 20px 0;
	padding: 15px 15px 56px 15px;
	flex-direction: column;
}
.footer_news_area {
	padding-top: 56px;
}
}
 @media print, screen and (min-width: 768px) {
.footer_sns p {
	margin-right: 1em;
	font-size: 18px;
	display: block;
}
}
 @media screen and (max-width: 767px) {
.footer_sns p {
	font-size: 12px;
	margin-bottom: .5em;
}
}
.footer_sns > *:not(:last-child) {
	margin-right: 10px;
}
.footer_sns img {
	width: 60px;
}
 @media print, screen and (max-width: 1024px) {
.footer_sns img {
	width: 40px;
}
}
.footer_news_area::before {
	position: absolute;
	content: "";
	margin: auto;
	box-sizing: border-box;
	vertical-align: middle;
	top: 0;
	right: 0;
	left: 0;
	border-top: 1px solid #C1C1C1;
	margin-left: 30px;
	margin-right: 30px;
}
 @media print, screen and (max-width: 1024px) {
.footer_news_area::before {
	margin-left: 20px;
	margin-right: 20px;
}
}
 @media screen and (max-width: 767px) {
.footer_news_area::before {
	margin-left: 15px;
	margin-right: 15px;
}
}
.footer_news_title {
	position: relative;
	font-weight: 400;
	line-height: 1.3;
	padding: 0 0 0 0.5em;
	font-size: 48px;
	margin: 0 0 56px 0 !important;
}
.footer_news_title:not(:first-child) {
	margin: 56px 0 56px 0 !important;
}
 @media screen and (max-width: 767px) {
.footer_news_title {
	font-size: 28px;
	margin: 0 0 44px 0 !important;
}
.footer_news_title:not(:first-child) {
	margin: 44px 0 44px 0 !important;
}
}
.footer_news_title::before {
	position: absolute;
	content: "";
	margin: auto;
	box-sizing: border-box;
	vertical-align: middle;
	top: 0;
	bottom: 0;
	left: 0;
	width: 5px;
	height: 90%;
	background: #CB0112;
	border-radius: 5px;
	border-top: 16px solid #757575;
}
 @media screen and (max-width: 767px) {
.footer_news_title::before {
	border-top: 12px solid #757575;
}
}

.footer_news {
	display: flex;
	flex-wrap: wrap;
	margin: -24p -24px 0 0;
}
.footer_news > .footer_news li {
	width: calc( 33.33333% - 16px);
}
 @media screen and (max-width: 767px) {
.footer_news {
	margin: -14px  -14px 0 0;
}
.footer_news > .footer_news li {
	width: calc( 100% - 14px);
}
}

/*料金表*/
.table_wrap {
	overflow-x: scroll;
	margin: 0.5em 0;
}
.table_wrap table {
	width: 100%;
	table-layout: fixed;/* 各セルの列幅を均等にする */
	border-collapse: collapse;
	-webkit-overflow-scrolling: touch;/* スマホで滑らかにスクロールする */
	border-top: 1px solid #000000;
}
.table_wrap table td {
	vertical-align: middle;
	padding: 0.8em 0.3em 0.8em 0.3em;
	border-bottom: 1px solid #000000;
	border-right: 1px solid #000000;
	text-align: center;
}
.table_wrap table td:nth-last-of-type(1) {
	border-right: 0px solid #000000;
	text-align: center;
}

/*入力フォーム*/
form {
	width: 100%;
	margin-top: 80px;
	font-family: "NotoSerifJP-SemiBold";
	color: var(--color-black);
	line-height: 2em;
	letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
form {
    margin-top: 40px;
  }
}
.form_list {
  width: 100%;
  padding: 0 0 24px 0;
  margin-bottom: 24px;
  border-bottom: 1px solid #ddd;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .form_list {
    flex-wrap: wrap;
  }
}
.form_list:last-child {
  border-bottom: 1px solid #ddd;
}
.form_label {
  width: 30%;
}
@media screen and (max-width: 914px) {
  .form_label {
  width: 100%;
  }
}
.form_Input {
	width: 70%;
	background-color: #EEEEEE;
	border: 1px solid #ddd;
	border-radius: 2px;
	margin-left: 40px;
	padding: 0.5em;
}
@media screen and (max-width: 914px) {
.form_Input {
	width: 100%;
    margin-left: 0;
    margin-top: 18px;
}
}
textarea {
	width: 100%;
	min-height: 216px;
	background-color: transparent;
	border: none;
}
@media screen and (max-width: 914px) {
textarea {
}
}
input {
	background-color: transparent;
	border: none;
}
.input_text {
	width: 100%;
}
.form_required {
	text-align: center;
	color: #990000;
	margin-right: 1em;
	padding: 0.2em 0.8em 0.2em 0.8em;
	border: 1px solid #990000;
	border-radius: 5px;
	display: inline-block;
}
.text_indent_0_5em {
	text-indent: -0.5em;
}
.text_indent_1em {
	margin-left: 1em;
	text-indent: -1em;
}
.text_red {
	color: #990000;
	margin-left: 5em;
}
.text_color_red {
	color: #EE0000 !important;
}

/*入力フォーム確認画面 */
p.btn input {
	width: 110px;
	height: 32px;
}

/* for message */
p.msg {
	color: #dd0000;
	margin: 2em;
}
span.msg {
	color: #dd0000;
}

/* for back-button */
form.back {
	margin-top: 2em;
}

/* スマホ用 */
@media only screen and (max-width: 480px) {
	/* 投稿フォーム */
    p.btn input { width: 10em; }
    
	/* サンクス */
	p.msg { margin: 1em auto; }
}

	/* 要確認・訂正指示 */
.caution {
	position: absolute;
	height: 50px;
	width: 100px;
	top: 20%;
	left: calc(50% - 50px);
	left: -webkit-calc(50% - 50px);
	font-size: 18px;
	color: #ffffff;
	text-align: center;
	vertical-align: middle;
	margin-bottom: 20px;
	background-color: #FF0000;
	display: table-cell;
}


/* 画面にフワーとフェードイン */
@media (print), (prefers-reduced-motion: reduce) {
  .add_fade_in {
    -webkit-animation-duration: 1ms ;
    animation-duration: 1ms ;
    -webkit-transition-duration: 1ms ;
    transition-duration: 1ms ;
    -webkit-animation-iteration-count: 1 ;/*アニメーションの実行回数*/
    animation-iteration-count: 1 ;
  }
}
.add_fade_in {
	-webkit-animation: 2s var(--easing) both;
	animation: 2s var(--easing) both;
	-webkit-animation-name: fadeIn_anime;
	animation-name: fadeIn_anime;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeIn_anime {
  0% {
    -webkit-transform: translateY(6rem);
            transform: translateY(6rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fadeIn_anime {
  0% {
    -webkit-transform: translateY(6rem);
            transform: translateY(6rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

/* 未使用 */
@-webkit-keyframes fadeOut_anime {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-6rem);
            transform: translateY(-6rem);
    opacity: 0;
  }
}
@keyframes fadeOut_anime {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-6rem);
            transform: translateY(-6rem);
    opacity: 0;
  }
}

/*トップへボタン*/
#page_top {
  position: fixed;
  right: 10px;
  bottom:120px;
  z-index: 2;
    /*はじめは非表示*/
  opacity: 0;
  transform: translateY(100px);
}
#page_top a{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	border: solid 2px #000;
	border-radius: 50%;
	width: 60px;
	height: 60px;
	transition: all 0.3s;
	background-color: rgba(250,245,255,0.7);
}
#page_top a::after {
	position: absolute;
   content: '';
   top: calc(50% - 8px);
   left: calc(50% - 8px);
   height: 16px;
   width: 16px;
   border-top: 3px solid #000;
   border-right: 3px solid #000;
   transform: translateY(20%) rotate(-45deg);
}
@media screen and (min-width: 1024px) {
#page_top a:hover{
  background: #777;
}
}
/*　上に上がる動き　*/
#page_top.page_top_up{
  animation: page_top_up_anime 0.7s forwards;
}
@keyframes page_top_up_anime{
  from {
    opacity: 0;
  transform: translateY(180px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}
/*　下に下がる動き　*/
#page_top.page_top_down{
  animation: page_top_down_anime 0.7s forwards;
}
@keyframes page_top_down_anime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 1;
  transform: translateY(180px);
  }
}