/* Global Styles */
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');

html,body {
  scroll-behavior: smooth;
  min-height: 2000px;
color:#565656;
font-family: 'Sawarabi Mincho', serif;
font-size:100%;
width:100%;
line-height:1.45;
background-color:rgba(0,0,0,.0);
margin: 0px;
overflow-x: hidden !important;
}
html{
  height: -webkit-fill-available;
}
body{
  min-height: 100vh;
  min-height: -webkit-fill-available;
}
.pc{ display: block;}
.pad{ display: none;}
.sp{ display: none;}
  @media only screen and (max-width: 800px){
.pc{ display: none;}
.pad{ display: block;}
.sp{ display: none;}
}
  @media only screen and (max-width: 500px){
.pc{ display: none;}
.pad{ display: none;}
.sp{ display: block;}
}

/* Content Styles */

#title {
top:220px;
backface-visibility:hidden;
text-align:center;
perspective:1565656;
position:fixed;
width:100%;
    z-index: 100; /* 前面に表示されるようにする */
}

@media (max-width: 500px) { 
#title {
top:240px;
}
}

#title h1 {
background-color:rgba(0,0,0,.0);
font-family: 'Sawarabi Mincho', serif;
font-size:2.5rem;
padding:1rem 1.75rem;
}
.hide{
	transform: translateY(-1000%); /* 上に消えるようにする */
}
@media (max-width: 500px) { 
.hide{
	transform: translateY(-1000%); /* 上に消えるようにする */
}
}
/* Visibility Helpers */

@media only screen and (min-width:769px) {
    .visible-mobile,.visible-tablet,.hidden-desktop { display:none !important; }
}

@media only screen and (min-width:480px) and (max-width:768px) {
    .visible-mobile,.hidden-tablet,.visible-desktop { display:none !important; }
}

@media only screen and (max-width:479px) {
    .hidden-mobile,.visible-tablet,.visible-desktop { display:none !important; }
}
#toggle {
    position: fixed;
    top: 25px;
    right: 25px;
}

#toggle-box {
    position: relative;
    width: 36px;
    height: 32px;
    cursor: pointer;
}

#toggle-box > span {
  width: 100%;
  height: 2px;
  left: 0;
  display: block;
  background: #FFF;
  position: absolute;
  transition: transform .6s ease-in-out, top .5s ease, bottom .5s ease;
}

#toggle-box > span:nth-child(1) {
    top: 0;
}

#toggle-box > span:nth-child(2) {
    top: 50%;
    transform: translatey(-50%);
}

#toggle-box > span:nth-child(3) {
  bottom: 0;
}
#toggle-box > span.invert {
  background: #000;
}

#toggle {
    z-index: 1565656;
}
#main {
    position: relative;  
    z-index: 990;
}

#nav-content {
    z-index: 900;
    overflow: auto;
    width: 33.3%;
    height: 100%;
    background: #bfdcd1;
    color: #565656;
    position: fixed;
    top: 0;
    right: 0;
    text-align: left;
    transform: translateX(100%);
    transition:  transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#nav-content ul {
  list-style: none;
}

#nav-content a {
letter-spacing:0.15em;
  display: block;
  color: #565656;
  text-decoration: none;
  padding: 1em 0;
  transition: opacity .6s ease;
vertical-align:middle;
}

#nav-content a:hover {
  opacity: 0.6;
}

@media (max-width: 500px) { 
#nav-content {
    width: 70%;
}
}

.is-open {
overflow: hidden;
}

.is-open #toggle-box > span {
    background: #565656;
}

.is-open #toggle-box > span:nth-child(1) {
  top: 50%;
  transform: rotate(45deg) translatey(-50%);
}

.is-open #toggle-box > span:nth-child(2) {
  width: 0;
}

.is-open #toggle-box > span:nth-child(3) {
  top: 50%;
  transform: rotate(-45deg) translatey(-50%);
}

.is-open #nav-content {
  z-index: 999;
  transform: translateX(0);
}
ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 6em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 40px;
}
h1 {
    display: block;
letter-spacing:0.15em;
    font-size: 1.5em;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
font-family: 'Sawarabi Mincho', serif;}

.header{height: 100px;}

.bg-video-wrap {
  position: relative;
  overflow: hidden;
  width: 100%;
  height:100vh ;
}
video {
  min-width: 100%;
  min-height: 100vh;
  z-index: 1;
}
.overlay {
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.mv-bg {
	-webkit-transform: translateX(-50%);
	left: 50%;
	max-height: initial;
	max-width: initial;
	min-height: 100vh;
	min-width: 100%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	z-index: -1;
}
main{ width:100%; margin:0 auto;display:block;}
.section_n{padding: 10px 0;max-width:1200px; width:100%; margin:0 auto;display:block;}
.section_nv{padding: 10em 0;max-width:1200px; width:100%; margin:0 auto;display:block;}
.section_i{padding-top: 3em; padding-bottom: 30px; max-width:1200px; width:100%; margin:0 auto;display:block;}
@media (max-width: 500px) { 
.mv-bg {
	-webkit-transform: translateX(-50%);
	left: 50%;
width:auto;
height:100%;
	max-height: initial;
	max-width: initial;
	min-height: 100vh;
	min-width: 100%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	z-index: -1;
}
.bg-video-wrap {
  position: relative;
  overflow: hidden;
  width: 100%;
  height:100vh ;
}
.section_n{padding: 10px 0 0 0;max-width:1200px; width:100%; margin:0 auto;display:block;}
.section_nv{padding: 6em 0 0 0;max-width:1200px; width:100%; margin:0 auto;display:block;}
.section_w{min-width:100%; max-width:100%; width:100%; margin:0 auto;display:block;}
.section_i{padding-top: 6em; padding-bottom: 0px; max-width:1200px; width:100%; margin:0 auto;display:block;}
}
.section_w{ margin-top: 5em; width:100%; margin:0 auto;display:block;}
.top_content{margin-top:0;}
hr.gray{border:0.5px solid #ccc;}
.sen{padding:0 30px;}
@media screen and (max-width: 1600px) {
.top_content{margin-top:0;}
}
@media screen and (max-width: 500px) {
.top_content{margin-top:0;}
}

.mv-content {
	-webkit-transform: translate(-50%, -50%);
	left: 50%;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	padding: 0 24px;
	z-index: 100;
}

.login_btn {
	color: #333;
	font-size: 42px;
	font-weight: 700;
}

.contnt_margin{margin:0; padding-bottom:3em;}
.contnt_margin_k{margin:0; padding-bottom:8em;}
.contnt_margin_top{margin:0; padding-top:10em;padding-bottom:3em;}
.contnt_margin_x{margin:0; padding-bottom:3em;}
.contnt_margin_last{padding-bottom:70px;}
.section_g{ width:100%; margin:0 auto;display:block; background-color:#bfdcd1; padding-top:10px;}
.section_u{ margin-top: 5em; width:100%; margin:0 auto;display:block; background:url(/images/bg2.png) repeat; background-size: 500px;}
.text_center{text-align:center; line-height:2em; font-size: 16px; letter-spacing: 0.15em; padding:0 2em;}
.text_center_sp{text-align:center; line-height:2em; font-size: 14px; letter-spacing: 0.15em; padding:0 1em;}
.text_center_e{text-align:center; line-height:2em; font-size: 15px; letter-spacing: 0.08em; padding:0 2em;}
.content_padding{ padding-top: 6em;}
.content_padding_b{ padding-bottom: 3em;}
.contnt_margin_b{padding-bottom: 6em;}
.contnt_margin_i {
    margin: 0;
    padding-bottom: 1.5em;
}
.modal_wrap{
  position: fixed;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 100;
  display: none;
}
.modal_inner{
  background:#cccccc;
  width: 800px;
  margin:0 auto;
  text-align: center;
  padding:20px;
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%);
  transform:translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
}

.close_icon{
  position: relative;
  cursor: pointer;
}

.close_icon i{
  position: absolute;
  right: 0;
 font-size:2em;
}
@media screen and (max-width: 500px) {
.text_center_e{text-align:center; line-height:2em; font-size: 13px; letter-spacing: 0.08em; padding:0 2em;}
.contnt_margin_k{margin:0; padding-bottom:3em;}
.contnt_margin_x{margin:0; padding-bottom:0;}
.modal_inner{
  background:#cccccc;
  width: 100%;
  margin:0 auto;
  text-align: center;
  padding:10px;
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%);
  transform:translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
}
}


table.basic{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    width:100%;
height: auto;
  border-collapse:collapse;
  margin:0 auto;
    border-spacing:0;
    background-color:transparent;
    empty-cells:show;
}
.basic th{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
  border-bottom:0px dashed #565656;
    vertical-align:top;
    padding:0;
font-size: 14px;
    background-color:transparent;
    text-align:left;
font-weight: normal;
color:#565656;
width:auto;

}
.basic th.right_img{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
  border-bottom:0px dashed #565656;
    vertical-align:top;
    padding:0;
font-size: 14px;
    background-color:transparent;
    text-align:right;
font-weight: normal;
color:#565656;
width:30%;

}
.basic td{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
  border-bottom:0px dashed #565656;
    vertical-align:top;
    padding:0 0 0 100px;
font-size: 14px;
    background-color:transparent;
    text-align:left;
font-weight: normal;
color:#565656;
width:70%;
}

.basic td.right{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
  border-bottom:0px dashed #565656;
    vertical-align:top;
    padding:0 100px 0 0;
font-size: 14px;
    background-color:transparent;
    text-align:right;
font-weight: normal;
color:#565656;
width:70%;
}
@media screen and (max-width: 500px) {
.basic td{
    padding:1.5%;
	  border-bottom:1px solid #565656;
font-size: 16px;
}
}

.taiken{ font-size:1.3em; line-height:1.9em; letter-spacing:0.15em;}
.taiken_sp{ padding:2em 1em 0 1em;font-size:1em; line-height:1.9em; letter-spacing:0.15em;}
.taiken_pa{ padding:1em 1em 0 1em;font-size:1em; line-height:1.8em; letter-spacing:0.15em;}
.taiken_title{ padding:0 1em;font-size:1.3em; line-height:1.5em; letter-spacing:0.15em; font-weight:500; text-align:center;}
.fix_width{width:540px;}
.fix_width_r{width:540px; text-align:left; margin-left:330px; padding-right:130px;}
@media screen and (max-width:1800px){
.fix_width_r{width:540px; text-align:left; margin-left:250px; padding-right:130px;}
}
@media screen and (max-width:1620px){
.fix_width_r{width:540px; text-align:left; margin-left:130px; padding-right:130px;}
}
@media screen and (max-width:1420px){
.fix_width_r{width:540px; text-align:left; margin-left:10px; padding-right:130px;}
}

.taiken_p{ font-size:1.2em; line-height:2em; letter-spacing:0.05em;}
.taiken_sp_p{ padding:2em 1em 0 1em;font-size:0.9em; line-height:2em; letter-spacing:0.05em;}
.taiken_sp_c{ padding:2em 1em 0 1em;font-size:0.9em; line-height:2em; letter-spacing:0.05em;}
.taiken_sp_p_last{ padding:2em 1em 3em 1em;font-size:0.9em; line-height:2em; letter-spacing:0.05em;}
.flex-container{display: flex;justify-content: space-around;}
.flex-item{background: transparent;color: #565656;padding: 1em;flex-basis: 33.3%;}
.flex-item01{background: transparent;color: #565656;margin-left:-2em;padding: 0;flex-basis: 33.3%;}
@media screen and (max-width:500px){
.flex-container{flex-direction:column;}
.flex-item{margin: 0 1em; padding: 0;}
.flex-item01{margin: 0 0 0 2em;}
.taiken_sp_p{ padding:0 1em 6em 1em;font-size:0.9em; line-height:2em; letter-spacing:0.05em;}
.taiken_sp_p_last{ padding:1.5em 1em 6em 1em;font-size:0.9em; line-height:2em; letter-spacing:0.05em;}
.taiken_sp_c{ padding:0 1em 0 1em;font-size:0.9em; line-height:2em; letter-spacing:0.05em;}
}

.box1 {
    padding: 1em 3em;
    margin: 2em 0 3em;
    font-weight: normal;
    border: solid 0px #000000;
  background: #e8efed;
width:800px;
}
.box1 p {
    margin: 0; 
    padding: 0;
}
.btn-flat-border {
  display: inline-block;
  padding: 1em 2em;
  text-decoration: none;
  color: #222;
  background: #e8efed;
  transition: .4s;
    border: solid 1px #565656;
}

.btn-flat-border:hover {
  background: #222;
  color: white;
}
.padding_center{ padding: 3em;}

.btn-flat-border {
  display: inline-block;
  padding: 1em;
  text-decoration: none;
  color: #222;
  background: #e8efed;
  transition: .4s;
    border: solid 1px #565656;
}


.center_text{text-align:center; padding: 2em;letter-spacing:0.15em; line-height:1.5em;}
.center_text_pc{text-align:center; padding: 2em;letter-spacing:0.15em; line-height:1.5em; font-size:1.1em;}
.center_text_w{color:#FFF;text-align:center; padding: 2em;letter-spacing:0.15em; line-height:1.5em;}
.center_text_c{font-size:0.8em;color:#FFF;text-align:center; padding: 1em;letter-spacing:0.15em; line-height:1.5em;}
.center_text_csp{font-size:0.6em;color:#FFF;text-align:center; padding: 1em;letter-spacing:0.15em; line-height:1.5em;}
.message{padding-left:1em;font-size:2em; font-weight:normal;letter-spacing:0.15em; line-height:1.5em;}
.subtitle{ color:#222222; font-size:2em; padding:1em 0 0; letter-spacing:0.15em; line-height:1.5em;font-weight: normal;}

@media screen and (max-width:500px){
.padding_center{ padding: 3em 1em;}
.message{padding-left:0em;font-size:1.2em; font-weight:normal;color:#222;}
.box1 {
    padding: 10px;
    margin: 0;
    font-weight: normal;
    border: solid 0px #000000;
  background: #e8efed;
width:80%;
}
.btn-flat-border {
  display: inline-block;
  padding: 1em 0.5em;
  text-decoration: none;
  color: #222;
  background: #e8efed;
  transition: .4s;
    border: solid 1px #565656;
}
.subtitle{ color:#222222; font-size:1.5em; padding:2em 1em 1em 1em; letter-spacing:0.15em; line-height:1.5em;font-weight: normal;}
.center_text{text-align:center; padding: 1em;letter-spacing:0.15em; line-height:1.5em;}
.center_text_c{font-size:0.8em;color:#FFF;text-align:center; padding: 1em;letter-spacing:0.15em; line-height:1.5em;}
}
.instagram{letter-spacing:0.15em; line-height:1.5em; font-size:1.5em;}
.left{ float:left;}
.right{ float:right;}

dl {
    display: block;
    margin-block-start: 0px;
    margin-block-end: 0px;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

footer{width:100%; margin:0 auto;display:block;background-color:#141414;
margin-top: -1em; z-index:100;
}

.footer_margin{ padding:3em 0;}

table.footer_menu{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    width:100%;
height: auto;
  border-collapse:collapse;
  margin:0 auto;
    border-spacing:0;
    background-color:transparent;
    empty-cells:show;
}
.footer_menu td{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    vertical-align:top;
    padding:1em;
font-size: 16px;
    background-color:transparent;
    text-align:left;
font-weight: normal;
color:#FFF;
width:auto;
}
.footer_menu th{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    vertical-align:top;
    padding:1em 1em 1em 3em;
font-size: 16px;
    background-color:transparent;
    text-align:right;
font-weight: normal;
color:#FFF;
width:auto;
}
table.footer_menu_01{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    width:60px;
height: auto;
  border-collapse:collapse;
  margin:0 auto;
    border-spacing:0;
    background-color:transparent;
    empty-cells:show;
}
.footer_menu_01 th{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    vertical-align:top;
    padding:0 0 0 1em;
font-size: 16px;
    background-color:transparent;
    text-align:left;
font-weight: normal;
color:#FFF;
width:auto;
}

.footer_menu_01 td{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    vertical-align:top;
    padding:0.2em;
font-size: 16px;
    background-color:transparent;
    text-align:right;
font-weight: normal;
color:#FFF;
width:30px;
}

h2 {
    display: block;
    font-size: 1.5em;
    margin-block-start: 0.83em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}

a:-webkit-any-link {
    color: -webkit-link;
    cursor: pointer;
    color:#565656;
    text-decoration: none;
}
.text_center_insta {
    text-align: center;
    line-height: 2em;
    font-size: 16px;
    letter-spacing: 0.15em;
    padding: 0 2em;
}
@media screen and (max-width:500px){
.text_center_insta {
    text-align: center;
    line-height: 2em;
    font-size: 14px;
    letter-spacing: 0.15em;
    padding: 0 2em;
}
table.footer_menu{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    width:100%;
height: auto;
  border-collapse:collapse;
  margin:0 auto;
    border-spacing:0;
    background-color:transparent;
    empty-cells:show;
}
.footer_menu td{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    vertical-align:top;
    padding:0 0 0 1em;
font-size: 16px;
    background-color:transparent;
    text-align:left;
font-weight: normal;
color:#FFF;
width:auto;
}
.footer_menu th{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    vertical-align:top;
    padding:0 1em 0 0;
font-size: 16px;
    background-color:transparent;
    text-align:left;
font-weight: normal;
color:#FFF;
width:auto;
}
table.footer_menu_01{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    width:60px;
height: auto;
  border-collapse:collapse;
  margin:0 auto;
    border-spacing:0;
    background-color:transparent;
    empty-cells:show;
}
.footer_menu_01 td{
    border-top:0px solid #fff;
    border-left:0px solid #fff;
    border-right:0px solid #fff;
    border-bottom:0px solid #fff;
    vertical-align:top;
    padding:0.2em;
font-size: 16px;
    background-color:transparent;
    text-align:right;
font-weight: normal;
color:#FFF;
width:30px;
}
}
p {
    display: block;
    margin-block-start: 0px;
    margin-block-end: 0px;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

img.base { vertical-align: baseline; }

.sp_m_text{ padding: 0;}
@media screen and (max-width:500px){
.sp_m_text{ padding: 0 0 5em 0;}
}
hr {
    display: block;
    unicode-bidi: isolate;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0em;
    margin-inline-end: 0em;
    overflow: hidden;
    border-style: inset;
    border-width: 1px;
}
