﻿@charset "utf-8";
/* -- -- --
 * ROOM8 Template V3.7
 * Last Up Date: 2023.1
 * Author: mick
-- -- -- -- -- -- -- -- */
*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	background-repeat: no-repeat;
}

html {
	opacity: 0;
	font-size: 10px;
	>font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
}

html.wf-active, html.loading-delay {
	opacity: 1;
	-webkit-transition: .2s;
	transition: .2s;
}

body {
	color: #2d2422;
	-webkit-font-smoothing: antialiased;
	font-weight: 400;
	font-family: "Zen Kaku Gothic New", serif;
	/* font-feature-settings : 'palt'; */
}

/*

// <uniquifier>: Use a unique and descriptive class name
// <weight>: Use a value from 200 to 800

.bricolage-grotesque-<uniquifier> {
  font-family: "Bricolage Grotesque", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", serif;
  font-weight: 400;
  font-style: normal;
}

.zen-kaku-gothic-new-medium {
  font-family: "Zen Kaku Gothic New", serif;
  font-weight: 500;
  font-style: normal;
}

 */

html, body {
	height:100%;
}

body.lock {
	position: fixed;
	top:0;
	left:0;
	width: 100%;
}

header,
article,
nav,
main,
section,
footer {
	display: block;
}

p, h1, h2, h3, h4, h5, h6 {
	overflow-wrap: break-word;
}

p {
	line-height: 1.8;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.6;
	font-size: inherit;
	font-weight: inherit;
	font-weight: 500;
}

a {
	color: #333;
	border: none;
	outline: 0;
	background-color: transparent;
	text-decoration: none;
	text-underline-offset: 0.6ex;
}

a:active,
a:hover {
	outline: 0;
}

b,
strong {
	font-weight: 500;
}

small {
	font-size: 0.8rem;
}

sub,
sup {
	font-size: 0.75rem;
	line-height: 1.0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

hr {
	border: none;
	border-block-start: 1px solid;
	color: inherit;
	block-size: 0;
	overflow: visible;
}

i {
	font-style: italic;
}

del {
	text-decoration: line-through;
}

img, picture, video, canvas, svg {
	display: block;
	max-width: 100%;
	vertical-align: bottom;
}

.mimg img {
	width:100%;
	height:auto;
}

code,
pre {
	font-family: monospace, monospace;
	overflow: auto;
}

table {
	border-collapse: collapse;
	border-style: none;
	border-spacing: 0;
}

dt,
dd,
td,
th {
	line-height: 1.8;
}

td {
	word-break: break-all;
}

ul,
ol {
	list-style: none;
}

li {
	line-height: 1.8;
}

.tbpc {
	display: none;
}

.pc {
	display: none;
}

/* entry_body
========================================================================== */
.entry_body .aligncenter {
	display: block;
	margin: 0 auto;
}

.entry_body .alignright {
	margin:0 0 0 10px;
	float: right;
}

.entry_body .alignleft {
	margin:0 10px 0 0;
	float: left;
}

.entry_body ol {
	margin:0 0 0 20px;
	list-style-position: outside;
	list-style-type: decimal;
}

.entry_body ul {
	margin:0 0 0 20px;
	list-style-position: outside;
	list-style-type: disc;
}

.entry_body table {
	max-width:100%!important;
	border:1px solid #CCC;
}

.entry_body img {
	max-width:100%;
	height:auto;
}

.entry_body hr {
	height: 0;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

.entry_body table th,
.entry_body table td {
	padding:5px;
}

.entry_body blockquote {
	margin:0 0 15px;
	padding: 25px 15px 15px 50px;
	min-height:80px;
	box-sizing: border-box;
	font-style: italic;
	background: #efefef;
	color: #555;
	position: relative;
}

.entry_body blockquote:before {
	display: inline-block;
	position: absolute;
	top: 10px;
	left: -3px;
	vertical-align: middle;
	content: "“";
	font-family: sans-serif;
	color: #cfcfcf;
	font-size: 90px;
	line-height: 1;
}

.entry_body blockquote p {
	 padding: 10px 0;
	padding: 0;
	line-height: 1.7;
}

.entry_body blockquote cite {
	display: block;
	text-align: right;
	color: #888888;
	font-size: 0.9em;
}

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

	.entry_body table th,
	.entry_body table td {
		padding:10px;
	}

	.entry_body blockquote {
		margin:0 0 40px;
	}
}

/* Forms
========================================================================== */
input {
	border-radius: 0;
}

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
	height: auto;
}

[type='search'] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type='search']::-webkit-search-decoration {
	-webkit-appearance: none;
}

textarea {
	overflow: auto;
	resize: vertical;
}

button,
input,
optgroup,
select,
textarea {
	font: inherit;
}

optgroup {
	font-weight: 500;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}
button,
[type='button'],
[type='reset'],
[type='submit'],
[role='button'] {
	cursor: pointer;
}

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
	outline: 1px dotted ButtonText;
}

button,
html [type='button'],
[type='reset'],
[type='submit'] {
	-webkit-appearance: button;
}

button,
input,
select,
textarea {
	background-color: transparent;
	border-style: none;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
	outline-width: 0;
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
}

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

select::-ms-value {
	color: currentColor;
}

legend {
	border: 0;
	color: inherit;
	display: table;
	max-width: 100%;
	white-space: normal;
	max-width: 100%;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	color: inherit;
	font: inherit;
}

[disabled] {
	cursor: default;
}

::-webkit-input-placeholder {
	color: #AAA;
}

::-placeholder {
	color: #AAA;
}

/* Extras
========================================================================== */
.clear:after {
	content: "";
	clear: both;
	display: block;
	visibility: hidden;
	overflow: hidden;
}

.moviebox {
	position: relative;
	padding-top: 56.25%;
}

.moviebox iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.paging_block {
	text-align: center;
}

.paging_block .paging {
	padding:0 34px;
	position: relative;
}

.paging_block .prev,
.paging_block .next {
	position: absolute;
	top:0;
	left:0;
	width:30px;
}

.paging_block .next {
	left:auto;
	right:0;
}

.paging_block .prev a,
.paging_block .next a {
	display: block;
	line-height:28px;
	color:#4c9a98;
	text-align: center;
	font-size:1.2rem;
	font-weight: 500;
	border:1px solid #4c9a98;
	background-color: #FFF;
}

.paging_block .index a {
	display: inline-block;
	padding:0 20px;
	line-height:28px;
	color:#777;
	text-align: center;
	font-size:1.6rem;
	border:1px solid #4c9a98;
	background-color: #FFF;
}

.paging_block ul {
	display: flex;
	justify-content: center;
	align-items: center;
}

.paging_block li {
	margin:0 2px;
}

.paging_block li a,
.paging_block li b {
	display: block;
	width:30px;
	line-height:28px;
	color:#777;
	text-align: center;
	font-size:1.6rem;
	border:1px solid #4c9a98;
	background-color: #FFF;
}

.paging_block li span {
	display: block;
	line-height:28px;
	color:#777;
	text-align: center;
	font-size:1.6rem;
}

.paging_block li b {
	color:#FFF;
	background-color: #4c9a98;
}

.screen {
	display: none;
	opacity: 0;
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:130%;
	background-color: #000;
	z-index: 80;
}

.screen_active .screen {
	animation-delay:0.2s;
	-webkit-animation-delay:0.2s;
	animation-name: screen_active;
	-webkit-animation-name: screen_active;
	animation-duration: 0.3s;
	-webkit-animation-duration: 0.3s;
	animation-iteration-count:1;
	-webkit-animation-iteration-count:1;
	animation-fill-mode:both;
	-webkit-animation-fill-mode:both;
}

@keyframes screen_active {
	0% {display: none; opacity: 0;}
	1% {display: block; opacity: 0;}
	100% {display: block; opacity: 0.8;}
}

@-webkit-keyframes screen_active {
	0% {display: none; opacity: 0;}
	1% {display: block; opacity: 0;}
	100% {display: block; opacity: 0.8;}
}

#dammy {
	display: block;
	overflow: hidden;
	background: url('../images/') no-repeat;
	padding: 40px 0 0;
	width: 216px;
	height: 0!important;
}

.fiu {
	opacity: 0;
	transform: translateY(30px);
	transition-duration: .6s;
}

.fiu.anim_action {
	opacity: 1;
	transform: translateY(0);
}

/*
========================================================================== */
#wrapper {
	overflow: hidden;
	font-size:1.4rem;
}

.block1 {
	padding:30px 15px;
}

header {
	position: fixed;
	top:0;
	left:0;
	width:100%;
	z-index:100;
}

header .block1 {
	padding:20px 15px 0;
	height:90px;
	transition-duration: .6s;
	position: relative;
}

header.set .block1 {
	padding-top:0;
	height:50px;
}

header .logo_block h1 {
	margin:0 0 15px;
	line-height:1.4;
	color:#FFF;
	font-size:1.1rem;
	transition-duration: .4s;
}

header.set .logo_block h1 {
	margin:0;
	opacity: 0;
}

header .logo_block h1 b {
	margin:0 3px 0 0;
	line-height:1.3;
	font-size:1.2rem;
	font-weight: 400;
	font-family: "Bricolage Grotesque", serif;
}

header .logo_block .logo {
	width: 135px;
}

header .logo_block .logo a {
	display: block;
}

header .book {
	position: absolute;
	top:50px;
	right:55px;
	width: 120px;
	color:#FFF;
}

header .book a,
header .book b {
	display: block;
	line-height:28px;
	text-align: center;
	color:#FFF;
	font-size:1.3rem;
	font-weight: 400;
	border:1px solid #FFF;
}

header .book b {
	opacity: .5;
}

header .book a i,
header .book b i {
	margin:0 3px 0 0;
	font-size:1.5rem;
	font-style: normal;
	font-weight: 700;
	font-family: "Bricolage Grotesque", serif;
}

header .menu {
	position: absolute;
	top:50px;
	right:15px;
	width:30px;
	z-index:100;
	transition-duration: .6s;
}

header.set .menu {
	top:15px;
}

header .menu a {
	display: block;
	height: 30px;
	overflow: hidden;
	position: relative;
}

header .menu a::before,
header .menu a::after {
	position: absolute;
	content: '';
	left: 0;
	width: 30px;
	height: 1px;
	background-color: #FFF;
	transition: .3s;
}

header .menu a::before {
	top: 11px;
}

header .menu a::after {
	bottom: 11px;
	height: 2px;
}

header.active .menu a::before {
	top: 7px;
	left: 7px;
	width: 23px;
	-webkit-transform-origin:left top 0;
	transform-origin:left top 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

header.active .menu a::after {
	bottom: 6px;
	left: 6px;
	width: 22px;
	-webkit-transform-origin:left top 0;
	transform-origin:left top 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

header .pop_block {
	display: none;
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100dvh;
	background-color: rgba(30, 80, 95, 0.97);
	z-index:80;
}

header.active .pop_block {
	display: block;
}

.pop_block .pophead {
	background: url('../images/common/logo.webp') no-repeat left 15px bottom;
	background-size: 135px auto;
	padding:20px 15px 0;
	height:77px;
}

.pop_block .pophead .mlead {
	margin:0 0 15px;
	line-height:1.4;
	color:#FFF;
	font-size:1.1rem;
}

.pop_block .pophead .mlead b {
	margin:0 3px 0 0;
	line-height:1.3;
	font-size:1.2rem;
	font-weight: 400;
	font-family: "Bricolage Grotesque", serif;
}

.pop_block .popbody {
	padding:30px 15px 0;
}

.pop_block .popbody .popmenu {
	margin:0 0 30px;
	padding:0 0 30px;
	border-bottom:1px solid #FFF;
}

.pop_block .popbody .popmenu li {
	margin:0 0 15px;
	line-height:1.6;
	text-align: center;
	font-size:1.6rem;
	letter-spacing: 0.08em;
}

.pop_block .popbody .popmenu li:last-child {
	margin-bottom:0;
}

.pop_block .popbody .popmenu li a,
.pop_block .popbody .popmenu li b {
	display: block;
	color:#FFF;
}

.pop_block .popbody .popmenu li b {
	color:rgba(255, 255, 255, 0.2);
	font-weight: 400;
}

.pop_block .sns_block ul {
	display: flex;
	justify-content: center;
	align-items: center;
}

.pop_block .sns_block li {
	margin:0 30px 0 0;
	width:31px;
}

.pop_block .sns_block .fb {
	width:28px;
}

.pop_block .sns_block .insta {
	margin-right:0;
	width:27px;
}

.pop_block .sns_block .x {
	margin-right:0;
	width:23px;
}

.pop_block .sns_block li a {
	display: block;
	overflow: hidden;
	background-repeat: no-repeat;
	background-position: center center;
	height: 0!important;
}

.pop_block .sns_block .note a {
	background-image: url('../images/common/sns_note.webp');
	background-size: 31px 31px;
	padding: 31px 0 0;
}

.pop_block .sns_block .fb a {
	background-image: url('../images/common/sns_fb2.webp');
	background-size: 28px 28px;
	padding: 28px 0 0;
}

.pop_block .sns_block .insta a {
	background-image: url('../images/common/sns_insta2.webp');
	background-size: 27px 27px;
	padding: 27px 0 0;
}

.pop_block .sns_block .x a {
	background-image: url('../images/common/sns_x2.webp');
	background-size: 23px 24px;
	padding: 24px 0 0;
}



.mtitle_block {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.mtitle_block .block1 {
	padding-top:250px;
	padding-bottom:0;
	height:330px;
}

.mtitle_block h2 {
	line-height:1.2;
	color:#FFF;
	font-size:2.2rem;
	letter-spacing: 0.08em;
}









.binfo_block {
	background: url('../images/common/sp_binfo_bgimage.webp') no-repeat center top;
	background-size: cover;
}

.binfo_block .block1 {
	padding-top:50px;
	padding-bottom:40px;
	color:#FFF;
}

.binfo_block h2 {
	margin:0 0 20px;
	display: flex;
	justify-content: center;
	align-items: baseline;
	line-height:1.0;
	text-align: center;
	color:#FFF;
	font-size:2.2rem;
	font-weight: 300;
	letter-spacing: 0.08em;
	font-family: "Bricolage Grotesque", serif;
}

.binfo_block h2 b {
	margin:0 0 0 3px;
	line-height:1.0;
	font-size:2.2rem;
	font-weight: 800;
	letter-spacing: 0.02em;
}

.binfo_block .exline {
	margin:0 0 15px;
	line-height:1.6;
	text-align: center;
	letter-spacing: 0.04em;
}

.magform_block .magform {
	display: flex;
	justify-content: center;
	align-items: center;
	margin:0 0 15px;
}

.magform_block .magform:last-child {
	margin-bottom:0;
}

.magform_block .magform .inputline {
	margin:0 10px 0 0;
	width:calc(100% - 80px);
}

.magform_block .magform .inputline input {
	background: url('../images/common/icon_mail.webp') no-repeat left 15px top 12px;
	background-size: auto 14px;
	padding:0 15px 0 45px;
	width:100%;
	height:38px;
	line-height:36px;
	font-size:1.6rem;
	font-weight: 300;
	font-family: "Bricolage Grotesque", serif;
	letter-spacing: 0.08em;
	background-color: #FFF;
	border:1px solid #cadc45;
}

.magform_block .magform .sbtn {
	width:70px;
}

.magform_block .magform .sbtn a {
	display: flex;
	justify-content: center;
	align-items: center;
	line-height:38px;
	font-size:1.4rem;
	color:#1e1e1e;
	font-weight: 300;
	font-family: "Bricolage Grotesque", serif;
	background-color: #cadc45;
	letter-spacing: 0.02em;
}

.magform_block .error,
.magform_block .success {
	line-height:1.4;
	text-align: center;
	color:#c22;
	font-size:1.6rem;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.magform_block .success {
	color: #cadc45;
}

footer {
	background-color: #f1e4c6;
	border-bottom:5px solid #e43c51;
}

.pagetop {
	display: none;
	position: fixed;
	right:15px;
	bottom:15px;
	width: 35px;
	overflow: hidden;
	border-radius: 35px;
}

.pagetop a {
	display: block;
	overflow: hidden;
	background: url('../images/common/pagetop.svg') no-repeat center center;
	background-size: 16px 8px;
	background-color:rgba(0, 0, 0, 0.2);
	padding: 35px 0 0;
	height: 0!important;
}

footer .block1 {
	padding-top:30px;
	padding-bottom:25px;
}

.footer_block1 {
	margin:0 0 30px 10px;
}

.footer_block1 h2 {
	width: 182px;
}

.footer_block1 h2 a {
	display: block;
	overflow: hidden;
	background: url('../images/common/flogo.webp') no-repeat left top;
	background-size: 182px auto;
	padding: 48px 0 0;
	height: 0!important;
}

.footer_block1 .sns_block {
	display: none;
}

.footer_block2 .cinfo_block {
	margin:0 0 25px;
	padding:0 0 25px 10px;
	background: url('../images/common/dline1.webp') repeat-x right bottom;
	background-size: 10px 1px;
	position: relative;
}

.footer_block2 .cinfo_block .cname_block {
	margin:0 0 10px;
}

.footer_block2 .cinfo_block .cname_block .cname1 {
	line-height:1.4;
	font-size:1.3rem;
}

.footer_block2 .cinfo_block .cname_block .cname2 {
	line-height:1.4;
	font-size:2.0rem;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.footer_block2 .cinfo_block .address {
	margin:0 0 10px;
	line-height:1.4;
	letter-spacing: 0.02em;
}

.footer_block2 .cinfo_block .linkline {
	line-height:1.5;
	font-size:1.5rem;
}

.footer_block2 .cinfo_block .linkline a {
	display: block;
}

.footer_block2 .sns_block {
	position: absolute;
	right:20px;
	bottom:25px;
	width:106px;
}

.footer_block2 .sns_block ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
}

.footer_block2 .sns_block li {
	margin:0 25px 20px 0;
	width:38px;
}

.footer_block2 .sns_block .fb {
	margin-right:0;
}

.footer_block2 .sns_block .insta {
	margin-bottom:0;
}

.footer_block2 .sns_block .x {
	margin-right:0;
	margin-bottom:0;
}

.footer_block2 .sns_block li a {
	display: block;
	overflow: hidden;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 38px 0 0;
	height: 0!important;
}

.footer_block2 .sns_block .note a {
	background-image: url('../images/common/sns_note.webp');
	background-size: 31px 31px;
}

.footer_block2 .sns_block .fb a {
	background-image: url('../images/common/sns_fb.webp');
	background-size: 28px 28px;
}

.footer_block2 .sns_block .insta a {
	background-image: url('../images/common/sns_insta.webp');
	background-size: 27px 27px;
}

.footer_block2 .sns_block .x a {
	background-image: url('../images/common/sns_x.webp');
	background-size: 23px 24px;
}

.footer_block2 .flink_block {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.flinkinbox {
	padding:0 0 0 15px;
	width:50%;
}

.footer_block2 .flink_block .flinkbox {
	margin:0 0 15px;
}

.footer_block2 .flink_block .flinkbox.flink4 {
	margin-bottom:0;
}

.footer_block2 .flink_block .flinkbox li {
	margin:0 0 15px;
	line-height:1.4;
	font-size:1.3rem;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.footer_block2 .flink_block .flinkbox li:last-child {
	margin-bottom:0;
}

.footer_block2 .flink_block .flinkbox li a,
.footer_block2 .flink_block .flinkbox li b {
	display: block;
}

.footer_block2 .flink_block .flinkbox li b {
	opacity: .4;
}


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

	/*
	=================================== */
	.sp {
		display: none;
	}

	.tbpc {
		display: initial;
	}

	.pc {
		display: initial;
	}

	.wrap_block {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}

	.paging_block .paging {
		display: inline-block;
		padding:0 60px;
	}

	.paging_block .prev,
	.paging_block .next {
		width:40px;
	}

	.paging_block .prev a,
	.paging_block .next a {
		line-height:38px;
	}

	.paging_block .prev a:hover,
	.paging_block .next a:hover {
		color:#FFF;
		background-color: #4c9a98;
	}

	.paging_block .index a {
		padding:0 25px;
		line-height:38px;
		transition-duration: 0.6s;
	}

	.paging_block li {
		margin:0 5px;
	}

	.paging_block li a,
	.paging_block li b {
		width:40px;
		line-height:38px;
		transition-duration: 0.6s;
	}

	.paging_block li span {
		line-height:38px;
	}

	.paging_block li a:hover {
		color:#FFF;
		background-color: #4c9a98;
	}

	/*
	=================================== */
	#wrapper {
		min-width:1100px;
		font-size:1.6rem;
	}

	.block1 {
		margin:0 auto;
		padding:70px 50px;
		width:1100px;
	}

	header .block1 {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding:0 105px 0 50px;
		height:100px;
	}

	header.set .block1 {
		height:60px;
	}

	header .logo_block {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		flex-direction: row-reverse;
		width:650px;
	}

	header .logo_block h1 {
		margin:0;
		line-height:1.3;
		font-size:1.4rem;
	}

	header .logo_block h1 b {
		display: block;
		font-size:2.0rem;
	}

	header .logo_block .logo {
		margin:0 15px 0 0;
		width: 190px;
		transition-duration: .6s;
	}

	header.set .logo_block .logo {
		width: 160px;
	}

	header .book {
		position: static;
		width: 170px;
	}

	header .book a,
	header .book b {
		line-height:35px;
		font-size:1.4rem;
	}

	header .book a i,
	header .book b i {
		margin:0 5px 0 0;
		font-size:1.7rem;
	}

	header .menu {
		top:30px;
		right:50px;
		width:40px;
	}

	header.set .menu {
		top:10px;
	}

	header .menu a {
		height: 40px;
	}

	header .menu a::before,
	header .menu a::after {
		left: 1px;
		width: 38px;
	}

	header .menu a::before {
		top: 14px;
	}

	header .menu a::after {
		bottom: 14px;
	}

	header.active .menu a::before {
		top: 10px;
		left: 10px;
		width: 28px;
	}

	header.active .menu a::after {
		bottom: 9px;
		left: 10px;
		width: 27px;
	}

	.popinblock {
		padding:0 50px;
		height:100%;
		position: relative;
	}

	.popinblock::before,
	.popinblock::after {
		position: absolute;
		top:0;
		content: '';
		background-color: rgba(30, 80, 95, 0.97);
		width:1500px;
		height:100%;
	}

	.popinblock::before {
		right:100%;
	}

	.popinblock::after {
		left:100%;
	}

	.pop_block .pophead {
		display: flex;
		justify-content: space-between;
		align-items: center;
		background: none;
		padding:0;
		height:100px;
	}

	.pop_block .pophead .mlead {
		background: url('../images/common/logo.webp') no-repeat left center;
		background-size: 190px 35px;
		margin:0;
		padding:0 0 0 200px;
		min-height:35px;
		line-height:1.3;
		font-size:1.4rem;
	}

	.pop_block .pophead .mlead b {
		display: block;
		font-size:2.0rem;
	}

	.pop_block .popbody {
		padding:100px 0 0;
	}

	.pop_block .popbody .popmenu {
		margin:0 0 50px;
		padding:0 0 50px;
	}

	.pop_block .popbody .popmenu li {
		margin:0 0 30px;
		line-height:1.6;
		text-align: center;
		font-size:2.0rem;
		letter-spacing: 0.08em;
	}

	.pop_block .popbody .popmenu li:last-child {
		margin-bottom:0;
	}

	.pop_block .popbody .popmenu li a {
		color:#FFF;
	}



	.mtitle_block .block1 {
		padding:195px 150px 0;
		height:360px;
	}

	.mtitle_block h2 {
		line-height:1.2;
		color:#FFF;
		font-size:3.2rem;
		letter-spacing: 0.08em;
	}




	.binfo_block {
		background-image: url('../images/common/binfo_bgimage.webp');
	}

	.binfo_block .block1 {
		display: flex;
		justify-content: center;
		align-items: center;
		padding-top:0;
		padding-bottom:0;
		height:380px;
	}

	.binfo_block h2 {
		margin:0 0 40px;
		font-size:4.0rem;
	}

	.binfo_block h2 b {
		margin:0 0 0 8px;
		font-size:4.0rem;
	}

	.binfo_block .exline {
		line-height:1.4;
		font-size:2.0rem;
	}

	.magform_block .magform {
		margin:0 0 20px;
	}

	.magform_block .magform .inputline {
		width:500px;
	}

	.magform_block .magform .inputline input {
		background-position: left 20px top 15px;
		background-size: 23px 19px;
		padding:0 20px 0 55px;
		height:48px;
		line-height:46px;
		font-size:2.2rem;
		border:2px solid #cadc45;
	}

	.magform_block .magform .sbtn {
		width:100px;
	}

	.magform_block .magform .sbtn a {
		line-height:46px;
		font-size:2.2rem;
	}

	.magform_block .error,
	.magform_block .success {
		font-size:2.0rem;
	}

	footer {
		border-bottom:10px solid #e43c51;
	}

	.pagetop {
		right:50px;
		bottom:50px;
		width:50px;
	}

	.pagetop a {
		padding: 50px 0 0;
		background-size: 22px 11px;
	}

	footer .block1 {
		padding-top:70px;
		padding-bottom:40px;
	}

	.footer_block1 {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin:0 0 50px;
	}

	.footer_block1 h2 {
		width: 236px;
	}

	.footer_block1 h2 a {
		background-size: 236px 62px;
		padding: 62px 0 0;
	}

	.footer_block1 .sns_block {
		display: block;
		width: 200px;
	}

	.footer_block1 .sns_block ul {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		padding:20px 0 0;
	}

	.footer_block1 .sns_block li {
		margin:0 30px 0 0;
		width:31px;
	}

	.footer_block1 .sns_block .fb {
		width:28px;
	}

	.footer_block1 .sns_block .insta {
		width:27px;
	}

	.footer_block1 .sns_block .x {
		margin-right:0;
		width:23px;
	}

	.footer_block1 .sns_block li a {
		display: block;
		overflow: hidden;
		background-repeat: no-repeat;
		background-position: center center;
		height: 0!important;
	}

	.footer_block1 .sns_block .note a {
		background-image: url('../images/common/sns_note.webp');
		background-size: 31px 31px;
		padding: 31px 0 0;
	}

	.footer_block1 .sns_block .fb a {
		background-image: url('../images/common/sns_fb.webp');
		background-size: 28px 28px;
		padding: 28px 0 0;
	}

	.footer_block1 .sns_block .insta a {
		background-image: url('../images/common/sns_insta.webp');
		background-size: 27px 27px;
		padding: 27px 0 0;
	}

	.footer_block1 .sns_block .x a {
		background-image: url('../images/common/sns_x.webp');
		background-size: 23px 24px;
		padding: 24px 0 0;
	}

	.footer_block2 {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}

	.footer_block2 .cinfo_block {
		margin:0;
		padding:0;
		background:none;
		width:300px;
		position: static;
	}

	.footer_block2 .cinfo_block .cname_block {
		margin:0 0 15px;
	}

	.footer_block2 .cinfo_block .cname_block .cname1 {
		font-size:1.4rem;
	}

	.footer_block2 .cinfo_block .address {
		margin:0 0 5px;
		line-height:1.5;
	}

	.footer_block2 .cinfo_block .linkline {
		font-size:1.7rem;
	}

	.footer_block2 .cinfo_block .linkline a {
		display: inline-block;
	}

	.footer_block2 .sns_block {
		display: none;
	}

	.footer_block2 .flink_block {
		justify-content: flex-end;
		align-items: stretch;
		width:600px;
	}

	.flinkinbox {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		padding:0;
		width:auto;
	}

	.footer_block2 .flink_block .flinkbox {
		background: url('../images/common/dline2.webp') repeat-y right top;
		background-size: 1px 10px;
		margin:0;
		padding:0 0 0 15px;
		width:80px;
	}

	.footer_block2 .flink_block .flinkbox.flink2 {
		width:190px;
	}

	.footer_block2 .flink_block .flinkbox.flink3 {
		width:155px;
	}

	.footer_block2 .flink_block .flinkbox.flink4 {
		background: none;
		width:175px;
	}

	.footer_block2 .flink_block .flinkbox li {
		margin:0 0 10px;
		line-height:1.5;
		font-size:1.5rem;
	}

	.footer_block2 .flink_block .flinkbox.flink1 li,
	.footer_block2 .flink_block .flinkbox.flink2 li {
		font-size:1.7rem;
	}

	.footer_block2 .flink_block .flinkbox li a {
		display: inline-block;
	}

	/*
	=================================== */

	/*
	=================================== */

	/*
	=================================== */




}

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

	/*
	=================================== */
	.op a:hover {
		opacity: 0.7;
		filter: alpha(opacity=70);
		zoom: 1;
	}

	.fade a {
		-webkit-transition: opacity 0.3s ease-in-out;
		transition: opacity 0.3s ease-in-out;
	}

	.fade2 a {
		-webkit-transition: 0.3s;
		transition: 0.3s;
	}
}
