/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 10 2026 | 10:39:13 */
.elementor-kit-8 {
    --e-global-color-primary: #6EC1E4;
    --e-global-color-secondary: #54595F;
    --e-global-color-text: #7A7A7A;
    --e-global-color-accent: #61CE70;
    --e-global-typography-primary-font-family: "serif";
    --e-global-typography-primary-font-weight: 600;
    --e-global-typography-secondary-font-family: "serif";
    --e-global-typography-secondary-font-weight: 400;
    --e-global-typography-text-font-family: "serif";
    --e-global-typography-text-font-weight: 400;
    --e-global-typography-accent-font-family: "serif";
    --e-global-typography-accent-font-weight: 500;
    font-family: 'serif' !important;
}


.wpml-ls-statics-footer.wpml-ls.wpml-ls-touch-device.wpml-ls-legacy-list-horizontal {
    display: none;
}
.wpml-ls-statics-footer.wpml-ls.wpml-ls-legacy-list-horizontal {
    display: none;
}


.site-primary-header-wrap.ast-builder-grid-row-container.site-header-focus-item.ast-container {
    background: #000000;
}

.ast-builder-grid-row-container {
    display: none;
    align-content: center;
}

.wpml-ls-legacy-list-horizontal>ul {
    padding: 0;
    margin: 0 !important;
    list-style-type: none;
    display: flex;
    flex-direction: column;
	gap:7px;
}

.wpml-ls-legacy-list-horizontal>ul>li {
    background: #ffffff;
    border-radius: 30px;
    text-align: center;
}


.top_box {
    width: 1140px;
    margin-bottom: 50px;
}
/*その他と主な共通部分は省略*/

a.btn.btn-c.btn--green.btn--cubic {
    text-decoration: none;
}

.elementor-widget-wpml-language-switcher .wpml-elementor-ls .wpml-ls-item .wpml-ls-link, .elementor-widget-wpml-language-switcher .wpml-elementor-ls .wpml-ls-legacy-dropdown a {
     color: #046bd2 !important;
    font-weight: bold;
}

a.btn--green {
  color:#01142e;
  background: #ffffff;
	text-decoration:none;
}

img.wpml-ls-flag {
    display: none !important;
}

a.btn--green:hover {
  color:#01142e;
  background: #ffffff;
}

a.btn--green.btn--cubic {
  border-bottom: 5px solid #b7b7b7;
}

a.btn--green.btn--cubic:hover {
  margin-top: 3px;
  border-bottom: 2px solid #b7b7b7;
}

a.btn-c {
  font-size: 1.2rem;
  position: relative;
  padding: 1rem 3rem 1rem 2rem;
  border-radius: 100vh;
}

a.btn-c i.fa {
  margin-right: 1rem;
}

a.btn-c:before {
  font-family: 'Font Awesome 5 Free';
  font-size: 1.4rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f054';
}

.yoyaku_btn {
    text-align: center;
}

.top_title{
    font-size: 1.7em;
}

.box_p {
    font-size: 1.3em;
    line-height: 2;
}

.main_p{
    font-size:2.5em;
    line-height:2;
    padding-bottom: 50px;
}

.c-title--eng:after {
    content: "";
    position: absolute;
    right: 0;
    top: -0.3125rem;
    height: 4.375rem;
    width: 1px;
    background-color: #ffffff;
    transform: rotate(45deg);
}
h2.c-new-block__title.c-title.c-title__h2-top {
    color: #ffffff;
}


.elementor-element.elementor-element-a5d5582.e-flex.e-con-boxed.e-con.e-parent.e-lazyloaded {
    display: none;
}

.c-title--eng {
    font-family: "Cormorant", serif;
    color: #ffffff;
    font-size: 0.9375rem;
    letter-spacing: 0.06em;
    padding-right: 0rem;
    display: inline-block;
    position: relative;
}

.c-new-block--01 .c-new-block__text-header .c-title--eng {
    margin-right: 3.75rem;
}

.c-title__h2-top {
    font-size: 2.8125rem;
    line-height: 1.3;
    letter-spacing: 0.13em;
    font-weight: 400;
    margin-left: 50px;
}

.zn {
    font-size: 2.8125rem;
    line-height: 1.3;
    letter-spacing: 0.13em;
    font-weight: 400;
    margin-left: 100px!important;
}


.c-new-block__text--vertical .c-new-block__title {
    writing-mode: vertical-rl;
}

.c-new-block--01 .c-new-block__text-header {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1.875rem;
    align-items: flex-start;
}

.c-new-block--01 .c-new-block__text-header--right {
    align-items: flex-end;
}

.ast-header-break-point #ast-mobile-header {
    display: none!important;
}

.otgs-development-site-front-end {
    display: none!important;
}

body.elementor-page-460:not(.elementor-motion-effects-element-type-background), body.elementor-page-460 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: #030925;
    background-image: url(https://sogetsuro.com/wp-content/uploads/2026/09/background-desktop-lossless.webp);
    background-position: top center;
    background-size: auto;
    background-attachment: fixed!important;
}

h2.c-new-block__title.c-title.c-title__h2-top.zhh2 {
    margin-left: 100px;
}


@media (max-width: 767px) {
    body.elementor-page-460:not(.elementor-motion-effects-element-type-background), body.elementor-page-460 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
	body.elementor-page-461:not(.elementor-motion-effects-element-type-background), body.elementor-page-461 > .elementor-motion-effects-container > .elementor-motion-effects-layer, 
	body.elementor-page-462:not(.elementor-motion-effects-element-type-background), body.elementor-page-462 > .elementor-motion-effects-container > .elementor-motion-effects-layer
	{
        background-image: url(https://sogetsuro.com/wp-content/uploads/2026/09/background-mobile-lossless.webp);
        background-position: top center;
        background-repeat: no-repeat;
        background-size: auto;
        background-attachment: fixed!important;
    }
}


@media (max-width:700px) {
.top_box {
    display: flex;
    flex-direction: column-reverse !important;
}
}

/* Sogetsuro: language navigation, section headings, and flyer sizing (2026-09-08). */
[data-id="9cc9f65"] { position:fixed!important; top:0!important; left:0!important; width:100%!important; max-width:none!important; padding:8px 20px!important; background:#030925!important; z-index:9990!important; }
body.admin-bar [data-id="9cc9f65"] { top:32px!important; }
[data-id="9cc9f65"] > .e-con-inner { width:100%!important; max-width:1140px!important; padding:0!important; justify-content:flex-end!important; }
[data-id="c063b4a"] { width:320px!important; flex:0 0 320px!important; max-width:100%!important; padding:0!important; margin:0!important; }
[data-id="a06aa8c"] { width:100%!important; max-width:100%!important; margin:0!important; }
[data-id="a06aa8c"] .wpml-ls { padding:0!important; border:0!important; }
[data-id="a06aa8c"] .wpml-ls > ul { display:flex!important; flex-direction:row!important; flex-wrap:nowrap!important; gap:8px!important; }
[data-id="a06aa8c"] .wpml-ls > ul > li { margin:0!important; flex:1 1 auto; }
[data-id="a06aa8c"] .wpml-ls-link { display:flex!important; align-items:center; justify-content:center; min-height:44px; padding:8px 16px!important; font-size:14px!important; line-height:1.4!important; white-space:nowrap; }
[data-id="a06aa8c"] .wpml-ls-display { display:none!important; }
[data-id="a06aa8c"] .wpml-ls-current-language > a { text-decoration:underline; text-underline-offset:4px; }
.c-new-block__text-header { display:flex; flex-direction:column; align-items:flex-start; gap:24px; }
.c-new-block__text-header .c-title--eng { align-self:flex-start; margin:0!important; padding-right:64px!important; font-size:15px; line-height:1.5; }
.c-title--eng::after { right:18px; top:-4px; height:56px; }
.c-new-block__text-header h2.c-title__h2-top { margin:0 0 0 40px!important; max-width:calc(100% - 40px); font-size:clamp(28px,3.5vw,45px); line-height:1.5; letter-spacing:.06em; overflow-wrap:break-word; }
html[lang^="zh"] .c-new-block__text-header h2.c-title__h2-top { letter-spacing:.04em; }
[data-id="b3207e2"] > .e-con-inner { width:100%; max-width:680px!important; margin-inline:auto; gap:24px; }
[data-id="b3207e2"] img { display:block; width:100%!important; max-width:100%!important; height:auto!important; margin:0 auto; }
@media(max-width:782px) { body.admin-bar [data-id="9cc9f65"] { top:46px!important; } }
@media(max-width:767px) {
 [data-id="9cc9f65"] { padding:8px 12px!important; }
 [data-id="c063b4a"], [data-id="a06aa8c"] { width:100%!important; flex:1 1 auto!important; min-width:0!important; }
 [data-id="a06aa8c"] .wpml-ls-link { padding:8px 10px!important; }
 .c-new-block__text-header { gap:24px; }
 .c-new-block__text-header h2.c-title__h2-top { margin-left:24px!important; max-width:calc(100% - 24px); }
 [data-id="b3207e2"] > .e-con-inner { width:92%!important; }
}

/* Form controls: readable submission button and comfortable mobile input. */
.elementor-form button[type="submit"] { background:#030925!important; color:#fff!important; border:1px solid #030925!important; min-height:48px; font-size:18px; line-height:1.5; }
.elementor-form button[type="submit"]:hover { background:#01142e!important; }
.elementor-form button[type="submit"]:focus-visible { outline:3px solid #046bd2; outline-offset:3px; }
.elementor-form .elementor-field-textual { font-size:16px!important; }

/* Keep the lead readable over the moon photograph, and the form action unobstructed. */
[data-id="b1394ef"] { background:transparent; padding:16px!important; }
body.elementor-page-514 #ast-scroll-top, body.elementor-page-560 #ast-scroll-top, body.elementor-page-563 #ast-scroll-top { display:none!important; }

/* Tablet copy must remain legible while the moon background stays fixed. */
@media (min-width:768px) and (max-width:1024px) { [data-id="8be0903"] { background:transparent; padding:16px!important; } }


/* HOME only: darken the decorative background, preserving content images. */
body.elementor-page-460:not(.elementor-motion-effects-element-type-background),
body.elementor-page-461:not(.elementor-motion-effects-element-type-background),
body.elementor-page-462:not(.elementor-motion-effects-element-type-background) {
  background-image: url("https://sogetsuro.com/wp-content/uploads/2026/09/background-desktop-lossless.webp") !important;
}
@media (max-width:767px) {
  body.elementor-page-460:not(.elementor-motion-effects-element-type-background),
  body.elementor-page-461:not(.elementor-motion-effects-element-type-background),
  body.elementor-page-462:not(.elementor-motion-effects-element-type-background) {
    background-image: url("https://sogetsuro.com/wp-content/uploads/2026/09/background-mobile-lossless.webp") !important;
  }
}


/* Keep the mobile back-to-top control after the content, without covering copy. */
@media (max-width:767px) {
 body.elementor-page-460 #ast-scroll-top, body.elementor-page-461 #ast-scroll-top, body.elementor-page-462 #ast-scroll-top { position:relative!important; right:auto!important; bottom:auto!important; float:none!important; margin:24px auto!important; width:44px; height:44px; line-height:44px; }
}


/* BEGIN Sogetsuro approved repair 2026-09-09. Original demo comment below retained verbatim; production application approved by owner. */
/* Local demonstration only. No WordPress changes. */
 main p.stress-readable{max-width:42em;margin-inline:auto;margin-bottom:1.1em}
 [data-id="ae22c3a"] .stress-top-booking{display:block;width:min(100%,680px);margin:12px auto 0}
 [data-id="ae22c3a"] .stress-top-booking img{display:block;width:100%;height:auto;max-width:680px}

/* Scoped entrance effects only. Preserve gallery/carousel interaction. */
main [data-id="55be3c8"],
main [data-id="9d0c72b"],
main [data-id="7583c67"],
main [data-id="92d1cde"],
main [data-id="5576739"]{
 animation:none!important;
 transition:none!important;
 opacity:1!important;
 visibility:visible!important;
}
/* END Sogetsuro approved repair 2026-09-09 */

/* Sogetsuro: center the top booking banner in all three languages (2026-09-09). */
main a.e-image-link-base[data-interaction-id="f4386b7"] {
  justify-content: center;
}


/* Sogetsuro: approved hero booking placement, 2026-09-09. */
main [data-id="ae22c3a"] > .e-con-inner > a.e-image-link-base[data-interaction-id="f4386b7"] {
  display: flex;
  justify-content: center;
  width: min(100%, 680px);
  margin: 12px auto 0;
}
main [data-id="ae22c3a"] img[data-id="f4386b7"] {
  display: block;
  width: 100%;
  max-width: 680px;
  height: auto;
}


/* Sogetsuro: consistent booking and copy widths, 2026-09-10. */
main :is(#post-460,#post-461,#post-462) a:has(> img[src*="/booking-"]) { display:block; width:min(100%,680px); max-width:100%; margin-inline:auto; }
main :is(#post-460,#post-461,#post-462) img[src*="/booking-"] { display:block; width:100%!important; max-width:680px; height:auto; margin-inline:auto; }
main :is(#post-460,#post-461,#post-462) .box_p.elementor-widget-text-editor:has(p.stress-readable) { width:100%; max-width:42em; margin-inline:auto; text-align:left; }
main :is(#post-460,#post-461,#post-462) .box_p:has(p.stress-readable) p:not(.sg-guide-booking) { width:100%; max-width:none; margin-inline:0; margin-bottom:1.1em; text-align:left; }

/* PC prose: use the section width, avoid a narrow centered column. 2026-09-10 */
@media(min-width:1025px){
 main :is(#post-460,#post-461,#post-462) .box_p.elementor-widget-text-editor:has(p.stress-readable){max-width:100%;}
 main :is(#post-460,#post-461,#post-462) .box_p:has(p.stress-readable) p:not(.sg-guide-booking){word-break:normal;overflow-wrap:break-word;line-break:strict;text-wrap:pretty;}
 html[lang^="ja"] main #post-460 .box_p:has(p.stress-readable) p:not(.sg-guide-booking){word-break:auto-phrase;}
}
