abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent
}

body {
line-height: 1
}

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

nav ul {
list-style: none
}

blockquote,q {
quotes: none
}

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

a {
margin: 0;
padding: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;

}

ins {
text-decoration: none
}

ins,mark {
background-color: #ff9;
color: #000
}

mark {
font-style: italic;
font-weight: 700
}

del {
text-decoration: line-through
}

abbr[title],dfn[title] {
border-bottom: 1px dotted;
cursor: help
}

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

hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #ccc;
margin: 1em 0;
padding: 0
}

input,select {
vertical-align: middle
}

li {
list-style: none
}

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

img {
max-width: 100%
}

a {
text-decoration: none;
color: #000
}

button,input,select,textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none
}

.img-object-fit {
object-fit: cover;
height: 100%;
width: 100%;
max-width: none;
}

.w_gucha {
font-size: 2rem
}

.w_gucha span {
opacity: 0
}

.posi-zero {
-webkit-transition: .7s cubic-bezier(.6,-.28,.735,.045);
transition: .7s cubic-bezier(.6,-.28,.735,.045);
opacity: 1!important
}

@-webkit-keyframes bright {
0% {
color: rgba(0,191,165,.8);
text-shadow: 0 0 5px rgba(0,191,165,.3)
}
}

@keyframes bright {
0% {
color: rgba(0,191,165,.8);
text-shadow: 0 0 5px rgba(0,191,165,.3)
}
}

.gucha {
display: none
}

html {
font-size: 62.5%
}

body {
font-family: Noto Sans JP,sans-serif;
overflow-x: hidden
}

.container,.container-absolute {
width: 100%;
margin: 0 auto;
width: 300px
}

@media screen and (min-width: 768px) {
.container,.container-absolute {
width:100%;
padding: 0 15px;
max-width: 1054px
}
}

.container-absolute {
position: absolute;
height: 100%;
margin: 0 auto
}

.container-full {
width: 100%;
padding: 0
}

.container-half {
width: 50%;
padding: 0
}

.container-left {
right: 0
}

.container-left,.container-right {
width: 50%;
position: absolute;
top: 0
}

.container-right {
left: 0
}

.pc-b {
display: none
}

@media screen and (min-width: 768px) {
.pc-b {
display:block!important
}
}

.pc-f {
display: none
}

@media screen and (min-width: 768px) {
.pc-f {
display:-webkit-box!important;
display: -ms-flexbox!important;
display: flex!important
}
}

.pc-i {
display: none
}

@media screen and (min-width: 768px) {
.pc-i {
display:inline!important
}
}

.ta-o-b {
display: none
}

@media screen and (min-width: 768px) {
.ta-o-b {
display:block;
display: none
}
}

@media screen and (min-width: 768px) {
.pc-n {
display:none!important
}
}

.ta-b {
display: none
}

@media screen and (min-width: 768px) {
.ta-b {
display:block
}
}

.ta-n {
display: block
}

@media screen and (min-width: 768px) {
.ta-n {
display:none
}
}

.common-ttl01 {
font-size: 5rem;
margin-bottom: 50px;
/*color: #ff002e;*/
display: inline-block!important;
font-family: Helvetica,Helvetica Neue,Arial,Verdana,Roboto,"\6E38\30B4\30B7\30C3\30AF",Yu Gothic,"\6E38\30B4\30B7\30C3\30AF\4F53",YuGothic,"\30D2\30E9\30AE\30CE\89D2\30B4   Pro W3",Hiragino Kaku Gothic Pro,Meiryo UI,"\30E1\30A4\30EA\30AA",Meiryo,"\FF2D\FF33   \FF30\30B4\30B7\30C3\30AF",MS PGothic,sans-serif
}

@media screen and (min-width: 768px) {
.common-ttl01 {
font-size:10rem;
margin-bottom: 60px
}
}

.common-txt01 {
font-size: 1.8rem;
font-weight: 900;
line-height: 2.27
}

@media screen and (min-width: 768px) {
.common-txt01 {
line-height:2.2;
font-weight: 700
}
}

.common-fl01 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between
}

.common-fl01>* {
width: 31.03448%
}

.common-headding {
margin-bottom: 0;
color: #fff;
position: relative;
padding-top: 70px;
height: 320px;
padding-left: 15px;
padding-right: 15px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
overflow: hidden;
}

@media screen and (min-width: 768px) {
.common-headding {
padding-top:50px;
height: 320px;
margin-bottom: 0
}
}

.common-headding .img-object-fit {
position:absolute;
z-index:-1;
margin-top: -50px;
}

@media screen and (min-width: 768px) {
.common-headding .common-headding-ttl01 {
display:block
}
}

.common-headding .common-headding-ttl02 {
width: 100%
}

@media screen and (min-width: 768px) {
.common-headding .common-headding-ttl02 {
position:static;
text-align: center
}
}

.common-headding-ttl01 {
text-align: center;
font-size: 6rem;
letter-spacing: .2rem;
line-height: 1;
margin-bottom: 24px;
}

@media screen and (min-width: 768px) {
.common-headding-ttl01 {
font-size:5rem;
line-height: 1;
margin-bottom: 25px;
text-align: center;
letter-spacing: .2rem;
font-family: Helvetica,Helvetica Neue,Arial,Verdana,Roboto,"\6E38\30B4\30B7\30C3\30AF",Yu Gothic,"\6E38\30B4\30B7\30C3\30AF\4F53",YuGothic,"\30D2\30E9\30AE\30CE\89D2\30B4   Pro W3",Hiragino Kaku Gothic Pro,Meiryo UI,"\30E1\30A4\30EA\30AA",Meiryo,"\FF2D\FF33   \FF30\30B4\30B7\30C3\30AF",MS PGothic,sans-serif
}
}

.common-headding-ttl02 {
font-size: 1.4rem;
line-height: 2;
text-align: center;
font-weight: 900;
text-shadow: 0 0 6px #fff
}

@media screen and (min-width: 768px) {
.common-headding-ttl02 {
font-size:1.8rem;
line-height: 1.5;
font-weight: 700
}
}

.about-headding {
background: url(../images/sp-aboutbg@2x.jpg) no-repeat top;
background-size: cover
}

@media screen and (min-width: 768px) {
.about-headding {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
background: url(../images/headding-about@2x.jpg) no-repeat top;
background-size: cover;
background-position: 50%
}
}

.plan-headding {
color: #000;
}
.plan-headding .common-headding-ttl01 {
text-shadow: 0 0 6px #fff;
}

.community-headding {
color: #000
}

.community-headding .common-headding-ttl01 {
text-shadow: 0 0 6px #fff;
font-size: 4.8rem
}

@media screen and (min-width: 768px) {
.community-headding .common-headding-ttl01 {
font-size:5rem
}
}

.voice-headding {
color: #000
}

.tips-headding {
color: #000
}

.tips-headding img {
height: 120%;
object-position: 38%;
}

@media screen and (min-width: 768px) {
.tips-headding img {
height: 190%;
object-position: center;
}
}

.tips-headding .common-headding-ttl02 {
text-shadow: 0 0 6px #fff;
color: #000
}

.more-btn {
height: 36px;
width: 130px;
border-radius: 18px;
background: #000;
color: #fff;
text-align: center;
font-size: 1.4rem;
letter-spacing: .05rem
}

.more-btn span {
margin-right: 8px
}

.common-btn01 {
display: -webkit-box!important;
display: -ms-flexbox!important;
display: flex!important;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-transition: all .2s linear;
transition: all .2s linear;
background: #000;
color: #fff;
border: 2px solid #000;
font-weight: 700
}

.common-btn01 span {
-webkit-transition: -webkit-transform .2s linear;
transition: -webkit-transform .2s linear;
transition: transform .2s linear;
transition: transform .2s linear,-webkit-transform .2s linear;
display: block
}

.common-btn01-alt {
background: #fff;
color: #000;
}

.common-btn01:hover {
background: transparent;
color: #000;
}
.common-btn01-alt:hover {
background: #000;
color: #fff;
}

.common-btn01:hover span {
-webkit-transform: translateX(3px);
transform: translateX(3px);
}

.slick-slider {
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-khtml-user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent
}

.slick-list,.slick-slider {
position: relative;
display: block
}

.slick-list {
overflow: hidden;
margin: 0;
padding: 0
}

.slick-list:focus {
outline: none
}

.slick-list.dragging {
cursor: pointer;
cursor: hand
}

.slick-slider .slick-list,.slick-slider .slick-track {
-webkit-transform: translateZ(0);
transform: translateZ(0)
}

.slick-track {
position: relative;
top: 0;
left: 0;
display: block;
margin-left: auto;
margin-right: auto
}

.slick-track:after,.slick-track:before {
display: table;
content: ""
}

.slick-track:after {
clear: both
}

.slick-loading .slick-track {
visibility: hidden
}

.slick-slide {
display: none;
float: left;
height: 100%;
min-height: 1px
}

[dir=rtl] .slick-slide {
float: right
}

.slick-slide img {
display: block
}

.slick-slide.slick-loading img {
display: none
}

.slick-slide.dragging img {
pointer-events: none
}

.slick-initialized .slick-slide {
display: block
}

.slick-loading .slick-slide {
visibility: hidden
}

.slick-vertical .slick-slide {
display: block;
height: auto;
border: 1px solid transparent
}

.slick-arrow.slick-hidden {
display: none
}

.slick-prev-arrow {
left: 15px;
border-left: 3px solid;
-webkit-transform: rotate(45deg);
transform: rotate(45deg)
}

.slick-next-arrow,.slick-prev-arrow {
position: absolute;
top: calc(50% + 15px);
border-bottom: 3px solid;
display: block;
width: 20px;
height: 20px;
z-index: 3;
background: #fff
}

.slick-next-arrow {
right: 15px;
border-right: 3px solid;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg)
}

.slick-disabled {
display: none!important
}

/*ul li listing*/
ul.dotted-list {
padding-left: 26px;
}

.dotted-list li {
list-style: disc;
}

.header {
width: 100%;
background-color: rgba(0,0,0,.85);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
padding: 0 15px;
position: fixed;
top: 0;
left: 0;
z-index: 3;
height: 70px;
-webkit-transition: height .3s ease-in;
transition: height .3s ease-in;
}

@media screen and (min-width: 768px) {
.header {
height:100px;
padding: 0 20px
}
}

@media screen and (min-width: 1024px) {
.header {
height:100px;
padding: 0 40px
}
}

@media screen and (min-width: 768px) {
body.home .header {
opacity:0
}
}

.header img {
transition: max-width 0.4s;
}

.header-logo {
width: 150px;
margin-right: 15px;
-webkit-transition: width .3s ease-in;
transition: width .3s ease-in
}

@media screen and (min-width: 768px) {
.header-logo {
width:150px
}
}

@media screen and (min-width: 1024px) {
.header-logo {
width:205px
}
}

.header-nav {
position: fixed;
right: -320px;
top: 0;
height: 100%;
z-index: 3;
width: 320px;
background: rgba(0,0,0,.85);
padding: 20px 50px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}

@media screen and (min-width: 768px) {
.header-nav {
padding:0;
position: relative;
right: auto;
width: auto;
height: auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
background: none
}
}

.header-nav-item {
color: #fff;
font-size: 1.8rem;
line-height: 1;
text-decoration: none;
display: block;
/*letter-spacing: .24rem;*/
letter-spacing: .18rem;
font-weight: 700;
position: relative;
font-family: Helvetica,Helvetica Neue,Arial,Verdana,Roboto,"\6E38\30B4\30B7\30C3\30AF",Yu Gothic,"\6E38\30B4\30B7\30C3\30AF\4F53",YuGothic,"\30D2\30E9\30AE\30CE\89D2\30B4   Pro W3",Hiragino Kaku Gothic Pro,Meiryo UI,"\30E1\30A4\30EA\30AA",Meiryo,"\FF2D\FF33   \FF30\30B4\30B7\30C3\30AF",MS PGothic,sans-serif
}

@media screen and (min-width: 768px) {
.header-nav-item {
margin-right:10px;
font-size: 1.5rem;
line-height: 1.2
}

.header-nav-item:after {
content: "";
width: 100%;
height: 2px;
position: absolute;
left: 0;
bottom: -9px;
background: #fff;
-webkit-transform: scale(0);
transform: scale(0);
-webkit-transition: -webkit-transform .2s ease-in;
transition: -webkit-transform .2s ease-in;
transition: transform .2s ease-in;
transition: transform .2s ease-in,-webkit-transform .2s ease-in
}

.header-nav-item:hover:after {
-webkit-transform: scale(1);
transform: scale(1)
}
}

@media screen and (min-width: 1024px) {
.header-nav-item {
/*margin-right:32px;*/
margin-right:22px;
}
}

.header-nav-item.-current:after {
-webkit-transform: scale(1);
transform: scale(1)
}

.header-nav-item-home {
display: block
}

@media screen and (min-width: 768px) {
.header-nav-item-home {
display:none
}
}

.header-nav-item-sub {
display: block;
font-size: 1.2rem;
line-height: 1;
color: #fff
}

@media screen and (min-width: 768px) {
.header-nav-item-sub {
display:none
}
}

.header-btn01,.header-btn03 {
width: 134px;
min-width: 120px;
height: 40px;
border: 2px solid #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.4rem;
font-weight: 700;
letter-spacing: .15rem;
color: #fff;
margin-top: 26px;
margin-bottom: 0;
padding-top: 10px;
padding-bottom: 10px;
}

.header-btn01 img,.header-btn03 img {
margin-right: 8px
}

@media screen and (min-width: 768px) {
.header-btn01,.header-btn03 {
margin-top:0;
margin-bottom: 0;
margin-right: 12px
}
}

@media screen and (min-width: 1024px) {
.header-btn01,.header-btn03 {
margin-top:0;
margin-bottom: 0;
margin-right: 22px
}
}

.header-sns {
display:flex;
}
@media  (max-width: 768px){
.header-sns {
margin-top: -48px;
margin-left: 110px;
}
}
.header-btn02 {
display: block;
margin-bottom: 20px
}

@media  (max-width: 768px){
.header-sns .header-btn02{
display: inline-block;
margin-right: 15px;
}
}
@media screen and (min-width: 768px) {
.header-btn02 {
margin-bottom:0
}
}

.header-btn03 {
margin-right: 0;
margin-bottom: 0!important;
margin-top: 0!important;
display: none
}

.header-nav-item+.header-nav-item {
margin-top: 15px
}

@media screen and (min-width: 768px) {
.header-nav-item+.header-nav-item {
margin-top:0
}
}

.header-nav-item-home+.header-nav-item {
margin-top: 35px
}

@media screen and (min-width: 768px) {
.header-nav-item-home+.header-nav-item {
margin-top:0
}
}

.header-nav-item-sub+.header-nav-item-sub {
margin-top: 10px
}

@media screen and (min-width: 768px) {
.header-nav-item-sub+.header-nav-item-sub {
margin-top:0
}
}

.header-trig {
display: inline-block;
-webkit-transition: all .4s;
transition: all .4s;
-webkit-box-sizing: border-box;
box-sizing: border-box;
position: fixed;
width: 28px;
height: 20px;
right: 23px;
top: 27px;
z-index: 4;
cursor: pointer;
}
.-scrolled .header-trig {
top: 17px;
}

@media screen and (min-width: 768px) {
.header-trig {
display:none
}
}

.header-trig span {
display: inline-block;
-webkit-transition: all .4s;
transition: all .4s;
-webkit-box-sizing: border-box;
box-sizing: border-box;
position: absolute;
left: 0;
width: 100%;
height: 2px;
background-color: #fff;
border-radius: 1px
}

.header-trig>span:first-of-type {
top: 0;
-webkit-animation: menu-bar01 .75s forwards;
animation: menu-bar01 .75s forwards
}

.header-trig>span:nth-of-type(2) {
top: 9px;
-webkit-transition: all .25s .25s;
transition: all .25s .25s;
opacity: 1;
-webkit-transform: scaleX(.8);
transform: scaleX(.8);
-webkit-transform-origin: 100% 50%;
transform-origin: 100% 50%
}

.header-trig>span:nth-of-type(3) {
bottom: 0;
-webkit-animation: menu-bar02 .75s forwards;
animation: menu-bar02 .75s forwards;
-webkit-transform: scaleX(.6);
transform: scaleX(.6);
-webkit-transform-origin: 100% 50%;
transform-origin: 100% 50%
}

.header-trig.-active span:first-of-type {
-webkit-animation: active-menu-bar01 .75s forwards;
animation: active-menu-bar01 .75s forwards
}

.header-trig.-active span:nth-of-type(2) {
opacity: 0
}

.header-trig.-active span:nth-of-type(3) {
-webkit-animation: active-menu-bar03 .75s forwards;
animation: active-menu-bar03 .75s forwards;
-webkit-transform-origin: 50% 50%;
transform-origin: 50% 50%
}

@-webkit-keyframes menu-bar01 {
0% {
-webkit-transform: translateY(9px) rotate(45deg);
transform: translateY(9px) rotate(45deg)
}

50% {
-webkit-transform: translateY(9px) rotate(0);
transform: translateY(9px) rotate(0)
}

to {
-webkit-transform: translateY(0) rotate(0);
transform: translateY(0) rotate(0)
}
}

@keyframes menu-bar01 {
0% {
-webkit-transform: translateY(9px) rotate(45deg);
transform: translateY(9px) rotate(45deg)
}

50% {
-webkit-transform: translateY(9px) rotate(0);
transform: translateY(9px) rotate(0)
}

to {
-webkit-transform: translateY(0) rotate(0);
transform: translateY(0) rotate(0)
}
}

@-webkit-keyframes menu-bar02 {
0% {
-webkit-transform: translateY(-9px) rotate(-45deg);
transform: translateY(-9px) rotate(-45deg)
}

50% {
-webkit-transform: translateY(-9px) rotate(0);
transform: translateY(-9px) rotate(0)
}

to {
-webkit-transform: translateY(0) rotate(0) scaleX(.6);
transform: translateY(0) rotate(0) scaleX(.6)
}
}

@keyframes menu-bar02 {
0% {
-webkit-transform: translateY(-9px) rotate(-45deg);
transform: translateY(-9px) rotate(-45deg)
}

50% {
-webkit-transform: translateY(-9px) rotate(0);
transform: translateY(-9px) rotate(0)
}

to {
-webkit-transform: translateY(0) rotate(0) scaleX(.6);
transform: translateY(0) rotate(0) scaleX(.6)
}
}

@-webkit-keyframes active-menu-bar01 {
0% {
-webkit-transform: translateY(0) rotate(0);
transform: translateY(0) rotate(0)
}

50% {
-webkit-transform: translateY(9px) rotate(0);
transform: translateY(9px) rotate(0)
}

to {
-webkit-transform: translateY(9px) rotate(45deg);
transform: translateY(9px) rotate(45deg)
}
}

@keyframes active-menu-bar01 {
0% {
-webkit-transform: translateY(0) rotate(0);
transform: translateY(0) rotate(0)
}

50% {
-webkit-transform: translateY(9px) rotate(0);
transform: translateY(9px) rotate(0)
}

to {
-webkit-transform: translateY(9px) rotate(45deg);
transform: translateY(9px) rotate(45deg)
}
}

@-webkit-keyframes active-menu-bar03 {
0% {
-webkit-transform: translateY(0) rotate(0);
transform: translateY(0) rotate(0)
}

50% {
-webkit-transform: translateY(-9px) rotate(0);
transform: translateY(-9px) rotate(0)
}

to {
-webkit-transform: translateY(-9px) rotate(-45deg) scaleX(1);
transform: translateY(-9px) rotate(-45deg) scaleX(1)
}
}

@keyframes active-menu-bar03 {
0% {
-webkit-transform: translateY(0) rotate(0);
transform: translateY(0) rotate(0)
}

50% {
-webkit-transform: translateY(-9px) rotate(0);
transform: translateY(-9px) rotate(0)
}

to {
-webkit-transform: translateY(-9px) rotate(-45deg) scaleX(1);
transform: translateY(-9px) rotate(-45deg) scaleX(1)
}
}

@media screen and (min-width: 768px) {
.header.-active .header-nav {
position:fixed;
right: -320px;
top: 0;
height: 100%;
z-index: 3;
width: 320px;
background: rgba(0,0,0,.85);
padding: 90px 50px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start
}
}

@media screen and (min-width: 768px) {
.header.-active .header-trig {
display:inline-block
}
}

@media screen and (min-width: 768px) {
.header.-active .header-btn01,.header.-active .header-btn03 {
margin-top:40px;
margin-bottom: 25px
}
}

@media screen and (min-width: 768px) {
.header.-active .header-btn02 {
margin-bottom:20px
}
}

@media screen and (min-width: 768px) {
.header.-active .header-nav-item {
color:#fff;
font-size: 1.8rem;
line-height: 1;
text-decoration: none;
display: block;
letter-spacing: .24rem;
font-weight: 700;
position: relative
}

.header.-active .header-nav-item:after {
content: none
}

.header.-active .header-nav-item:hover:after {
-webkit-transform: scale(1);
transform: scale(1)
}
}

@media screen and (min-width: 768px) {
.header.-active .header-nav-item+.header-nav-item {
margin-top:15px
}
}

@media screen and (min-width: 768px) {
.header.-active .header-nav-item-home+.header-nav-item {
margin-top:35px
}
}

@media screen and (min-width: 768px) {
.header.-active .header-nav-item-home,.header.-active .header-nav-item-sub {
display:block
}
}

@media screen and (min-width: 768px) {
.header.-active .header-nav-item-sub+.header-nav-item-sub {
margin-top:10px
}
}

@media screen and (min-width: 768px) {
.header.-active {
height:70px;
padding: 0 80px 0 23px
}
}

@media screen and (min-width: 768px) {
.header.-active .header-logo {
width:150px
}
}

@media screen and (min-width: 768px) {
.header.-active .header-btn03 {
display:-webkit-box;
display: -ms-flexbox;
display: flex
}
}

@media screen and (min-width: 768px) {
.header.-back *,header:not(.-active) .header-nav-item {
-webkit-transform:none!important;
transform: none!important
}

header:not(.-active) .header-nav-item {
opacity: 1!important
}
}

.bogo-language-switcher {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
-ms-flex-direction: row-reverse;
flex-direction: row-reverse;
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end;
margin-bottom: 30px
}

@media screen and (min-width: 768px) {
.bogo-language-switcher {
margin-right:32px;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
margin-bottom: 0
}
}


.bogo-language-switcher li {
color: #fff
}

.bogo-language-switcher a,.bogo-language-switcher li {
font-size: 1.6rem;
display: block;
text-align: center;
font-weight: 700
}

.bogo-language-switcher a {
color: #fff;
color: #7c7c7c
}

.bogo-language-switcher>li:last-child {
padding-right: 15px;
border-right: 1px solid #fff
}

.bogo-language-switcher>li:first-child {
padding-left: 15px
}

.header.-active .bogo-language-switcher {
margin-bottom: 30px
}

.only-active {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center
}

.header-tel {
display: none;
margin-left: 30px;
font-size: 1.6rem;
color: #fff;
font-weight: 700
}

@media screen and (min-width: 768px) {
.-active .header-tel {
display:block
}
}

@media screen and (min-width: 768px) {
.header.-active .header-btn01,.header.-active .header-btn03 {
margin-top:30px;
margin-bottom: 20px
}
}

@media screen and (min-width: 768px) {
.header-sp-tel {
display:none
}
}

.header-sp-tel {
margin: 20px 0 20px 0;
font-size: 1.2rem;
color: #fff;
line-height: 1.4
}

.-active .header-sp-tel {
display: block
}

.header-sp-tel-bold {
font-size: 1.6rem;
font-weight: 700
}


/*@media screen and (max-height: 620px){
.bogo-language-switcher {
margin-bottom:18px;
}
.header-sp-tel {
margin-bottom:12px;
}
.header-btn01 {
margin-top: 20px;
margin-bottom: 16px;
}
.header-nav-item-home+.header-nav-item {
margin-top: 25px;
}
}*/


.footer {
padding: 85px 0;
width: 100%;
background-color: #000;
color: #fff
}

.footer a {
color: #fff;
text-decoration: none
}

@media screen and (min-width: 768px) {
.footer {
padding:110px 0
}
}

.footer-logo {
display: none
}

@media screen and (min-width: 768px) {
.footer-logo {
display:block;
width: 14.0625%;
margin-bottom: 30px
}
}

.footer-txt01 {
width: 31.25%;
font-size: 12px;
line-height: 2.2;
display: none
}

@media screen and (min-width: 768px) {
.footer-txt01 {
display:block;
width: 280px
}
}

.footer-box01 {
padding: 0 35px
}

@media screen and (min-width: 768px) {
.footer-box01 {
padding:0 15px;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between
}
}

@media screen and (min-width: 768px) {
.footer-box01,.footer-nav01 {
display:-webkit-box;
display: -ms-flexbox;
display: flex
}

.footer-nav01 {
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end
}
}

.footer-nav01>li:last-child {
width: 130px
}

.footer-nav02 {
display: block;
margin-top: 20px
}

@media screen and (min-width: 768px) {
.footer-nav02 {
display:none
}
}

@media screen and (min-width: 768px) {
.footer-box02,.footer-box04 {
margin-right:30px
}
}

@media screen and (min-width: 768px) {
.footer-nav01>.footer-box02:last-child,.footer-nav01>.footer-box04:last-child {
margin-right:0;
width: 135px
}
}

.footer-link01,.footer-link03,.footer-link04,.footer-link05 {
font-size: 1.8rem;
font-weight: 700;
display: block;
line-height: 1;
margin-bottom: 20px
}

@media screen and (min-width: 768px) {
.footer-link01,.footer-link03,.footer-link04,.footer-link05 {
font-size:1.2rem;
line-height: 1.2;
margin-bottom: 10px
}
}

.footer-link02 {
display: none
}

@media screen and (min-width: 768px) {
.footer-link02 {
font-size:1.2rem;
line-height: 1.2;
line-height: 1.85;
display: block
}
}

@media screen and (min-width: 768px) {
.footer-link03 {
display:none
}
}

.footer-link04 {
display: none
}

@media screen and (min-width: 768px) {
.footer-link04 {
display:block
}
}

.footer-link05 {
margin-bottom: 0;
font-size: 1.2rem
}

.footer-link05+.footer-link05 {
margin-top: 10px
}

.footer-box03 {
padding: 0 35px
}

@media screen and (min-width: 768px) {
.footer-box03 {
padding:0 15px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center
}
}

.footer-box04 {
display: none
}

@media screen and (min-width: 768px) {
.footer-box04 {
display:block
}
}

.footer-btn01 {
height: 40px;
border: 2px solid #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.4rem;
width: 140px;
margin-top: 30px;
font-weight: 700;
letter-spacing: .15rem;
}

@media screen and (min-width: 768px) {
.footer-btn01 {
width:14.0625%;
margin-right: 32px;
margin-top: 0
}
}

.footer-btn01 img {
margin-right: 8px
}

.footer-btn02 {
margin-top: 30px;
display: block
}

@media screen and (min-width: 768px) {
.footer-btn02 {
margin-top:0
}
}

.revealContent {
opacity: 0
}

.about-sub {
display: flex;
margin-top: 20px;
width: 100%;
}
.about-sub div:nth-child(1) {
width: 68%;
}
.about-sub div:nth-child(1) p {
padding-right: 30px;
line-height: 1.5;
font-size:90%;
}
.about-sub div:nth-child(1) a {
text-decoration: underline;
color: rgb(0,0,238);
}
.about-sub div:nth-child(2) {
justify-content: center;
align-items: center;
width: 30%;
}

@media screen and (min-width: 768px) {
.about-sub .as-sf-b {
margin-top: -38px;
}
}

@media screen and (max-width: 768px) {
.about-sub {
/*flex-direction: column-reverse;*/
flex-direction: column;
}
.about-sub div:nth-child(1) {
padding-top: 20px;
width: 100%;
}
.about-sub div:nth-child(1) p {
}
.about-sub div:nth-child(2) {
text-align:center;
width: 100%;
}
.about-sub .as-sf-a {
margin-bottom:10px;
}
}


.revealActive .revealContent {
-webkit-transition-delay: .3s;
transition-delay: .3s;
opacity: 1
}

.revealItem {
position: relative;
overflow: hidden
}

.revealItem.revealActive:before {
-webkit-animation: hideFromLeft .3s forwards,showFromLeft .3s .3s forwards;
animation: hideFromLeft .3s forwards,showFromLeft .3s .3s forwards;
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #111111;
margin: 1px;
z-index: 2
}

.revealItem.revealer.revealActive:before {
-webkit-animation: hideFromLeft .3s forwards;
animation: hideFromLeft .3s forwards;
background: #e8e8e8
}

.revealItem.revealItem02:before {
-webkit-animation: hideFromLeft .3s .4s forwards,showFromLeft .3s .8s forwards;
animation: hideFromLeft .3s .4s forwards,showFromLeft .3s .8s forwards
}

.revealItem.revealItem03:before {
-webkit-animation: hideFromLeft .3s .8s forwards,showFromLeft .3s 1.2s forwards;
animation: hideFromLeft .3s .8s forwards,showFromLeft .3s 1.2s forwards
}

.revealItem.revealReverse.revealActive:before {
left: auto;
right: 0;
-webkit-animation: hideFromRight .3s forwards,showFromRight .3s .3s forwards;
animation: hideFromRight .3s forwards,showFromRight .3s .3s forwards
}

.revealItem.revealReverse02.revealActive:before {
left: auto;
right: 0;
-webkit-animation: hideFromRight .3s .4s forwards,showFromRight .3s .8s forwards;
animation: hideFromRight .3s .4s forwards,showFromRight .3s .8s forwards
}

.revealItem.revealReverse03.revealActive:before {
left: auto;
right: 0;
-webkit-animation: hideFromRight .3s .8s forwards,showFromRight .3s 1.2s forwards;
animation: hideFromRight .3s .8s forwards,showFromRight .3s 1.2s forwards
}

@-webkit-keyframes hideFromLeft {
0% {
-webkit-transform: translateX(-100%);
transform: translateX(-100%)
}

to {
-webkit-transform: translateX(0);
transform: translateX(0)
}
}

@keyframes hideFromLeft {
0% {
-webkit-transform: translateX(-100%);
transform: translateX(-100%)
}

to {
-webkit-transform: translateX(0);
transform: translateX(0)
}
}

@-webkit-keyframes showFromLeft {
0% {
-webkit-transform: translateX(0);
transform: translateX(0)
}

to {
-webkit-transform: translateX(100%);
transform: translateX(100%)
}
}

@keyframes showFromLeft {
0% {
-webkit-transform: translateX(0);
transform: translateX(0)
}

to {
-webkit-transform: translateX(100%);
transform: translateX(100%)
}
}

@-webkit-keyframes hideFromRight {
0% {
-webkit-transform: translateX(100%);
transform: translateX(100%)
}

to {
-webkit-transform: translateX(0);
transform: translateX(0)
}
}

@keyframes hideFromRight {
0% {
-webkit-transform: translateX(100%);
transform: translateX(100%)
}

to {
-webkit-transform: translateX(0);
transform: translateX(0)
}
}

@-webkit-keyframes showFromRight {
0% {
-webkit-transform: translateX(0);
transform: translateX(0)
}

to {
-webkit-transform: translateX(-100%);
transform: translateX(-100%)
}
}

@keyframes showFromRight {
0% {
-webkit-transform: translateX(0);
transform: translateX(0)
}

to {
-webkit-transform: translateX(-100%);
transform: translateX(-100%)
}
}

.revealImg {
width: 300px;
height: 200px;
-o-object-fit: cover;
object-fit: cover;
vertical-align: bottom
}

.revealer {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: -1
}

body {
overflow: hidden
}

body.single {
overflow-y: scroll!important
}

body.single #scrollify {
overflow: scroll!important;
height: auto!important
}

#loadedAnim {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: 10000;
background-color: #000;
opacity: 1;
-webkit-transition: opacity .5s linear;
transition: opacity .5s linear;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center
}

#loadedAnim img {
display: block;
position: absolute;
top: 0;
bottom: 0;
margin: auto
}

#loadedAnim.-active {
opacity: 0
}

.loading-movie {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: hidden;
z-index: 100;
background-size: cover;
display: none;
pointer-events: none
}

@media screen and (min-width: 768px) {
.loading-movie {
display:block
}
}

.loading-movie video {
width: 100%
}

.loading-movie.tallWrapper video {
width: 100vw;
height: auto;
margin-top: calc((53.69128vw - 100vh)/2*-1)
}

.loading-movie.wideWrapper video {
width: auto;
height: 100vh;
margin-left: calc((186.25vh - 100vw)/2*-1)
}

#scrollify {
height: 100vh;
width: 100vw;
overflow: hidden
}

.icon-up {
position: fixed;
bottom: 20px;
right: 20px;
width: 70px;
z-index: 2;
display: none
}

@media screen and (min-width: 768px) {
.icon-up {
display:block
}
}

#scrollify.-active {
height: 100vh;
overflow: hidden
}

.top-hero {
height: 100vh;
width: 100%;
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
padding-left: 10%;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
background-color: rgba(0,0,0,0.21);
}

@media screen and (min-width: 768px) {
.top-hero {
padding-left:0;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center
}
}

@media screen and (min-width: 768px) {
.top-hero-ttl01 {
width:600px;
width: 898px
}
}

.top-hero-bg {
object-fit: cover;
height: 100vh;
width: 100%;
/*background: url(../images/masthead.jpg) no-repeat;*/
/*background-size: cover;*/
position: absolute;

left: 0;
top: 0;
z-index: -1
}

.top-hero-scroll {
width: 44px;
position: absolute;
bottom: 40px;
left: 50%;
margin-left: -22px;
display: block
}

.top-concept {
padding: 130px 0 235px
}

@media screen and (min-width: 768px) {
.top-concept {
padding:100px 0 240px;
/*padding:130px 0 250px;*/
/*padding: 170px 0 350px;*/
}
}

.top-concept strong {
text-transform: uppercase;
}

@media screen and (min-width: 768px) {
.top-concept-ttl01 {
margin-bottom:60px
}
}

.top-subheader {
font-size: 1.7rem;
text-align: center;
margin-top: 45px;
color: #fff;
text-shadow: 0 0 7px #000;
font-weight: 700
}

@media screen and (min-width: 768px) {
.top-subheader {
font-size:2.4rem;
text-shadow: 0 0 6px #000;
font-size: 3.2rem;
text-shadow: 0 0 10px #000
}
}

.top-concept-txt01 {
letter-spacing: -.05rem
}

@media screen and (min-width: 768px) {
.top-concept-txt01 {
letter-spacing:0;
font-size: 1.8rem;
line-height: 2.2;
width: 650px
}
}

.top-concept-txt01 strong {
border-bottom: 2px solid #000000;
}

@media screen and (min-width: 768px) {
.en-US .top-concept-txt01 {
width:750px
}
}

.top-functions {
padding-bottom: 40px;
position: relative;
background: #e8e8e8
}

@media screen and (min-width: 768px) {
.top-functions {
padding-bottom:60px
}
}

.reveal-wrapper {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
pointer-events:none;
}

.top-functions-ttl01 {
position: relative;
top: -30px;
margin-bottom: 40px
}

@media screen and (min-width: 768px) {
.top-functions-ttl01 {
top:-50px;
margin-bottom: -15px
}
}

.top-functions-ttl02 {
font-size: 2.4rem;
line-height: 1.7;
margin-bottom: 40px;
position: relative;
width: 100%
}

@media screen and (min-width: 768px) {
.top-functions-ttl02 {
margin-bottom:50px
}
}

.top-functions-ttl02:after {
content: "";
height: 4px;
background-color: #000;
width: 100%;
position: absolute;
bottom: -10px;
left: 0
}

@media screen and (min-width: 768px) {
.top-functions-ttl02:after {
bottom:-19px
}
}

.top-functions-ttl03 {
font-size: 1.8rem;
margin-bottom: 20px;
padding: 0 20px;
width: 100%;
font-weight: 900;
line-height: 1.7
}

@media screen and (min-width: 768px) {
.top-functions-ttl03 {
font-size:1.6rem;
font-size: 1.8rem;
font-weight: 700;
padding: 0 25px
}
}

@media screen and (min-width: 768px) {
.en-US .top-functions-ttl03 {
min-height:160px
}
}

.top-functions-ttl04 {
font-weight: 400;
text-decoration: underline
}

.top-functions-txt01 {
margin-bottom: 40px;
width: 100%;
line-height: 1.7;
letter-spacing: .15rem
}

@media screen and (min-width: 768px) {
.top-functions-txt01 {
margin-bottom:110px;
letter-spacing: 0;
display: inline-block;
width: auto
}
}

.top-functions-txt02 {
font-size: 1.4rem;
line-height: 2
}

.en-US .top-functions-txt02 {
line-height: 1.6
}

.top-functions-txt03 {
font-size: 1.2rem;
line-height: 2.3;
margin-top: 32px
}

.en-US .top-functions-txt03 {
line-height: 1.6
}

.top-functions-img01 {
margin-bottom: 33px
}

.top-functions-img01 img {
width: 100%
}

@media screen and (min-width: 768px) {
.top-functions-img01 {
margin-bottom:43px
}
}

@media screen and (min-width: 768px) {
.top-functions-box01 {
width:calc(33.333% - 5px);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
width: 31.03448%;
}
}

.top-functions-box01>div {
/*    display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1*/
display:block;
}

.top-functions-box01+.top-functions-box01 {
margin-top: 40px
}

@media screen and (min-width: 768px) {
.top-functions-box01+.top-functions-box01 {
margin-top:0
}
}

@media screen and (min-width: 768px) {
.top-functions-fl01 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between
}
}

.top-functions-box02 {
background-color: #fff;
width: 100%;
-webkit-box-shadow: 3px 3px 5px rgba(0,0,0,.25);
box-shadow: 3px 3px 5px rgba(0,0,0,.25)
}

.top-functions-box02 .more-btn {
cursor: pointer;
margin: auto;
margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
.top-functions-box02 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1
}
}

.top-functions-box03 {
padding: 0 22px 27px;
word-break: break-word;
overflow: hidden;

}

@media screen and (min-width: 768px) {
.top-functions-box03 {
padding:0 25px 40px;
}
}

.top-functions-box03.hide {
height: 0;
padding-bottom:0;
}

.top-community {
padding: 100px 0 230px;
position: relative
}

@media screen and (min-width: 768px) {
.top-community {
padding:140px 0 330px;
/*padding:360px 0 430px;*/
}
}

.about-community-container-left01,.about-community-container-left01>div,.about-design-container-left01,.top-community-container-left01 {
top: 0;
height: 240px;
width: 75%;
left: 25%;
position: absolute!important
}

.about-community-container-left01>div,.about-community-container-left01>div>div,.about-design-container-left01>div,.top-community-container-left01>div {
/*background: url(../images/top05@2x.jpg) no-repeat;*/
/*background: url(../images/header-community.jpg) no-repeat;*/
/*background-size: cover;*/
width: 100%;
height: 100%
}
.top-community-container-left01 img{
height: 100%;
max-width: none;
}

@media screen and (min-width: 768px) {
.about-community-container-left01,.about-community-container-left01>div,.about-design-container-left01,.top-community-container-left01 {
height:100%;
width: calc(50% - 16px);
left: auto;
right: 0
}
}

.about-community-container01,.about-design-container01,.top-community-container01 {
position: relative;
z-index: 1;
height: 100%;
padding-top: 280px
}

@media screen and (min-width: 768px) {
.about-community-container01,.about-design-container01,.top-community-container01 {
max-width:1024px;
padding: 0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}
}

.about-community-container-full01,.about-design-container-full01,.top-community-container-full01 {
height: 488px;
position: relative;
margin-bottom: 50px
}

@media screen and (min-width: 768px) {
.about-community-container-full01,.about-design-container-full01,.top-community-container-full01 {
margin-bottom:125px
}
}

.en-US .about-community-container-full01,.en-US .about-design-container-full01,.en-US .top-community-container-full01 {
height: 620px
}

@media screen and (min-width: 768px) {
.en-US .about-community-container-full01,.en-US .about-design-container-full01,.en-US .top-community-container-full01 {
height:auto
}
}

.about-community-ttl01,.about-design-ttl01,.top-community-ttl01 {
padding-left: 15px;
position: absolute!important;
top: -30px;
left: 0
}

@media screen and (min-width: 768px) {
.about-community-ttl01,.about-design-ttl01,.top-community-ttl01 {
padding-left:34.48276%;
top: -55px;
line-height: 1.2
}
}

.top-community-ttl001 {
position: absolute;
padding-left: 15px;
top: -30px;
left: 0
}

@media screen and (min-width: 768px) {
.top-community-ttl001 {
padding:0;
position: relative;
top: 0;
line-height: 1.2;
width: 600px
}
}

@media screen and (min-width: 768px) {
.about-community-container02,.about-design-container02,.top-community-container02 {
background:#f4f4f4;
padding: 50px 20px;
padding: 96px 176px 110px
}
}

.community-overlay-box01,.top-community-box01 {
background-color: #fff;
-webkit-box-shadow: 3px 3px 5px rgba(0,0,0,.21);
box-shadow: 3px 3px 5px rgba(0,0,0,.21)
}

@media screen and (min-width: 768px) {
.community-overlay-box01,.top-community-box01 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
-ms-flex-direction: row-reverse;
flex-direction: row-reverse;
-ms-flex-wrap: wrap;
flex-wrap: wrap
}
}

.community-overlay-box01+.community-overlay-box01,.community-overlay-box01+.top-community-box01,.top-community-box01+.community-overlay-box01,.top-community-box01+.top-community-box01 {
margin-top: 45px
}

@media screen and (min-width: 768px) {
.community-overlay-box01+.community-overlay-box01,.community-overlay-box01+.top-community-box01,.top-community-box01+.community-overlay-box01,.top-community-box01+.top-community-box01 {
margin-top:30px
}
}

.top-community-txt01 {
line-height: 1.8
}

@media screen and (min-width: 768px) {
.top-community-txt01 {
line-height:2.2;
width: 540px
}
}

.community-overlay-img01,.community-overlay-img0102,.community-overlay-img0103,.top-community-img01,.top-community-img0102,.top-community-img0103 {
min-height: 140px;
width: 100%
}

@media screen and (min-width: 768px) {
.community-overlay-img01,.community-overlay-img0102,.community-overlay-img0103,.top-community-img01,.top-community-img0102,.top-community-img0103 {
height:auto;
width: 34.22619%
}
}

.community-overlay-img0101,.top-community-img0101 {
background-size: cover
}

.community-overlay-img0103,.top-community-img0103 {
width: 100%;
height: 100%
}

.top-community-img0101bg {
width: 100%
}

@media screen and (min-width: 768px) {
.top-community-img0101bg {
height:100%
}
}

.top-community-img0101bg>div {
padding-top: 60%
}

@media screen and (min-width: 768px) {
.top-community-img0101bg>div {
padding-top:0
}
}

.top-community-img0102bg {
width: 100%
}

@media screen and (min-width: 768px) {
.top-community-img0102bg {
height:100%
}
}

.top-community-img0102bg>div {
padding-top: 60%
}

@media screen and (min-width: 768px) {
.top-community-img0102bg>div {
padding-top:0
}
}

.top-community-img0103bg {
width: 100%
}

@media screen and (min-width: 768px) {
.top-community-img0103bg {
height:100%
}
}

.top-community-img0103bg-inner {
width: 100%;
height: 100%
}

.top-community-img0103bg-inner>div {
padding-top: 60%
}

@media screen and (min-width: 768px) {
.top-community-img0103bg-inner>div {
padding-top:0
}
}

.community-overlay-box02,.top-community-box02 {
width: 100%;
padding: 20px 15px 35px
}

@media screen and (min-width: 768px) {
.community-overlay-box02,.top-community-box02 {
width:65.77381%;
padding: 10px 25px;
min-height: 162px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}
}

.top-community-box03 {
width: 100%;
padding: 0 20px 25px;
text-align: center
}

@media screen and (min-width: 768px) {
.top-community-box03 {
padding:70px 20px 25px
}
}

.top-community-box04 {
width: 100%;
padding: 0 20px 50px
}

@media screen and (min-width: 768px) {
.top-community-box04 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
padding: 0 20px 20px
}
}

.top-community-box-LOGO {
width: 100%;
padding: 0 20px 50px
}

@media screen and (min-width: 768px) {
.top-community-box-LOGO {
padding: 0 20px 20px
}
}

.community-overlay-ttl02,.top-community-ttl02 {
font-size: 1.8rem;
line-height: 1.7;
margin-bottom: 15px;
font-weight: 900
}

@media screen and (min-width: 768px) {
.community-overlay-ttl02,.top-community-ttl02 {
font-size:2.1rem;
font-weight: 900;
line-height: 1.4
}
}

.top-community-ttl03 {
/*color: #ff002e;*/
font-weight: 700;
background: #fff;
font-size: 1.8rem;
padding: 7px;
border-bottom: 2px solid #000000;
line-height: 1;
margin-bottom: 25px
}

@media screen and (min-width: 768px) {
.top-community-ttl03 {
font-size:2.4rem;
border-bottom: 4px solid #000000;
display: inline-block;
letter-spacing: .15rem
}
}

.community-overlay-txt02,.top-community-txt02 {
font-size: 1.4rem;
line-height: 2;
font-weight: 400;
letter-spacing: .1rem;
word-break: break-word
}

@media screen and (min-width: 768px) {
.community-overlay-txt02,.top-community-txt02 {
letter-spacing:0;
font-size: 1.2rem;
line-height: 1.9;
font-weight: 700
}
}

.en-US .community-overlay-txt02,.en-US .top-community-txt02 {
line-height: 1.6
}

.top-community-txt03 {
font-size: 1.3rem;
line-height: 2.1;
text-align: left
}

@media screen and (min-width: 768px) {
.top-community-txt03 {
font-size:1.2rem;
line-height: 1.9;
font-weight: 700;
text-align: center
}
}

.en-US .top-community-txt03 {
line-height: 1.6
}

.top-community-ttl04 {
font-size: 1.5rem;
line-height: 1.2;
padding-bottom: 7px
}

@media screen and (min-width: 768px) {
.top-community-ttl04 {
padding:10px 10px 15px
}
}

.top-community-txt04 {
font-size: 1.2rem;
line-height: 1.7;
font-weight: 400;
word-break: break-word
}

@media screen and (min-width: 768px) {
.top-community-txt04 {
padding:0 10px 33px;
font-weight: 300;
line-height: 1.9
}
}

.en-US .top-community-txt04 {
line-height: 1.5
}

.top-community-box05 {
background-color: #fff;
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between
}

@media screen and (min-width: 768px) {
.top-community-box05 {
display:block;
width: 31.25%
}
}

.top-community-box05+.top-community-box05 {
margin-top: 25px
}

@media screen and (min-width: 768px) {
.top-community-box05+.top-community-box05 {
margin-top:0
}
}

.top-community-box06,.top-community-img02 {
width: calc(50% - 7px)
}

@media screen and (min-width: 768px) {
.top-community-box06,.top-community-img02 {
width:100%
}
}

.top-voice {
background-color: #e8e8e8;
padding-bottom: 70px
}

@media screen and (min-width: 768px) {
.top-voice {
padding-bottom:100px
}
}

.top-voice-ttl01 {
position: relative;
top: -29px;
margin-bottom: 40px
}

@media screen and (min-width: 768px) {
.top-voice-ttl01 {
top:-78px;
margin-bottom: 40px;
top: -135px;
margin-bottom: 12px
}
}

.top-voice-txt01,.voice-archive-txt01 {
margin-bottom: 40px;
font-size: 1.8rem;
line-height: 1.7
}

@media screen and (min-width: 768px) {
.top-voice-txt01,.voice-archive-txt01 {
width:550px;
line-height: 2.2;
margin-bottom: 80px;
margin-top: -60px;
margin-bottom: 120px
}
}

@media screen and (min-width: 768px) {
.en-US .top-voice-txt01,.en-US .voice-archive-txt01 {
width:670px
}
}

.common-ttl02 {
color: #000;
font-size: 1.4rem;
padding-bottom: .7rem;
letter-spacing: .1rem;
line-height: 1;
border-bottom: 2px solid #000;
text-align: center;
font-weight: 700;
margin: 0 0 40px
}

@media screen and (min-width: 768px) {
.common-ttl02 {
margin:0 0 40px;
font-weight: 700;
font-size: 1.8rem;
line-height: 1;
padding-bottom: 1.5rem;
border-bottom: 4px solid #000;
margin: 0 40px 40px
}
}

.top-voice-ttl02 {
font-size: 1.8rem
}

@media screen and (min-width: 768px) {
.top-voice-box01,.voice-archive-box01 {
padding:0 40px
}
}

.top-voice-box02,.voice-archive-box02 {
background-color: #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-shadow: 0 3px 6px rgba(0,0,0,.16);
box-shadow: 0 3px 6px rgba(0,0,0,.16)
}

.top-voice-box02+.top-voice-box02,.top-voice-box02+.voice-archive-box02,.voice-archive-box02+.top-voice-box02,.voice-archive-box02+.voice-archive-box02 {
margin-top: 20px
}

@media screen and (min-width: 768px) {
.top-voice-box02+.top-voice-box02,.top-voice-box02+.voice-archive-box02,.voice-archive-box02+.top-voice-box02,.voice-archive-box02+.voice-archive-box02 {
margin-top:40px
}
}

.top-voice-img01,.voice-archive-img01 {
width: 43%
}

@media screen and (min-width: 768px) {
.top-voice-img01,.voice-archive-img01 {
width:320px;
height: 200px
}
}

.top-voice-img01>div,.voice-archive-img01>div {
padding-top: 65%
}

@media screen and (min-width: 768px) {
.top-voice-img01>div,.voice-archive-img01>div {
padding-top:0
}
}

.top-voice-box03,.voice-archive-box03 {
width: 57%;
padding: 10px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column
}

@media screen and (min-width: 768px) {
.top-voice-box03,.voice-archive-box03 {
width:calc(100% - 320px);
height: 200px;
padding: 25px 35px
}
}

.top-voice-box04 {
display: none
}

@media screen and (min-width: 768px) {
.top-voice-box04 {
display:block
}
}

.top-voice-ttl03,.voice-archive-ttl03 {
font-size: 1.2rem;
margin-bottom: 10px;
line-height: 1.5;
font-weight: 700
}

@media screen and (min-width: 768px) {
.top-voice-ttl03,.voice-archive-ttl03 {
font-size:1.8rem;
margin-bottom: 20px;
line-height: 1.8
}
}

.top-voice-txt02,.voice-archive-txt02 {
font-size: 1rem;
line-height: 1.5;
font-weight: 400;
margin-bottom: 10px
}

@media screen and (min-width: 768px) {
.top-voice-txt02,.voice-archive-txt02 {
font-size:1.5rem
}
}

.top-voice-tag,.voice-archive-tag {
font-size: 1rem;
padding: 5px 10px;
display: inline-block;
margin-right: 5px;
border: 1px solid #707070;
color: #707070
}

.top-voice-box05 {
text-align: right;
margin-top: 30px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
-ms-flex-direction: row-reverse;
flex-direction: row-reverse
}

.price {
padding: 70px 0 100px
}

@media screen and (min-width: 768px) {
.price {
padding:120px 0 150px;
padding: 240px 0 210px
}
}

.price-tab {
margin-bottom: 20px
}

@media screen and (min-width: 768px) {
.price-tab {
display:none
}
}

.price-tab-txt01,.price-tab-txt01_om {
height: 50px;
border: 1px solid #707070;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.6rem;
font-weight: 700;
cursor: pointer
}

.price-tab-txt01.-active,.price-tab-txt01_om.-active {
background: #000;
color: #fff
}

.price-tab-txt02 {
font-size: 1.1rem;
line-height: 1;
margin-top: 5px
}

.price-txt01 {
margin-bottom: 60px;
line-height: 1.8
}

@media screen and (min-width: 768px) {
.price-txt01 {
margin-bottom:90px;
line-height: 2.2;
width: 510px
}
}

.price-box01,.price-box01_om {
display: block;
margin-bottom: 15px
}

@media screen and (min-width: 768px) {
.price-box01,.price-box01_om {
margin-bottom:15px;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between
}
}

@media screen and (min-width: 768px) {
.price-box01,.price-box02,.price-box01_om {
display:-webkit-box;
display: -ms-flexbox;
display: flex
}

.price-box02 {
width: calc(20% - 2px);
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
width: 17.1875%;
display: -webkit-box;
display: -ms-flexbox;
display: flex

}
}

@media screen and (max-width: 768px) {
.price-box02.-active {
display: block;
}
}

.price-box02 {
background-size: cover;
background-position: 50%;
}

.price-ttl01 {
margin-bottom: 60px
}

@media screen and (min-width: 768px) {
.price-ttl01 {
margin-bottom:60px
}
}

.price-ttl02 {
height: 50px;
border: 1px solid #707070;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.6rem;
font-weight: 700;
background: #000;
color: #fff;
}

@media screen and (min-width: 768px) {
.price-ttl02 {
font-size:1.6rem;
color: #000;
background-color: rgba(255,255,255,0.3);
line-height: 1.33;
text-align: center;
/*margin-bottom: 13px;*/
padding-top: 10px;
padding-bottom: 10px;
height: 80px;
display: flex;
border: none;
font-size: 1.8rem;
text-shadow: 0 0 6px #fff;
}
}

.price-box03 {
background: rgba(255,255,255,0.4);
border: 1px solid #707070;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
padding: 55px 0;
height: 350px;

}

@media screen and (min-width: 768px) {
.price-box03 {
height:auto;
background: #000;
padding: 30px 20px;
text-align: center;
color: #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
border: none
}
}

.price-box04 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
text-shadow: 0 0 6px #fff;
}
@media screen and (min-width: 768px) {
.price-box04 {
text-shadow: none;
}
}

@media (min-width: 768px) {
.price-operation {
/*margin-top: 130px;*/
margin-top: 70px;
}
}
@media (max-width: 768px) {
.price-operation {
position: absolute;
bottom:30px;
text-align: center;
}
.price-box04-sp {
margin-top: 10px !important;
}
}



.price-tb01, .price-tb02, .price-tb03, .price-tb04, .price-tb05{
background-size: cover;
background-position: 50%;
height:80px;
}
.price-tb01 {
background-image: url(../images/price-tb01.jpg);
}
.price-tb02 {
background-image: url(../images/price-tb02.jpg);
}
.price-tb03 {
background-image: url(../images/price-tb03.jpg);
}
.price-tb04 {
background-image: url(../images/price-tb04.jpg);
}
.price-tb05 {
background-image: url(../images/price-tb05.jpg);
}
@media screen and (min-width: 768px) {
.price-tb05 {
background-size: 100%;
}
}

@media screen and (min-width: 768px) {
.price-box04 {
display:block
}
}

@media screen and (min-width: 768px) {
/*.en-US .price-box04 {
min-height:96px
}*/
.price-box04 {
min-height:96px
}
}

.price-box04+.price-box04 {
margin-top: 30px
}

@media screen and (min-width: 768px) {
.price-box04+.price-box04 {
margin-top:38px
}
}

.price-ttl03 {
/*color: #818181;*/
color: #313131;
font-size: 1.1rem;
margin-right: 20px;
font-weight: 500;
position: relative;
top: 0;
}
.price-ttl03 small {
font-size: 0.8rem;
}

@media screen and (min-width: 768px) {
.price-ttl03 {
color: #818181;
font-size:1.2rem;
line-height: 2;
border-bottom: 1px solid;
margin-bottom: 20px;
margin-right: 0;
top: 0;
}
}
@media screen and (max-width: 768px) {
.price-ttl03 {
text-align: right;
width: calc(50% - 40px);
}
.price-txt02-sp {
width: 50%;
}
.price-ttl03 small {
display: block;
margin-top: 4px;
text-align: right;
}
}

.en-US .price-ttl03 {
/*top: -15px;*/
}

@media screen and (min-width: 768px) {
.en-US .price-ttl03 {
top:0
}
}

.price-ttl04 {
font-size: 1.2rem
}

.price-txt02 {
font-size: 1.9rem
}

@media screen and (min-width: 768px) {
.price-txt02 {
font-size:1.4rem;
font-size: 1.6rem
}
}

.price-txt03 {
font-size: 3.3rem
}

@media screen and (min-width: 768px) {
.price-txt03 {
font-size:2.4rem;
font-size: 2.8rem
}
}

.price-txt04 {
width: 144px
}

.price-txt04,.price-txt05 {
display: inline-block;
font-size: 1.3rem;
line-height: 2.1
}

.price-txt05 {
width: calc(100% - 144px)
}

.price-txt06 {
font-size: 1.8rem
}

.price-box05 {
display: inline-block;
font-size: 1.3rem;
line-height: 2.1
}

@media screen and (min-width: 768px) {
.price-box05 {
width:calc(100% - 144px)
}
}

.en-US .price-box05 {
line-height: 1.6
}

.price-txt07 {
font-size: 1.2rem;
display: block;
margin-top: 7px
}

.price-btn {
display: block;
height: 36px;
width: 176px;
border-radius: 18px;
background: #000;
color: #fff;
text-align: center;
font-size: 1.4rem;
line-height: 33px;
margin-top: 10px;
letter-spacing: .05rem
}

.price-btn span {
margin-right: 6px
}

.en-US .price-btn {
width: 220px
}

.location {
padding-bottom: 90px
}

@media screen and (min-width: 768px) {
.location {
padding-bottom:180px
}
}

.location-ttl01 {
margin-bottom: 57px
}

@media screen and (min-width: 768px) {
.location-ttl01 {
margin-bottom:70px
}
}

.location-txt01 {
margin-bottom: 30px;
line-height: 1.7
}

@media screen and (min-width: 768px) {
.location-txt01 {
margin-bottom:60px;
line-height: 2.2
}
}

.location-box01 {
margin-bottom: 40px
}

@media screen and (min-width: 768px) {
.location-box01 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 95px
}
}

@media screen and (min-width: 768px) {
.location-box01-left {
width:51.5625%;
display: block!important
}
}

@media screen and (min-width: 768px) {
.location-box01-right {
width:48.4375%
}
}

.location-box02 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
margin-bottom: 50px
}

@media screen and (min-width: 768px) {
.location-box02 {
margin-bottom:0;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
margin-right: 5.71429%
}
}

.location-box03 {
width: 32%;
text-align: center
}

.location-txt02 {
font-size: 1.2rem;
line-height: 1.5;
margin-top: 17px;
font-weight: 700
}

@media screen and (min-width: 768px) {
.location-txt02 {
font-size:1rem;
font-size: 1.2rem
}
}

.location-box05 {
height: 350px;
background: #eee;
margin-bottom: 20px
}

.location-box05 iframe {
max-height: 100%!important
}

@media screen and (min-width: 768px) {
.location-box05 {
height:460px;
margin-bottom: 50px
}
}

.location-ttl02 {
font-size: 1.8rem;
line-height: 1.8;
margin-bottom: 10px
}

@media screen and (min-width: 768px) {
.location-ttl02 {
font-size:2.4rem;
line-height: 1.8
}
}

.location-txt03 {
font-size: 1.4rem;
line-height: 2
}

.location-img01 {
height: 60px
}

body {
position: relative
}

.cursor,.follower {
display: none
}

a.location-tel {
font-size: 1.6rem;
line-height: 4
}

span.location-tel-bold {
font-weight: 700
}

.mask-animate {
position: absolute
}

.mask {
width: 100%;
height: 100%;
overflow: hidden
}

.page-template-page-about .common-headding-ttl02 {
text-shadow: 0 0 10px #000
}

.about-community {
padding: 70px 0;
position: relative
}

@media screen and (min-width: 768px) {
.about-community {
padding:100px 0
}
}

.about-headding {
margin-bottom: 10px
}

@media screen and (min-width: 768px) {
.about-headding {
margin-bottom:0
}
}
.about-headding .common-headding-ttl01 {
text-shadow: 0 0 6px #000;
}

.about-community-container-left01 {
background: url(../images/top05@2x.jpg) no-repeat;
background-size: cover
}

.about-community-container01 {
display: block
}

@media screen and (min-width: 768px) {
.about-community-container01 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}
}

@media screen and (min-width: 768px) {
.about-community-container01>div {
width:540px
}
}

@media screen and (min-width: 768px) {
.en-US .about-community-container01>div {
width:520px
}
}

.about-community-container-full01 {
height: auto
}

@media screen and (min-width: 768px) {
.about-community-container-full01 {
height:500px;
margin-bottom: 220px
}
}

.about-community-ttl05 {
position: absolute;
left: 15px;
top: -30px;
line-height: 1.25
}

@media screen and (min-width: 768px) {
.about-community-ttl05 {
position:relative;
margin-bottom: 40px;
top: 0;
left: 0;
width: 600px
}
}

.about-community-container-left01 {
background: none
}

.about-community-container-left01>div {
width: 100%;
left: 0
}

.about-community-txt01 {
margin-bottom: 20px
}

.about-community-btn01 {
width: 110px;
height: 30px;
border-radius: 15px;
border: 1px solid #000;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.3rem;
color: #000;
text-decoration: none
}

.about-support {
position: relative;
padding: 70px 0 20px;
margin-top: -70px
}

@media screen and (min-width: 768px) {
.about-support {
margin-top:-100px;
padding-top: 100px;
padding-bottom: 0
}
}

.about-support-container-right01 {
top: 0;
height: 100%;
background: none;
position: absolute
}

@media screen and (min-width: 768px) {
.about-support-container-right01 {
position:absolute
}
}

.about-support-container01 {
position: relative;
z-index: 1;
height: 100%
}

.about-support-container-full01 {
position: relative;
margin-bottom: 60px
}

@media screen and (min-width: 768px) {
.about-support-container-full01 {
margin-bottom:100px
}
}

.about-support-ttl01 {
position: absolute;
right: 15px;
top: -30px
}

@media screen and (min-width: 768px) {
.about-support-ttl01 {
padding-top:40px;
position: relative;
right: 0;
top: 0;
margin-bottom: 50px;
margin-left: calc(50% + 20px)
}
}

.about-support-txt01,.about-support-txt03 {
margin-bottom: 40px;
padding-top: 0
}

.about-support-box07 {
padding-top: 260px
}

@media screen and (min-width: 768px) {
.about-support-box07 {
padding-top:0;
padding-left: calc(50% + 30px)
}
}

.about-support-txt02 {
font-size: 1.3rem
}

.about-support-txt03 {
font-family: Helvetica,Helvetica Neue,Arial,Verdana,Roboto,"\6E38\30B4\30B7\30C3\30AF",Yu Gothic,"\6E38\30B4\30B7\30C3\30AF\4F53",YuGothic,"\30D2\30E9\30AE\30CE\89D2\30B4   Pro W3",Hiragino Kaku Gothic Pro,Meiryo UI,"\30E1\30A4\30EA\30AA",Meiryo,"\FF2D\FF33   \FF30\30B4\30B7\30C3\30AF",MS PGothic,sans-serif;
font-size: 1.3rem;
font-weight: 400;
padding-top: 0;
margin-top: 30px;
text-align: center
}

@media screen and (min-width: 768px) {
.about-support-txt03 {
padding-left:calc(50% + 30px);
text-align: left;
margin-left: 0;
font-size: 1.8rem;
margin-top: 40px;
position: relative;
left: 25px
}
}

.about-support-container-right01 {
width: 75%;
height: 240px
}

@media screen and (min-width: 768px) {
.about-support-container-right01 {
width:calc(50% - 16px);
height: 500px
}
}

.about-support-container-right01>div {
/*  background: url(../images/about01@2x.jpg) no-repeat;
background-size: cover;*/
width: 100%;
height: 100%
}

.about-support-box01 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between
}

@media screen and (min-width: 768px) {
.about-support-box01 {
padding-left:calc(50% + 20px);
padding-left: calc(50% + 40px);
width: 95%
}
}

.about-support-box01+.about-support-box01 {
margin-top: 30px
}

.about-support-box02 {
width: 25%;
text-align: center
}

.about-support-box03 {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center
}

.about-support-box03,.about-support-img01 {
text-align: center;
display: -webkit-box;
display: -ms-flexbox;
display: flex
}

.about-support-img01 {
width: 62px;
height: 62px;
border-radius: 50%;
border: 2px solid #000;
margin-bottom: 10px;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}

@media screen and (min-width: 768px) {
.about-support-img01 {
width:72px;
height: 72px
}
}

.about-support-ttl02 {
font-size: 1.8rem;
line-height: 1.3;
margin-bottom: 20px;
letter-spacing: .1rem;
font-weight: 700
}

@media screen and (min-width: 768px) {
.about-support-ttl02 {
padding-left:50px
}
}

.about-support-box04 {
padding: 20px 20px 30px;
border: 1px solid #707070
}

@media screen and (min-width: 768px) {
.about-support-box04 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
padding: 20px 50px 30px
}
}

@media screen and (min-width: 768px) {
.about-support-box04>li:first-child {
margin-bottom:34px
}
}

@media screen and (min-width: 768px) {
.about-support-box05 {
width:calc(33.333% - 21px)
}
}

.about-support-box05+.about-support-box05 {
margin-top: 30px
}

@media screen and (min-width: 768px) {
.about-support-box05+.about-support-box05 {
margin-top:0
}
}

.about-support-ttl03 {
font-size: 1.4rem;
line-height: 2;
margin-bottom: 17px;
font-weight: 700
}

.about-support-img02 {
background: #e8e8e8;
width: 100%;
height: 80px
}

.about-support-img02+.about-support-img02 {
margin-top: 10px
}

.about-support-container02 {
margin-bottom: 90px
}

@media screen and (min-width: 768px) {
.about-support-container02 {
margin-bottom:280px
}
}

.about-design {
padding: 70px 0 110px;
position: relative
}

@media screen and (min-width: 768px) {
.about-design {
padding:100px 0 280px
}
}

.about-design-container-left01 {
background: none
}

.about-design-container-left01>div {
/*background: url(../images/about-design.jpg) no-repeat;
background-size: cover*/
}

@media screen and (min-width: 768px) {
.about-design-container-left01 {
height:500px
}
}

.about-design-container01 {
display: block
}

@media screen and (min-width: 768px) {
.about-design-container01 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}
}

@media screen and (min-width: 768px) {
.about-design-container01>div.revealItem {
width:470px
}
}

@media screen and (min-width: 768px) {
.en-US .about-design-container01>div.revealItem {
width:520px
}
}

.about-design-container-full01 {
height: auto
}

@media screen and (min-width: 768px) {
.about-design-container-full01 {
margin-bottom:110px
}
}

.about-design-ttl05 {
position: absolute;
left: 15px;
top: -30px;
line-height: 1.25
}

@media screen and (min-width: 768px) {
.about-design-ttl05 {
position:relative;
margin-bottom: 33px;
width: 370px;
left: 0;
top: 0
}
}

.about-design-txt01 {
margin-bottom: 20px;
letter-spacing: -.05rem
}

@media screen and (min-width: 768px) {
.about-design-txt01 {
letter-spacing:0;
width: 470px
}
}

@media screen and (min-width: 768px) {
.en-US .about-design-txt01 {
width:520px
}
}

.about-design-btn01 {
width: 110px;
height: 30px;
border-radius: 15px;
border: 1px solid #000;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.3rem;
color: #000;
text-decoration: none
}

.about-design-box01 {
margin-bottom: -7px
}

@media screen and (min-width: 768px) {
.about-design-box01 {
display:-webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-bottom: 0
}
}

.about-design-img01 {
width: 100%;
margin-bottom: 7px
}

.about-design-img01 img {
width: 100%
}

@media screen and (min-width: 768px) {
.about-design-img01 {
width:calc(50% - 5px);
margin-bottom: 10px
}
}

.about-design-img02 {
width: 100%;
margin-bottom: 7px
}

.about-design-img02 img {
width: 100%
}

@media screen and (min-width: 768px) {
.about-design-img02 {
width:calc(33.333% - 7px)
}
}

.about-design-img03 {
width: 75%;
background: url(../images/sp-about01@2x.jpg) no-repeat;
background-size: cover;
height: 240px;
position: absolute;
right: 0;
top: 30px
}

@media screen and (min-width: 768px) {
.about-design-img03 {
display:none
}
}

.en-US .about-community-container-full01 {
height: 750px
}

@media screen and (min-width: 768px) {
.en-US .about-community-container-full01 {
height:auto
}
}

.en-US .about-design-container-full01 {
height: 780px
}

@media screen and (min-width: 768px) {
.en-US .about-design-container-full01 {
height:auto
}
}

.about-location {
position: relative;
padding: 70px 0 0;
margin-top: -70px
}

@media screen and (min-width: 768px) {
.about-location {
padding-top: 0px;
margin-top: -100px;
}
}

.about-location-container-right01 {
top: 0;
height: 100%
}

.about-location-container01 {
position: relative;
z-index: 1;
height: 100%
}

.about-location-container-full01 {
position: relative;
margin-bottom: 60px
}

@media screen and (min-width: 768px) {
.about-location-container-full01 {
margin-bottom:175px
}
}

.about-location-ttl01 {
position: absolute;
right: 15px;
top: -30px
}

@media screen and (min-width: 768px) {
.about-location-ttl01 {
right:auto;
position: relative;
padding-top: 30px;
top: 0;
margin-bottom: 30px;
margin-left: calc(50% + 40px)
}
}

@media screen and (min-width: 768px) {
.top-about-location .about-location-ttl01 {
margin-left:0
}
}

.about-location-txt01 {
padding-top: 0;
margin-bottom: 40px
}

.about-location-box07 {
padding-top: 260px
}

@media screen and (min-width: 768px) {
.about-location-box07 {
padding-top:0;
padding-left: calc(50% + 40px)
}
}

@media screen and (min-width: 768px) {
.top-about-location .about-location-box07 {
padding-left:0
}
}

.about-location-container-right01 {
width: 75%;
background: none;
height: 240px;
position: absolute
}

@media screen and (min-width: 768px) {
.about-location-container-right01 {
width:50%;
height: 500px;
position: absolute
}
}

.about-location-container-right01>div {
/*background: url(../images/about08@2x.jpg) no-repeat;*/
/*background-size: cover;*/
width: 100%;
height: 100%
}

.about-location-box01 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 40px;
-ms-flex-wrap: wrap;
flex-wrap: wrap
}

@media screen and (min-width: 768px) {
.about-location-box01 {
padding-left:calc(50% + 40px);
width: 95%;
/*margin-bottom: 100px;*/
-ms-flex-wrap: nowrap;
flex-wrap: nowrap
}
}

.about-location-box01+.about-location-box01 {
margin-top: 30px
}

.about-location-box02 {
width: 25%;
text-align: center
}

.about-location-box03 {
text-align: center;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-bottom: 30px;
width: 50%
}

@media screen and (min-width: 768px) {
.about-location-box03 {
width:33%
}
}

.about-location-img01 {
width: 72px;
height: 72px;
border-radius: 50%;
border: 2px solid #000;
margin-bottom: 10px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
text-align: center
}

@media screen and (min-width: 768px) {
.top-about-location .about-location-box01,.top-about-location .about-location-ttl01,.top-about-location .about-location-txt01 {
padding-left:0;
width: calc(50% - 40px)
}
}

.top-about-location .about-location-ttl01 {
right: auto;
left: 15px
}

@media screen and (min-width: 768px) {
.top-about-location .about-location-ttl01 {
left:auto;
right: auto
}
}

.plan-ttl01 {
color: #000;
font-size: 2.4rem;
padding-bottom: 2rem;
letter-spacing: .1rem;
line-height: 1;
border-bottom: 3px solid #000;
margin-bottom: 25px;
text-align: center
}

@media screen and (min-width: 768px) {
.plan-ttl01 {
border-bottom:4px solid #000;
margin-bottom: 58px
}
}

.plan-txt01 {
font-size: 1.6rem;
line-height: 2;
text-align: center;
margin-bottom: 25px
}

@media screen and (min-width: 768px) {
.plan-txt01 {
font-size:1.8rem;
line-height: 2.25;
margin-bottom: 45px
}
}

.plan-price {
padding: 70px 0 150px
}

@media screen and (min-width: 768px) {
.plan-price {
padding:150px 0 120px
}
}

.plan-service {
margin-top: -70px;
padding-top: 70px;
padding-bottom: 10px
}

@media screen and (min-width: 768px) {
.plan-service {
margin-top:-100px;
padding-top: 100px;
padding-bottom: 20px
}
}

.plan-service-bg {
padding: 50px 0 35px;
background: url(../images/plan01@2x.jpg) no-repeat 50%;
background-size: cover
}

@media screen and (min-width: 768px) {
.plan-service-bg {
padding:90px 0 160px
}
}

@media screen and (min-width: 768px) {
.plan-service-box01 {
-webkit-box-pack:justify;
-ms-flex-pack: justify;
justify-content: space-between
}
}

@media screen and (min-width: 768px) {
.plan-service-box01,.plan-service-box02 {
display:-webkit-box;
display: -ms-flexbox;
display: flex
}

.plan-service-box02 {
width: 48.4375%;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column
}
}

.plan-service-box02+.plan-service-box02 {
margin-top: 40px
}

@media screen and (min-width: 768px) {
.plan-service-box02+.plan-service-box02 {
margin-top:0
}
}

.plan-service-ttl01 {
margin-bottom: 25px
}

@media screen and (min-width: 768px) {
.plan-service-ttl01 {
margin-bottom:68px
}
}

.plan-service-ttl02 {
background: #000;
font-size: 1.8rem;
color: #fff;
height: 4.3rem;
line-height: 4.3rem;
text-align: center
}

.plan-service-img01 {
height: 100px;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}

.plan-service-box03,.plan-service-img01 {
display: -webkit-box;
display: -ms-flexbox;
display: flex
}

.plan-service-box03 {
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
padding: 30px 10px 20px;
background: #fff;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
/*-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1*/
align-items: stretch;
}

@media screen and (min-width: 768px) {
.plan-service-box03 {
padding:50px 10px 25px
}
}

.plan-service-box04 {
width: 50%;
/*height: 175px*/
}

@media screen and (min-width: 768px) {
.plan-service-box04 {
/*width:33%;*/
width:50%
}
}

.en-US .plan-service-box04 {
/*height: 195px*/
}

.plan-service-box05 {
text-align: center
}

.plan-service-box06 {
/*height: 160px*/
}

@media screen and (min-width: 768px) {
.plan-service-box06 {
/*height:175px*/
}
}

.plan-service-txt02 {
font-size: 1.3rem;
line-height: 1.8
}

.plan-service-txt03 {
font-size: 1rem;
line-height: 1.7;
margin-top: 5px
}

.plan-service-txt04 {
line-height: 1.6
}

.plan-service-txt04 div {
font-size: 1rem;
line-height: 1.3
}

.plan-service-txt04 div+div {
margin-top: 5px
}

.plan-service-txt04 {
font-size: 1.3rem;
line-height: 1.3;
margin-top: 10px
}

.plan-service-txt05 {
font-size: 1.3rem;
line-height: 1.3;
margin-top: 5px
}

.plan-service-txt06 {
font-size: 1.3rem;
margin-bottom:4px;
}

.plan-service-txt10 {
font-size: 0.95rem;
line-height: 1;
margin-top:5px;
}

.plan-service-txt11 {
font-size: 0.9rem;
line-height: 1;
}

.plan-floormap {
padding: 100px 0 120px
}

@media screen and (min-width: 768px) {
.plan-floormap {
padding:130px 0 160px
}
}

.plan-floormap-img01 {
text-align: center;
margin-bottom: 40px
}

.plan-floormap-img02 {
width: 100%;
height: 497px;
background: #000
}

.plan-floormap-txt01 {
font-size: 1.6rem;
line-height: 2;
text-align: center;
margin-bottom: 25px;
letter-spacing: -.05rem
}

@media screen and (min-width: 768px) {
.plan-floormap-txt01 {
letter-spacing:0;
font-size: 1.8rem;
line-height: 2;
margin-bottom: 50px
}
}

@media screen and (min-width: 768px) {
.plan-floormap-ttl01 {
margin-bottom:85px
}
}

.community-feature {
padding: 80px 0 100px;
text-align: center
}

@media screen and (min-width: 768px) {
.community-feature {
padding:95px 0 80px
}
}

.community-feature-ttl01 {
font-size: 1.8rem;
line-height: 2;
margin-bottom: 30px;
letter-spacing: .2rem;
font-weight: 400;
font-weight: 900;
letter-spacing: -.05rem
}

@media screen and (min-width: 768px) {
.community-feature-ttl01 {
font-size:2.4rem;
line-height: 2;
margin-bottom: 15px;
font-weight: 700
}
}

.community-feature-txt01 {
font-size: 1.4rem;
line-height: 2;
margin-bottom: 28px;
letter-spacing: .1rem
}

.en-US .community-feature-txt01 {
line-height: 1.6
}

.community-feature-txt02 {
font-size: 1.4rem;
line-height: 2;
margin-bottom: 30px;
letter-spacing: .1rem
}

.en-US .community-feature-txt02 {
line-height: 1.6
}

.community-feature-btn {
width: 274px;
font-size: 1.5rem;
height: 46px;
line-height: 46px;
background: #000;
color: #fff;
margin: 0 auto;
cursor: pointer
}

.community-archive,.tips-archive {
padding-bottom: 257px
}

.community-archive-filter,.tips-archive-filter {
font-size: 1.5rem;
margin-left: 18px;
margin-right: 18px;
margin-top: 10px;
line-height: 1.8;
}

.community-archive-filter-year img,.tips-archive-filter-year img {
margin-left: 10px;
position: relative;
top: -1px
}

.community-archive-box01,.tips-archive-box01 {
margin-bottom: 30px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
flex-wrap: wrap;
justify-content: center;
place-content: center;
}
/*
@media screen and (min-width: 768px) {
.community-archive-box01,.tips-archive-box01 {
-webkit-box-pack:start;
-ms-flex-pack: start;
justify-content: flex-start
}
}*/

.community-archive-dropdown {
width: calc(50% - 5px);
height: 30px;
line-height: 30px;
background: #f4f4f4;
font-size: 1.4rem;
display: inline-block;
border-radius: 0;
position: relative
}

@media screen and (min-width: 768px) {
.community-archive-dropdown {
background:#fff;
position: relative;
top: -5px;
width: 120px;
font-size: 1.5rem;
margin-top: 13px;
}
}

.community-archive-dropdown:after {
content: "";
display: block;
width: 8px;
height: 8px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
border-bottom: 1px solid;
border-right: 1px solid;
position: absolute;
right: 20px;
top: 10px
}

.community-archive-dropdown select {
width: 100%;
height: 30px;
line-height: 30px;
padding-left: 8px
}

@media screen and (min-width: 768px) {
.community-archive-dropdown select {
background:#fff;
font-size: 1.5rem
}
}

.community-archive-box02,.tips-archive-box02 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
padding-bottom: 40px
}

.community-archive-box02:after,.tips-archive-box02:after {
content: "";
width: 33.33333%;
height: 0
}

.community-archive-box03,.tips-archive-box03 {
margin-bottom: 50px;
width: 100%
}

@media screen and (min-width: 768px) {
.community-archive-box03,.tips-archive-box03 {
width:calc(33.333% - 22px)
}
}

.community-archive-img01,.tips-archive-img01 {
padding-top: 65%;
background: #eee;
margin-bottom: 20px
}

@media screen and (min-width: 768px) {
.community-archive-img01,.tips-archive-img01 {
height:200px;
padding-top: 0
}
}

.community-archive-txt01,.tips-archive-txt01 {
font-size: 1.5rem;
width: 144px;
height: 34px;
line-height: 34px;
background: #000;
color: #fff;
text-align: center;
margin-bottom: 17px
}

.community-archive-tag {
font-size: 1rem;
width: 95px;
line-height: 25px;
height: 25px;
text-align: center;
border: 1px solid;
display: inline-block;
margin-right: 10px;
color: #000;
margin-bottom: 7px
}

@media screen and (min-width: 768px) {
.community-archive-tag {
font-size:1.2rem
}
}

.community-archive-ttl03,.tips-archive-ttl03 {
font-size: 1.8rem;
line-height: 1.7;
margin-bottom: 12px
}

.community-archive-txt02,.tips-archive-txt02 {
font-size: 1.5rem;
line-height: 2;
margin-bottom: 10px;
font-weight: 700
}

@media screen and (min-width: 768px) {
.community-archive-txt02,.tips-archive-txt02 {
font-weight:700
}
}

.community-archive-txt03 {
color: #a5a5a5;
font-size: 1.2rem
}

.community-archive-box04,.tips-archive-box04,.voice-archive-box05 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}

.community-archive-pager,.tips-archive-pager,.wp-pagenavi .current,.wp-pagenavi .nextpostslink,.wp-pagenavi .page,.wp-pagenavi .previouspostslink {
width: 45px;
height: 45px;
border-radius: 50%;
border: 1px solid #333;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 1.7rem
}

.-current.tips-archive-pager,.community-archive-pager.-current,.wp-pagenavi .-current.current,.wp-pagenavi .-current.nextpostslink,.wp-pagenavi .-current.page,.wp-pagenavi .-current.previouspostslink {
border: 1px solid #c7c7c7;
color: #c7c7c7
}

.community-archive-pager+.community-archive-pager,.community-archive-pager+.tips-archive-pager,.tips-archive-pager+.community-archive-pager,.tips-archive-pager+.tips-archive-pager,.wp-pagenavi .community-archive-pager+.current,.wp-pagenavi .community-archive-pager+.nextpostslink,.wp-pagenavi .community-archive-pager+.page,.wp-pagenavi .community-archive-pager+.previouspostslink,.wp-pagenavi .current+.community-archive-pager,.wp-pagenavi .current+.current,.wp-pagenavi .current+.nextpostslink,.wp-pagenavi .current+.page,.wp-pagenavi .current+.previouspostslink,.wp-pagenavi .current+.tips-archive-pager,.wp-pagenavi .nextpostslink+.community-archive-pager,.wp-pagenavi .nextpostslink+.current,.wp-pagenavi .nextpostslink+.nextpostslink,.wp-pagenavi .nextpostslink+.page,.wp-pagenavi .nextpostslink+.previouspostslink,.wp-pagenavi .nextpostslink+.tips-archive-pager,.wp-pagenavi .page+.community-archive-pager,.wp-pagenavi .page+.current,.wp-pagenavi .page+.nextpostslink,.wp-pagenavi .page+.page,.wp-pagenavi .page+.previouspostslink,.wp-pagenavi .page+.tips-archive-pager,.wp-pagenavi .previouspostslink+.community-archive-pager,.wp-pagenavi .previouspostslink+.current,.wp-pagenavi .previouspostslink+.nextpostslink,.wp-pagenavi .previouspostslink+.page,.wp-pagenavi .previouspostslink+.previouspostslink,.wp-pagenavi .previouspostslink+.tips-archive-pager,.wp-pagenavi .tips-archive-pager+.current,.wp-pagenavi .tips-archive-pager+.nextpostslink,.wp-pagenavi .tips-archive-pager+.page,.wp-pagenavi .tips-archive-pager+.previouspostslink {
margin-left: 7px
}

.community-archive-pager+.community-archive-pager-next,.community-archive-pager+.tips-archive-pager-next,.tips-archive-pager+.community-archive-pager-next,.tips-archive-pager+.tips-archive-pager-next,.wp-pagenavi .current+.community-archive-pager-next,.wp-pagenavi .current+.tips-archive-pager-next,.wp-pagenavi .nextpostslink+.community-archive-pager-next,.wp-pagenavi .nextpostslink+.tips-archive-pager-next,.wp-pagenavi .page+.community-archive-pager-next,.wp-pagenavi .page+.tips-archive-pager-next,.wp-pagenavi .previouspostslink+.community-archive-pager-next,.wp-pagenavi .previouspostslink+.tips-archive-pager-next {
margin-left: 30px
}

.community-overlay {
position: fixed;
z-index: 2;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: scroll;
background: rgba(0,0,0,.6);
padding: 110px 15px 50px;
text-align: left;
display: none
}

@media screen and (min-width: 768px) {
.community-overlay {
padding:216px 0 160px
}
}

.community-overlay.-active {
display: block
}

.community-overlay-under {
display: block;
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
z-index: 0;
cursor: pointer
}

.community-overlay-container01 {
background: #fff;
padding: 85px 20px;
position: relative;
z-index: 1
}

@media screen and (min-width: 768px) {
.community-overlay-container01 {
padding:100px 0;
max-width: 1024px;
margin: 0 auto
}
}

@media screen and (min-width: 768px) {
.community-overlay-container01>.community-overlay-box01,.community-overlay-container01>.top-community-box01 {
width:672px;
margin-left: auto;
margin-right: auto
}
}

.community-overlay-box01 {
-webkit-box-shadow: none;
box-shadow: none
}

@media screen and (min-width: 768px) {
.community-overlay-box01 {
-webkit-box-shadow:3px 3px 5px rgba(0,0,0,.21);
box-shadow: 3px 3px 5px rgba(0,0,0,.21)
}
}

.community-overlay-box02 {
padding: 15px 0 0
}

@media screen and (min-width: 768px) {
.community-overlay-box02 {
padding:28px 25px
}
}

.community-overlay-box03 {
border: 1px solid #707070;
padding: 30px 20px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin: 30px 0
}

@media screen and (min-width: 768px) {
.community-overlay-box03 {
padding:43px 60px
}
}

.community-overlay-box04 {
width: calc(50% - 7px);
text-align: center
}

@media screen and (min-width: 768px) {
.community-overlay-box04 {
width:calc(25% - 5px)
}
}

.community-overlay-ttl03 {
background: #f4f4f4;
height: 37px;
font-size: 1.2rem;
line-height: 37px;
text-align: center;
margin-bottom: 20px
}

.community-overlay-img02 {
height: 90px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center
}

.community-overlay-txt03 {
font-size: 1.2rem;
line-height: 2.5
}

.community-overlay-close {
position: absolute;
right: 20px;
top: 20px;
width: 20px;
cursor: pointer
}

@media screen and (min-width: 768px) {
.community-overlay-close {
right:30px;
top: 30px
}
}

.voice-archive {
padding-top: 80px
}

@media screen and (min-width: 768px) {
.voice-archive {
padding:120px 0 0
}
}

.voice-archive02 {
padding-bottom: 70px
}

@media screen and (min-width: 768px) {
.voice-archive02 {
padding:0 0 120px
}
}

.voice-archive-box05 {
padding-bottom: 100px
}

.voice-archive-box01 {
padding: 0 0 50px
}

@media screen and (min-width: 768px) {
.voice-archive-box01 {
padding:0 0 150px
}
}

.voice-archive-box02 {
-webkit-box-shadow: none;
box-shadow: none
}

.voice-archive-box03 {
padding-top: 0;
padding-bottom: 0
}

@media screen and (min-width: 768px) {
.voice-archive-box03 {
-webkit-box-pack:center;
-ms-flex-pack: center;
justify-content: center;
padding: 10px 15px
}
}

.voice-archive-ttl03,.voice-archive-txt02 {
margin-bottom: 15px
}

.voice-archive-box02+.voice-archive-box02 {
margin-top: 30px
}

@media screen and (min-width: 768px) {
.voice-archive-box02+.voice-archive-box02 {
margin-top:70px
}
}

/*Partner */
.partner-container {
display: flex;
flex-flow: row;
width: 50%;
min-width: 600px;
text-align:center;
}
@media (max-width: 768px) {
.partner-container {
flex-flow: column;
}
}


.partner-feature-btn {
display: inline-block;
width: 274px;
font-size: 1.5rem;
height: 46px;
line-height: 46px;
margin-bottom: 15px;
/*  background: #000;
color: #fff;*/
text-align:center;
margin: 0 auto;
cursor: pointer
color: black;
background-color: white;
border: solid 2px black;
}

.partner-feature-btn.unselected {
background-color: gray;
}
.partner-feature-btn.selected {
background-color: black;
pointer-events: none;
cursor: normal;
font-weight: bold;
}

.partner-feature-btn-alt {
display: inline-block;
width: 274px;
font-size: 1.5rem;
height: 46px;
line-height: 46px;
margin-bottom: 15px;
background-color:white;
color:black;
border: 2px solid #000;
text-align:center;
margin: 0 auto;
cursor: pointer;
}
.partner-feature-btn-alt.selected {
color:white;
background-color: black;
pointer-events: none;
cursor: normal;
font-weight: bold;
}

.partner-hr {
width: 80%;
min-width: 300px;
max-width: 620px;
margin: auto;
margin-top: 30px;
}
.partner-archive {
margin-bottom: 75px;
}

.partner-feature-ttl01 {
border-radius: 25px;
}

.partner-feature {
padding: 50px 0 30px;
text-align: center
}

.partner-popup-window {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.7);
z-index:99999;

opacity:0;
pointer-events: none;
transition: opacity 0.4s;
}

.partner-popup-window.visible {
opacity:1;
pointer-events: all;
}

.partner-popup-container {
position: absolute;
background-color: white;
padding: 50px 50px;
width: 80vw;
top: 450px;
left: 50%;
transform: translate(-50%, -50%);
cursor: auto;
}

@media screen and (max-width: 768px) {
.partner-popup-container {
position: fixed;
/*margin-top: 50vh  !important;*/
padding: 15px 15px 80px 15px;
width: 90vw;
}

}

.partner-popup-company-container {
position:relative;
display:inline-block;
height: 200px;
width: 300px;
margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
.partner-popup-company-container {
margin-bottom: 5px;
width: 100%;
}
}

.partner-popup-title {
position: absolute;
/* bottom: 0; */
margin-top: 8px;
font-size: 16px;
font-weight: 500;
width: 100%;
}

.partner-popup-img {
height: 200px;
width: 100%;
}

@media (max-width: 768px){
.partner-popup-img {
background-size: contain;
max-height: 180px;
/*width: 80vw;*/
}
}

.partner-popup-description {
display: inline-block;
padding: 8px 0 0 40px;
font-size: 16px;
vertical-align: top;
width: calc(100% - 310px);
}

@media (max-width: 768px){
.partner-popup-description {
width: 100%;
padding: 0px 0px 10px 0px;
}
.partner-popup-close {
bottom: 20px !important; 
}
}

.partner-popup-url{
font-size: 16px;
line-height: 1.2;
color: #2247dd;
}

@media (max-width: 768px){
.partner-popup-url{
width: 100%;
}
}

.partner-popup-close {
position:absolute;
bottom: 30px;
right: 30px;
font-size: 16px;
color: white;
background-color: black;
border-radius:8px;
padding: 14px 26px;
cursor: pointer;
}

.partner-archive-container {
position:relative;
padding-top: 0;
height:200px;
cursor: pointer;

}
.partner-tooltip {
position:absolute;
top:50%;
left:50%;
opacity:0;
font-size:15px;
text-align:center;
border-radius: 8px;
padding: 4px 12px;
width: 200px;
color: white;
background-color: black;
cursor: pointer;
pointer-events:none;
transform: translateX(-50%);
transition: opacity 0.4s;
}

.partner-tooltip-container:hover .partner-tooltip {
cursor: pointer;
opacity:0.9;

}

@media screen and (min-width: 768px) {
.partner-feature {
padding:50px 0 30px
}
}

@media screen and (max-width: 768px) {
.partner-container {
min-width: auto;
width: auto;
}
.partner-archive-container {
padding-top: 65%;
background: #eee;
margin-bottom: 20px;
}
}










/*tips*/
.tips-archive {
padding: 80px 0 70px
}

@media screen and (min-width: 768px) {
.tips-archive {
padding:120px 0 200px
}
}

.tips-archive-txt01 {
color: #000;
background: #fff;
font-weight: 400;
font-size: 1rem;
height: 25px;
width: 100px;
line-height: 25px;
border: 1px solid;
text-align: center
}

.tips-archive-box03 {
width: 100%
}

@media screen and (min-width: 768px) {
.tips-archive-box03 {
width:calc(33.333% - 22px)
}
}

.tips-archive-txt02 {
font-size: 1.2rem;
line-height: 1;
margin-top: 20px;
font-weight: 400
}

.tips-archive-date {
font-size: 1.5rem;
line-height: 2;
margin-bottom: 10px;
font-weight: 700
}

.tips-archive-ttl03 {
font-size: 1.8rem;
font-weight: 400;
line-height: 1.65;
min-height: 0;
font-weight: 700
}

.faq-archive {
padding: 250px 0 244px
}

.faq-archive-container {
max-width: 702px
}

.faq-archive-ttl01 {
font-size: 3rem;
margin-bottom: 45px;
padding-bottom: 5px;
border-bottom: 3px solid
}

.faq-archive-ttl01 span {
font-size: 1.8rem;
margin-left: 15px
}

.faq-archive-txt01 {
font-size: 1.5rem;
line-height: 2;
margin-bottom: 60px;
font-weight: 400
}

.en-US .faq-archive-txt01 {
line-height: 1.6
}

.faq-archive-box01 a {
color: darkblue;
text-decoration: underline;
}
.faq-archive-box02+.faq-archive-box02 {
margin-top: 60px
}

.faq-archive-ttl02 {
font-size: 1.8rem;
line-height: 1.7;
margin-bottom: 20px
}

.faq-archive-box03 {
font-size: 1.4rem;
line-height: 2
}

.faq-archive-question {
border-bottom: 1px solid #000;
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
cursor: pointer;
padding: 5px 25px 5px 0;
font-weight: 700
}

.faq-archive-question:after {
content: "";
display: block;
width: 9px;
height: 16px;
background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4LjM4MyIgaGVpZ2h0PSIxNSI+PGRlZnM+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDguMzgzdjE1SDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PGcgZGF0YS1uYW1lPSLjgrPjg7Pjg53jg7zjg43jg7Pjg4ggMiDigJMgMTAiIGNsaXAtcGF0aD0idXJsKCNhKSI+PHBhdGggZGF0YS1uYW1lPSLjg5HjgrkgNTk2IiBkPSJNMS4wMDEgMWw2LjM4IDYuMzgtNi4zOCA2LjM4IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9nPjwvc3ZnPg==) no-repeat 50%;
position: absolute;
right: 10px;
top: 10px
}

.faq-archive-answer-num,.faq-archive-question-num {
margin-right: 15px
}

.faq-archive-answer {
overflow: hidden;
margin-bottom: 0;
-webkit-transition: height .25s ease;
transition: height .25s ease;
padding: 20px 0 30px
}

.faq-archive-box04.-active {
display: block
}

.faq-archive-answer {
display: none
}

.faq-archive-question.-active:after {
-webkit-transform: rotate(90deg);
transform: rotate(90deg)
}

.privacy-page {
padding: 180px 0 150px
}

@media screen and (min-width: 768px) {
.privacy-page {
padding:246px 0 170px
}
}

.privacy-container01 {
max-width: 702px
}

.privacy-ttl01 {
font-size: 2rem;
font-weight: 700;
margin-bottom: 70px
}

@media screen and (min-width: 768px) {
.privacy-ttl01 {
font-size:3rem;
margin-bottom: 80px
}
}

.privacy-box01 {
font-size: 1.4rem;
line-height: 2;
margin-bottom: 60px;
word-break: break-word
}

@media screen and (min-width: 768px) {
.privacy-box01 {
margin-bottom:67px
}
}

.privacy-box03 {
font-size: 1.4rem;
line-height: 2
}

.privacy-box02+.privacy-box02 {
margin-top: 60px
}

@media screen and (min-width: 768px) {
.privacy-box02+.privacy-box02 {
margin-top:75px
}
}

.privacy-box03+.privacy-box03 {
margin-top: 25px
}

.privacy-list01 {
counter-reset: number 0
}

.privacy-item01+.privacy-item01 {
margin-top: 50px
}

.privacy-item01 {
list-style: none;
position: relative;
font-size: 1.4rem;
line-height: 2
}

.privacy-ttl02 {
font-size: 1.8rem;
line-height: 1.5;
margin-bottom: 40px
}

@media screen and (min-width: 768px) {
.privacy-ttl02 {
margin-bottom:50px
}
}

.privacy-ttl03 {
font-size: 1.4rem;
line-height: 2;
font-weight: 400;
margin-bottom: 25px
}

@media screen and (min-width: 768px) {
.privacy-ttl03 {
margin-bottom:0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start
}
}

.privacy-list02 {
counter-reset: number 0
}

.privacy-item02 {
list-style: none;
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
font-size: 1.4rem;
line-height: 2
}

.privacy-item02:before {
counter-increment: number 1;
content: counter(number,katakana);
margin-left: 1.4rem;
margin-right: 1.4rem
}

.privacy-indent {
text-indent: 1em
}

.en-US .privacy-item02:before {
counter-increment: number 1;
content: counter(number,upper-alpha);
margin-left: .7rem;
margin-right: .7rem
}

.en-US .privacy-ttl03>span:first-child {
margin-right: 5px
}

.en-US .privacy-indent {
text-indent: 0
}

.contact-form {
padding: 246px 0 170px
}

.contact-form-container01 {
max-width: 702px
}

.contact-form-container02 {
max-width: 496px;
margin-left: 0
}

.contact-form-ttl01 {
font-size: 1.6rem;
line-height: 1.8;
margin-bottom: 50px
}

@media screen and (min-width: 768px) {
.contact-form-ttl01 {
font-size:1.8rem;
line-height: 1.7;
margin-bottom: 77px
}
}

.contact-form-box01+.contact-form-box01 {
margin-top: 45px
}

.contact-form-ttl02,.contact-form-ttl03 {
font-size: 1.4rem;
line-height: 2;
font-weight: 700
}

@media screen and (min-width: 768px) {
.contact-form-ttl02,.contact-form-ttl03 {
font-weight:400
}
}

.contact-form-ttl03 {
margin-bottom: 20px
}

.contact-form-input01 input {
border-bottom: 1px solid #000;
width: 100%;
height: 33px;
display: block;
font-size: 1.3rem;
padding-left: 5px
}

.contact-form-input01 textarea {
font-size: 1.3rem;
line-height: 1.8;
padding: 5px
}

.contact-form-box0101 .contact-form-input02,.contact-form-input02 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-top: 20px
}

.contact-form-box0101 .contact-form-input02>span,.contact-form-input02>span {
display: block;
width: 100%;
position: relative;
padding-left: 30px;
margin-bottom: 20px
}

@media screen and (min-width: 768px) {
.contact-form-box0101 .contact-form-input02>span,.contact-form-input02>span {
width:50%
}
}

.contact-form-input02 .mwform-checkbox-field-text,.contact-form-input02 .mwform-radio-field-text {
font-size: 1.4rem;
line-height: 20px
}

.contact-form-input02 .mwform-checkbox-field-text:before,.contact-form-input02 .mwform-radio-field-text:before {
content: "";
display: block;
width: 20px;
height: 20px;
border-radius: 50%;
border: 1px solid #000;
position: absolute;
left: 0;
top: 0
}

.contact-form-input02 input:checked+.mwform-checkbox-field-text:after,.contact-form-input02 input:checked+.mwform-radio-field-text:after {
content: "";
display: block;
width: 10px;
height: 10px;
border-radius: 50%;
background: #000;
position: absolute;
left: 6px;
top: 6px
}

label[for=message-1]:after {
content: "\203B\3054\5E0C\671B\65E5\6642\3092\5099\8003\6B04\306B\3054\5165\529B\304F\3060\3055\3044\3002";
display: block;
margin-left: 0;
font-size: 1rem;
margin-top: 5px
}

@media screen and (min-width: 768px) {
label[for=message-1]:after {
display:inline-block
}
}

label[for=message-2]:after {
content: "\203B\3054\5229\7528\4EBA\6570\3068\958B\59CB\5E0C\671B\6708\3092\5099\8003\6B04\306B\3054\5165\529B\304F\3060\3055\3044\3002";
display: block;
margin-left: 0;
font-size: 1rem;
margin-top: 5px
}

@media screen and (min-width: 768px) {
label[for=message-2]:after {
display:inline-block
}
}

.en-US label[for=message-1]:after {
content: "Please enter your desired visit date and time below."
}

@media screen and (min-width: 768px) {
.en-US label[for=message-1]:after {
display:block
}
}

.en-US label[for=message-2]:after {
content: "Please enter the number of people and the desired starting month below."
}

@media screen and (min-width: 768px) {
.en-US label[for=message-2]:after {
display:block
}
}

.contact-form-box0101 .contact-form-input02>span:first-child,.contact-form-box0101 .contact-form-input02>span:nth-child(2),.detail {
width: 100%
}

.detail {
border: 1px solid #000;
min-height: 200px
}

.contactsend {
margin-top: 80px;
width: 100%;
max-width: 360px;
height: 52px;
border-radius: 26px;
font-size: 1.6rem;
color: #fff;
font-weight: 700;
line-height: 52px;
background: -webkit-gradient(linear,left bottom,left top,from(#000),color-stop(#2a2a2a),to(#545454));
background: -webkit-linear-gradient(bottom,#000,#2a2a2a,#545454);
background: linear-gradient(0deg,#000,#2a2a2a,#545454);
cursor: pointer;
text-align: center
}

@media screen and (min-width: 768px) {
.contactsend {
width:260px
}
}

.contact-form-txt01 {
margin-top: 25px;
font-size: 1rem;
line-height: 2
}

.contact-form-txt01 a {
text-decoration: underline;
color: #000
}

.error {
display: block;
font-size: 1.2rem;
margin-top: 5px;
color: #ff002e
}

.mw_wp_form .horizontal-item+.horizontal-item {
margin-left: 0!important
}

.wp-pagenavi {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}

.wp-pagenavi .pages {
display: none
}

.wp-pagenavi .current {
border: 1px solid #c7c7c7;
color: #c7c7c7
}

.wp-pagenavi .nextpostslink {
margin-left: 30px!important
}

.wp-pagenavi .previouspostslink {
margin-right: 30px!important
}

.wp-pagenavi .extend,.wp-pagenavi .last {
display: none
}

.recruit-content {
background: url(../images/recruit01@2x.jpg) no-repeat 50%;
background-size: cover;
height: 100vh;
width: 100%;
padding-top: 130px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start
}

@media screen and (min-width: 768px) {
.recruit-content {
padding-top:100px;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center
}
}

.recruit-container01 {
max-width: 100%
}

@media screen and (min-width: 768px) {
.recruit-container01 {
max-width:672px
}
}

.recruit-ttl01 {
color: #fff;
font-weight: 700;
font-size: 3rem;
line-height: 1;
margin-bottom: 70px
}

@media screen and (min-width: 768px) {
.recruit-ttl01 {
font-size:3rem;
line-height: 1;
margin-bottom: 70px
}
}

.recruit-txt01 {
color: #fff;
font-size: 1.6rem;
line-height: 1.9;
margin-bottom: 60px
}

@media screen and (min-width: 768px) {
.recruit-txt01 {
margin-bottom:30px
}
}

.recruit-btn01 {
display: block;
font-size: 1.4rem;
height: 39px;
line-height: 39px;
width: 176px;
border: 2px solid #fff;
border-radius: 19px;
text-align: center;
color: #fff
}

.underconstruction {
padding: 15px 0 0
}

.voice-under {
padding: 15px 0 140px
}

.underconstruction-box {
height: 437px;
background: #e8e8e8;
color: #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center
}

.underconstruction-box p {
font-size: 2.4rem;
font-weight: 700
}

.top-voice .underconstruction {
padding-top: 0;
padding-bottom: 50px
}

.top-voice .underconstruction-box {
background: #fff
}

@media screen and (min-width: 768px) {
.top-voice .underconstruction-box {
margin-left:25px;
margin-right: 25px
}
}

input.message,input.request {
display: none
}

.community-detail {
padding: 200px 0 180px
}

.community-detail-container {
padding: 0 15px;
max-width: 100%;
margin: 0 auto
}

@media screen and (min-width: 768px) {
.community-detail-container {
width:768px;
padding: 0 15px;
width: 100%;
max-width: 1054px
}
}

.community-detailHeader-txt01 {
width: 144px;
display: inline-block;
height: 40px;
font-size: 2.4rem;
text-align: center;
line-height: 40px;
margin-bottom: 24px;
margin-right: 8px;
background: #000;
color: #fff;
font-weight: 700
}

.community-detailHeader-txt02 {
font-size: 2.4rem;
line-height: 1.2;
margin-bottom: 35px;
font-weight: 700
}

.community-detailHeader-ttl01 {
font-size: 1.5rem;
line-height: 2.2
}

.community-detailHeader-ttl02 {
font-size: 2.8rem;
line-height: 1.5;
margin-bottom: 15px
}

.community-detailHeader-box02 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-bottom: 50px
}

.community-detailHeader-txt03 {
padding: 0 7px;
font-size: 1.2rem;
border: 1px solid #707070;
height: 28px;
line-height: 28px;
margin-bottom: 7px;
text-align: center;
width: 144px;
margin-right: 32px
}

@media screen and (min-width: 768px) {
.community-detailHeader-txt03 {
width:144px;
margin-right: 32px
}
}

.community-detailHeader-img01 img {
width: 100%;
height: auto
}
.community-detailContent a{
color: darkblue;
text-decoration: underline;
}
.community-detailContent-container01 {
max-width: 672px;
margin: 0 auto
}

.community-detailContent-container01 p {
font-size: 1.5rem;
line-height: 1.8
}

.community-detailContent-container01 p+p {
margin-top: 30px
}

.community-detailContent-container01 h2 {
font-size: 3rem;
line-height: 1.8;
font-weight: 700;
margin-top: 40px;
margin-bottom: 15px
}

.community-detailContent-container01 h3 {
font-size: 2rem;
line-height: 1.8;
font-weight: 700;
margin-top: 30px;
margin-bottom: 15px
}

.community-detailContent-container01 h4 {
font-size: 1.5rem;
line-height: 1.8;
font-weight: 700;
margin-top: 30px;
margin-bottom: 15px
}

.community-detailContent-box01 {
padding: 100px 0 90px
}

.community-detailRelated {
background: #f4f4f4;
padding: 0;
max-width: 1024px;
margin: 0 auto
}

.community-detailRelated-container01 {
padding: 30px 15px 40px;
display: -webkit-box;
display: -ms-flexbox;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
max-width: 100%;
margin: 0 auto;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between
}

.community-detailRelated-container01>a+a {
margin-top: 0
}

@media screen and (min-width: 768px) {
.community-detailRelated-container01 {
max-width:672px;
padding: 50px 0
}

.community-detailRelated-container01>a+a {
margin-top: 0
}
}

.community-detailRelated-ttl01 {
width: 100%;
border-bottom: 4px solid #000;
font-size: 2.4rem;
padding-bottom: 10px;
text-align: center;
margin-bottom: 30px
}

.community-detailRelated-box01 {
background: #fff;
-webkit-box-shadow: 0 3px 6px rgba(0,0,0,.21);
box-shadow: 0 3px 6px rgba(0,0,0,.21);
width: calc(50% - 22px)
}

@media screen and (min-width: 768px) {
.community-detailRelated-box01 {
width:320px
}
}

.community-detailRelated-box02 {
padding: 20px
}

.community-detailRelated-box03 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
margin-top: 10px;
-ms-flex-wrap: wrap;
flex-wrap: wrap
}

.community-detailRelated-txt01 {
width: 100px;
height: 34px;
font-size: 1.5rem;
line-height: 34px;
background: #e8e8e8;
text-align: center;
margin-bottom: 20px
}

.community-detailRelated-ttl02 {
line-height: 1.9rem;
font-size: 1.6rem;
line-height: 2rem;
font-weight: 700;
margin-bottom: 15px;
margin-top: 10px
}

.community-detailRelated-txt02 {
font-size: 1.4rem;
font-weight: 700;
margin-bottom: 7px
}

.community-detailRelated-txt03 {
font-size: 1.2rem;
margin-right: 7px;
margin-bottom: 7px;
line-height: 24px;
height: 24px;
padding: 0 7px;
border: 1px solid #707070;
display: inline-block
}

.community-detailRelated-img01 {
width: 100%;
padding-top: 65%
}

.community-detailContent-box02 {
padding: 80px 0 120px
}

.single-wrapper {
padding: 200px 15px 180px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
max-width: 100%;
margin: 0 auto
}

@media screen and (min-width: 768px) {
.single-wrapper {
width:768px;
padding: 150px 15px;
width: 100%;
max-width: 1054px;
padding: 200px 15px 180px
}
}

.single-detail {
width: 100%
}

@media screen and (min-width: 768px) {
.single-detail {
width:calc(100% - 352px)
}
}

.single-detailHeader-date {
font-size: 1.5rem;
line-height: 2;
margin-bottom: 10px;
font-weight: 700
}

.single-detailHeader-txt01 {
font-size: 1.5rem;
margin-bottom: 30px;
font-weight: 500
}

.single-detailHeader-img01 {
margin-bottom: 50px
}

.single-detailHeader-txt02 {
font-size: 1.5rem;
line-height: 1.2;
margin-bottom: 20px
}

.single-detailHeader-txt03 {
font-size: 1rem;
line-height: 30px;
height: 30px;
display: block;
width: 76px;
border: 1px solid;
text-align: center;
margin-right: 7px;
margin-bottom: 7px
}

.single-detailHeader-ttl01 {
font-size: 2.8rem;
line-height: 1.8;
margin-bottom: 20px
}

.single-detailHeader-box01 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
margin-bottom: 40px
}

.single-detailContent {
font-size: 1.5rem;
line-height: 1.9
}

.single-detailContent a {
color: darkblue;
text-decoration: underline;
}

.single-detailContent h2 {
font-size: 3rem;
line-height: 1.8;
font-weight: 700;
margin-top: 40px;
margin-bottom: 15px
}

.single-detailContent h3 {
font-size: 2rem
}

.single-detailContent h3,.single-detailContent h4 {
line-height: 1.8;
font-weight: 700;
margin-top: 30px;
margin-bottom: 15px
}

.single-detailContent h4 {
font-size: 1.5rem
}

.single-detailContent p+p {
margin-top: 50px
}

.single-detailContent-box01 {
padding-bottom: 100px
}

.single-detailContent-box03 {
padding: 30px 0
}

.single-side {
max-width: 320px;
display: none
}

@media screen and (min-width: 768px) {
.single-side {
display:block;
position: -webkit-sticky;
position: sticky;
width: 320px;
top: 120px;
height: 100%
}
}

.single-side-ttl01 {
font-size: 1.4rem;
line-height: 1.2;
font-weight: 300;
padding-bottom: 5px;
border-bottom: 1px solid #707070;
margin-bottom: 55px
}

.single-side-box03 {
background: #f4f4f4;
padding: 15px 15px 20px
}

.single-side-ttl02 {
font-size: 1.4rem;
line-height: 1.8;
font-weight: 700;
margin-bottom: 15px
}

.single-side-txt01 {
font-size: 1.2rem;
line-height: 1
}

.single-side-box02 {
position: relative;
display: block
}

.single-side-box02+.single-side-box02 {
margin-top: 130px
}

.single-side-box02+.single-side-box02:before {
content: "";
display: block;
width: 100%;
height: 1px;
background: #707070;
position: absolute;
top: -80px;
left: 0
}

.single-side-txt02 {
text-align: center;
display: block;
font-size: 1.2rem;
line-height: 24px;
height: 24px;
padding: 0 7px;
border: 1px solid #707070
}

.single-side-box04 {
margin: -20px 0 37px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start
}

.single-side-txt02+.single-side-txt02 {
margin-top: 22px
}

.single-detailRelated {
padding: 30px 15px 40px;
background: #f4f4f4;
margin-top: 50px;
margin-left: -15px;
margin-right: -15px
}

@media screen and (min-width: 768px) {
.single-detailRelated {
padding:50px 20px;
margin: 200px auto 180px;
display: block
}
}

.single-detailRelated-container01 {
max-width: 100%;
margin: 0 auto
}

.single-detailRelated-ttl01 {
width: 100%;
border-bottom: 4px solid #000;
font-size: 2.4rem;
padding-bottom: 10px;
text-align: center;
margin: 0 auto 30px
}

@media screen and (min-width: 768px) {
.single-detailRelated-ttl01 {
width:320px
}
}

.single-detailRelated-box01 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap
}

.single-detailRelated-box02 {
width: calc(50% - 22px);
background: #fff;
-webkit-box-shadow: 0 3px 6px rgba(0,0,0,.21);
box-shadow: 0 3px 6px rgba(0,0,0,.21)
}

.single-detailRelated-box03 {
padding: 20px
}

.single-detailRelated-ttl02 {
font-size: 1.2rem;
line-height: 2;
margin-bottom: 15px
}

.single-detailRelated-txt01 {
font-size: 1.2rem;
min-width: 76px;
line-height: 26px;
text-align: center;
display: inline-block;
margin-right: 5px;
background: #000;
color: #fff
}

.single-detailHeader-img01 img,.single-detailRelated-img01 img {
width: 100%;
height: auto
}

.single-detailRelated-box04 {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-ms-flex-wrap: wrap;
flex-wrap: wrap
}

.single-detailRelated-txt02 {
font-size: 1.2rem;
margin-right: 7px;
line-height: 24px;
height: 24px;
padding: 0 7px;
border: 1px solid #707070;
display: inline-block
}

.single-side-box03 .single-detailRelated-box04 {
margin: 0
}

.speak-box {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-top: 50px
}

.speaker {
display: block;
width: 100px
}

.speaker-content {
display: block;
width: calc(100% - 120px)
}

.speakerimg {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
display: block
}

.block-ttl {
display: block;
font-size: 3rem;
margin-bottom: 35px;
border-bottom: 3px solid #000;
margin-top: 50px;
padding-bottom: 7px;
line-height: 1.2
}


.-scrolled {
height: 50px;
}

.-scrolled img {
max-width: 80%;
}

.matterport-container {
margin-top: 20px;
margin-bottom: 20px;
}

.masthead-fullscreen {
width: 100vw;
height: 100vh;
background-color:white;
text-align:center;
display: inline-block;
position:absolute;
z-index:999;

pointer-events: none;
opacity:1;
transition: opacity 0.4s;
}

.masthead-fullscreen img {
vertical-align: middle;
width:600px;
margin-top: 41vh;
}

.fw-500 {
font-weight:500;
}


/*
.js-view-more-btn {
z-index:99999;
}*/

/* Others */
.wp-pagenavi a.first {
display: none !important;
} 
.book-a-visit {
position:fixed;
bottom: -2px;
right: 100px;
width: 200px;
height: 60px;
font-size:24px;
z-index:1;
display:inline-block;
}

.book-a-visit::before {
content: ' ';
border-bottom: 24px solid #ccccccaa;
border-right: 24px solid #cccccc00;
border-left: 24px solid #cccccc00;
width: calc(100% - 48px);
top:-4px;
display: inline-block;
position:absolute;
transition: border-color 0.4s;
}
.book-a-visit:hover:before,
.book-a-visit:active:before {
border-bottom-color:  #000000aa;
border-right-color:  #00000000;
border-left-color: #00000000;
}

.book-a-visit::after {
content: ' ';
background-color: #ccccccaa;
width: 100%;
height:50px;
top:20px;
left:0;
display: inline-block;
position:absolute;
transition: background-color 0.4s;
}
.book-a-visit:hover:after,
.book-a-visit:active:after  {
background-color: #000000aa;
}

.book-a-visit img {
padding: 2px;
width: 100%;
}
.book-a-visit .img-bg {
position:absolute;
width:100%;
height:100%;
pointer-events: none;
z-index: -1;
}
.book-a-visit .img-cont {
width: 38px;
background-color: white;
padding: 5px;
border-radius: 88px;
display:inline-block;
z-index:2;
top: 13%;
left: 10%;
position:absolute;
}
.book-a-visit .bav-a {
display: inline-block;
margin-top: 10px;
margin-left: 22px;
}
.book-a-visit .bav-txt {
position:absolute;
font-size: 18px;
margin-left: 10px;
font-weight:700;
position:absolute;
z-index:2;
left:30%;
top:50%;
transform: translateY(-50%);
transition: color 0.4s;
}
.book-a-visit:hover .bav-txt,
.book-a-visit:active .bav-txt {
color:white;
}
.book-a-visit .bav-icon {
margin-left: 1px;
}

@media (max-width: 768px){

.book-a-visit {
position:fixed;
bottom: -2px;
right: 0;
width: 100vw;
}
.book-a-visit::before {
display: none;
}
.book-a-visit::after {
top:0;
height:60px;
}

.book-a-visit .img-bg {
display:none;
}
.book-a-visit .bav-a {
display: block;
margin-left:0;
margin-top:8px;
text-align:center;
}
.book-a-visit .bav-txt {
position: relative;
display: inline-block;
font-size: 24px;
left: 35%;
/*transform: translateY(-10%);*/
}

.book-a-visit .img-cont {
left: 20%;
}
}


.mt-15px {
margin-top:15px;
}
.mt-30px {
margin-top:30px;
}

.text-center {
text-align:center;
}

.d-inline-block {
display: inline-block;
}

.d-none {
display:none;
}

/*Date Picker*/
.date-picker {
border: 1px solid black;
font-size: 16px;
margin-bottom:5px;
padding-left: 5px;
}

.time-picker {
border: 1px solid black;
font-size: 16px;
margin-bottom:5px;
border-radius: 0;
padding: 1px 6px;
}

@media (min-width: 768px){
.sp {
display: none !important;
}
}
@media (max-width: 768px){
.pc {
display: none !important;
}
}

/*timepicker plugin css override*/
.ui-timepicker-wrapper {
width: 9.5em !important;
}
.ui-timepicker-list {
font-size: 17px;
}

/* SNS / Social Media */
.sns-btn {
border-radius: 5px;
margin-right: 4px;
padding: 11px 16px 11px 16px;
line-height: 30px;
font-size: 13px;
vertical-align: top;
text-decoration: none !important;
}
.fb-btn {
background-color: #305496;
color: white !important;
}

.fb-icon {
width: 16px;
margin-right: 3px;
margin-left:-5px;
transform: translateY(1px);
}
.tw-btn {
background-color: #29a5dc;
color: white !important;
}

.tw-icon {
width: 14px;
margin-right: 3px;
transform: translateY(2px);
}

.in-btn {
background-color: #0473b1;
color: white !important;
}

.in-icon {
width: 14px;
margin-right: 3px;
transform: translateY(1px);
}

.pin-btn {
background-color: #e60023;
color: white !important;
}

.pin-icon {
width: 15px;
margin-right: 3px;
transform: translateY(2px);
}


/*rev add 20250326 -------------------------------------- */
.miniTxt{
    font-size: 85%;
}

.btm60px{
margin-bottom: 60px;
}
@media (max-width: 768px){
.btm60px{
margin-bottom: 30px;
}
}

.btm150px{
margin-bottom: 150px;
}
@media (max-width: 768px){
.btm150px{
margin-bottom: 75px;
}
}

.top-community-box-LOGO_txt{
text-align: center;
font-weight: bold;
line-height: 1.6;
margin-bottom: 1em;
}

.top-community-logoUL{
display: flex;
flex-wrap: wrap;
align-items: stretch;
justify-content:flex-start;
gap:10px 35px;
}
.top-community-logoUL li{
width: calc((100% - 35px * 4) / 5);
}
.top-community-logoUL li img{
width: 100%;
vertical-align: top;
}

@media (max-width: 768px){
.top-community-box-LOGO_txt{
text-align: left;
}

.top-community-logoUL{
gap:5px 20px;
}
.top-community-logoUL li{
width: calc((100% - 20px * 3) / 4);
}
}

.top-voice{
padding-bottom: 10px !important;
margin-bottom: 250px;
}

.sourceTxt{
    text-align: right;
    font-size:9px;
    margin-bottom: 8px;
    font-weight: 100;
    padding-right: 30px;
}

#uv_UL{
display: flex;
flex-wrap: wrap;
align-items: stretch;
gap:20px;
padding-right: 8px;
padding-bottom: 8px;
}
#uv_UL .uv_UL_item{
padding-right: 1em;
}

#uv_UL .uv_UL_item .revealContent{
background: #fff;
padding:2em;
box-shadow: 3px 3px 5px rgba(0, 0, 0, .21);
height: 100%;
}


#uv_UL .slick-track {
  display: flex;
}
#uv_UL .slick-slide {
    height: auto !important;
}

#uv_UL .slick-slide > div{
    height: 100%;
}

#uv_UL .slick-slide > div .uv_UL_item{
    height: 100%;
}

#uv_UL .slick-slide > div .uv_UL_item .revealContent{
    height: 100%;
}


#uv_UL .slick-dots{
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-start;
gap: 5px;    
}

#uv_UL .slick-dots li button{
width: 1.2em;
height: 0.3em;
overflow: hidden;
text-indent: -99999px;
position: relative;
display: block;
background: #000 !important;
border-radius: 100px;
cursor: pointer !important;
}

#uv_UL .slick-dots li.slick-active button{
background: #ccc !important;
}

        @media (max-width: 768px){
                .top-voice{
                padding-bottom: 10px !important;
                margin-bottom: 100px;
                }
                #uv_UL{
                padding-right: 5%;
                padding-left: 5%;
                }




                

                #uv_UL .uv_UL_item{
                width: 100%;
        }
        }

#price-plan.plan-price-event{
padding-top: 0 !important;
margin-bottom: 200px;
}

#om{
/*margin-bottom: 0 !important;*/
}

#price-box01_om{
justify-content: center;
gap: 40px;
}

#om_UL{display: flex;
flex-wrap: wrap;
align-items: stretch;
justify-content: center;
gap:20px;
padding-right: 8px;
padding-bottom: 8px;}

#om_UL li{width: calc(100% / 4 - 20px);
background: #fff;
box-shadow: 3px 3px 5px rgba(0, 0, 0, .21);}

#om_UL li .omIMGbox{
position: relative;
}

#om_UL li .omIMGbox .flag{
    position: absolute;
    width: 35px;
    right: 10px;
    bottom: -5px;
    z-index: 9;
}

#om_UL li .omIMGbox .top-community-ttl02{
position: absolute;
left: 0;
bottom: 0;
background: #fff;
max-width: 90%;
letter-spacing: 0 !important;
font-size:90% !important;
padding:0.1em 0.5em 0.1em 0.75em;
margin-bottom: 0 !important;
}

#om_UL li .omTXTbox{
padding:1em;
}

#om_UL li .omTXTbox .firstP{
border-bottom: 1px solid #ccc;
margin-bottom: 1.5em;
padding-bottom: 1em;
line-height: 1.3em;
font-size:11px !important;
}

#om_UL li .omTXTbox .secondP{
line-height: 1.3em;
font-size:10px !important;
font-weight: 100;
color: #454545;
display: flex;
flex-wrap: wrap;
align-items: stretch;
justify-content: flex-start;
gap: 1px;
margin-bottom: 15px;
}

#om_UL li .omTXTbox .secondP .tagSpan{
    border: 1px solid #454545;
    padding:0.25em 0.5em;
    display: block;
}

@media (max-width: 768px){
#om_UL li{
width: 100%;
}

#price-plan.plan-price-event{
margin-bottom: 100px;
}
}

#facillityUL_wrap{
overflow: hidden !important;
width: 100%;
}
.facillityUL{
width: 170% !important;
}
.facillityUL li.inviewElm{
/*padding:3px 20px 10px 3px;*/
}
.facillityUL li.inviewElm .revealContent{
background: #fff;
-webkit-box-shadow: 3px 3px 5px rgba(0,0,0,.25);
box-shadow: 3px 3px 5px rgba(0,0,0,.25);
height: 100% !important;
display: flex;
flex-wrap: wrap;
align-self: stretch;
justify-content: center;
}

.facillityUL > .slick-list{
margin-bottom: 20px !important;
}

.facillityUL .slick-dots{
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-start;
gap: 5px;    
}

.facillityUL .slick-dots li button{
width: 1.2em;
height: 0.3em;
overflow: hidden;
text-indent: -99999px;
position: relative;
display: block;
background: #000 !important;
border-radius: 100px;
cursor: pointer !important;
}

.facillityUL .slick-dots li.slick-active button{
background: #ccc !important;
}




.facillityIMG_box{
width: 45%;
}

.facillityTXT_box{
width: 55%;
padding:3em 2em;
}

.facillityTXT_01 {
font-size: 1.8rem;
line-height: 1.7;
margin-bottom: 15px;
font-weight: 900
}

.facillityTXT_02 {
font-size: 1.4rem;
line-height: 2;
font-weight: 400;
letter-spacing: .1rem;
word-break: break-word
}

@media screen and (min-width: 768px) {
.facillityTXT_01 {
font-size:2.1rem;
font-weight: 900;
line-height: 1.4
}

.facillityTXT_02 {
letter-spacing:0;
font-size: 1.2rem;
line-height: 1.9;
font-weight: 700
}
}

@media screen and (max-width: 768px) {
.facillityIMG_box{
width: 100% !important;
}

.facillityTXT_box{
width: 100% !important;
padding:2em 1.5em;
}
}

.price-box01{
align-items: stretch;
flex-wrap: wrap !important;
gap: 0 !important;
}

.price-box01 .price-box02{
width: 50% !important;
}

.eventContent{
display: flex;
flex-wrap: wrap;
align-items: flex-start;
justify-content: center;
border: 1px solid #000;
height: 45em;
}
.eventContent_inr .eventContent_inrIMG{
margin-bottom: 2em;
}
.eventContent_inr .eventTitle{
font-size:1.8rem;
text-align: center;
margin-bottom: 15px;
font-weight: bold;
padding:0em 3em;
}
.eventContent_inr .eventTxt{
font-size:1.2rem;
text-align: center;
margin-bottom: 0 !important;
line-height: 1.3em;
padding:0em 3em;
}

.price-box02_even .eventContent{
background: #000;
}
.price-box02_even .eventContent *{
color: #fff !important;
}

@media screen and (max-width: 768px) {
.price-box01 .price-box02{
width: 100% !important;
}
.eventContent{
height: 40em;
}
.price-box02_even .eventContent{
background: #fff;
}
.price-box02_even .eventContent *{
color: #000 !important;
}

}

.btnBox{
display: flex;
flex-wrap: wrap;
align-items: stretch;
justify-content: center;
}
.btnBox a{
transition: all 1s 0s;
font-size:18px;
background: #008803;
display: inline-flex;
align-items: center;
justify-content: center;
color: #fff;
border-radius: 3px;
padding:1em;
width: 70%;
max-width: 500px;
}
.btnBox a:hover{
    background: #00aa04;
}
.btnBox a .icon-mail{
width: 1.3em;
margin-right: 0.25em;
}
@media screen and (max-width: 768px) {
    .btnBox a{
font-size:15px;
    }
}