@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD 2
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

*:focus {
outline: none;
}
a {
-webkit-tap-highlight-color: transparent;
}
input[type="submit"],
input[type="button"] {
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
outline-offset: -2px;
}
input::placeholder,
textarea::placeholder {
color: var(--placeholder-color);
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
color: var(--placeholder-color);
}
input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
color: var(--placeholder-color);
}

.text-link a { position:relative;font-size:0.95em }
.wp-block-button .wp-block-button__link { border-width:1px }
.spbr { display:block }
.pcbr { display:none }
@media (min-width:960px) {
.spbr { display:none }
.pcbr { display:block }
.text-link a::after { position:absolute;left:0;bottom:-1px;content:'';width:100%;height:1px;background:#333;transform:scale(0,1);transform-origin:left top;transition:transform .3s }
.text-link a:hover::after { transform:scale(1,1) }
.-parallel-bottom .l-header__inner { max-width:1200px }
.btnhover a,.hv { transition:opacity .3s }
.btnhover a:hover,.hv:hover { opacity:.7 }
}
.header_insta { position:absolute;top:28px;right:0 }
.header_insta img { width:34px }
@media (max-width:1240px) {
.header_insta { right:20px }
}
@media (min-width:960px) {
.l-fixHeader.-parallel .l-fixHeader__gnav { margin-right:28px }
#fix_header .header_insta { top:16px;right:20px }
#fix_header .header_insta img { width:30px }
}
@media (min-width:1200px) {
.l-fixHeader.-parallel .l-fixHeader__gnav { margin-right:40px }
#fix_header .header_insta { right:48px }
}
@media (max-width:959px) {
.header_insta { top:10px;right:10px }
.header_insta img { width:23px }
}
.p-mainVisual { max-width:1200px;margin:0 auto }
@media (min-width:960px) {
.p-mainVisual__slideLink { background:#fff;opacity:0;transition:opacity 0.3s ease-in-out }
.p-mainVisual__slideLink:hover { opacity:0.3 }
}

.top-h2-ttl { font-size:1.6rem !important;font-weight:normal !important;padding-bottom: 10px !important }
.top-text { text-align:center; }
@media (max-width:959px) {
.top-text { text-align:justify }
}
.p-postList__meta :before { display:none }
.c-postTimes__posted { font-size:0.9rem }
.-type-simple .p-postList__title { font-size: 0.97rem }
.top-news_insta { padding-top:30px }
.news-tolist { margin-top: 10px !important }
@media (max-width:959px) {
.top-insta { margin-top:24px !important }
}
@media (max-width:599px) {
.swell-block-columns.top-bridal { --swl-clmn-mrgn--x:0.3rem }
.swell-block-columns.top-concept .swell-block-column { margin:0 auto }
}

.footer-menu .swell-block-columns__inner > div + div { width:calc(100% - 7em) }
.footer-menu .wp-block-list { list-style-type:none }
.footer-menu .wp-block-list li { margin:0 }
.footer-menu ul.-list-flex { gap:1em 2em;padding:0 }
.footer-logo img { width:400px }
@media (max-width:959px) {
.footer-logo img { width:90%;max-width:250px }
.footermenu-title { display:none }
.footer-menu .swell-block-columns__inner > div + div { width:100% }
.footer-menu ul.-list-flex { padding:20px 0 }
}
@media (max-width:599px) {
.footer-menu ul.-list-flex { gap:0.5em 0;width:calc(100% + 1em);margin-left:-0.5em }
.footer-menu ul li { width:calc(100% / 3);padding:0 0.5em }
}
.l-footer__widgetArea,.w-footer__box { padding-bottom:0 }

.c-postTitle { flex-direction:column-reverse;align-items:flex-start }
.c-postTitle__date { border:none;text-align:left;margin:0;padding:0 0 .5em 0 }
@media (max-width:959px) {
.l-mainContent__inner>.post_content { margin-top:3em }
}

.l-topTitleArea .c-pageTitle,.l-topTitleArea.external-title .c-pageTitle { font-size:1.85em;text-align:center;font-weight:normal;font-size:2.6em;letter-spacing:2px }
div[data-setslug="company"] .l-topTitleArea .c-pageTitle,div[data-setslug="privacy-policy"] .l-topTitleArea .c-pageTitle,.l-topTitleArea.external-title .c-pageTitle { font-size:1.4em;color:#333;text-shadow:none }
div[data-setslug="company"] .l-topTitleArea,div[data-setslug="privacy-policy"] .l-topTitleArea,.l-topTitleArea.external-title { min-height:100px }
.external-title { display:flex;align-items:center;background:#e8e2dd }
@media (min-width: 600px) {
.l-topTitleArea { min-height:600px }
.l-topTitleArea .c-pageTitle {font-size:2.6em }
div[data-setslug="company"] .l-topTitleArea,div[data-setslug="privacy-policy"] .l-topTitleArea,.l-topTitleArea.external-title { min-height:130px }
}

@media (max-width:599px) {
.margin-LR-auto { margin-left:auto !important;margin-right:auto !important }
}

.p-breadcrumb__list { flex-wrap:wrap; }
.single .p-breadcrumb__item:last-child>span.p-breadcrumb__text { display:block!important;opacity:1;white-space:pre-wrap }


.fair-contents { display:flex;flex-wrap:wrap;align-items:stretch;border-top:dashed 1px #333;line-height:1.5;margin-bottom:3em }
.fair-contents dt { font-size:1.05em;width:180px;padding:1em 2.5em 1em 0.7em;font-weight:normal;border-bottom:dashed 1px #333;display:flex;align-items:center;margin:0 }
.fair-contents dd { font-size:0.95em;width:calc(100% - 180px);padding:1em 0.7em 1em 0;border-bottom:dashed 1px #333;display:flex;align-items:center;margin:0 }
@media (max-width:599px) {
.fair-contents { display:block }
.fair-contents dt { width:100%;padding:1em 0.7em 0 0.7em;border-bottom:none;display:block }
.fair-contents dd { width:100%;padding:0.5em 0.7em 1em 0.7em;display:block }
}
@media (max-width:959px) {
.fair-btn .swell-block-button[data-align=right],.fair-btn .swell-block-button[data-align=left] { text-align:center }
}
.fair-btn .is-style-btn_normal a { box-shadow:none }

.concept-point img { width: 130px }
.concept-text h2,h2.mincho { font-family: "Noto Serif JP", "Hiragino Mincho ProN", serif }
@media (max-width:959px) {
.concept-block:nth-child(even) > div { flex-direction:column-reverse; }
.concept-point img { width: 110px !important }
.concept-text { padding:0 !important }
.concept-text h2 { font-size:1.5em !important }
.concept-image { margin-left:auto !important;margin-right:auto !important }
.facility-block:nth-child(even) > div { flex-direction:column-reverse; }
.facility-block + .facility-block { margin-top:50px !important }
.facility-text { padding:0 !important }
.facility-image { padding-top:1em !important;margin-left:auto !important;margin-right:auto !important }
}

.company-table { display:flex;flex-wrap:wrap;border-top:solid 1px #999 }
.company-table dt { width:180px;margin:0 !important;padding:1em 2em 1em 0 !important;border-bottom:solid 1px #999 }
.company-table dd { width:calc(100% - 180px);margin:0 !important;padding:1em 0 !important;border-bottom:solid 1px #999 }
@media (max-width:599px) {
.company-table { font-size: 0.9em }
.company-table dt { width:110px;padding:1em 1em 1em 0 !important }
.company-table dd { width:calc(100% - 110px) }
}


/* form */

.form_area {
margin-top: 40px;
}
.form_area dt {
font-size: 16px;
font-weight: bold;
}
.form_area dd {
margin-top: 8px;
font-size: 16px;
}
.form_area dd + dt {
margin-top: 30px;
}
.form_area dt span {
display: inline-block;
font-size: 13px;
color: #ff0000;
padding-left: 10px;
}

.form_radio,
.form_check {
display: flex;
flex-direction: column;
}
.form_radio label,
.form_check label {
display: flex;
align-items: center;
}
.form_radio label input,
.form_check label input {
margin-right: 10px;
}
.form_radio label + label,
.form_check label + label {
margin-top: 4px;
}

.consent_check label {
display: grid;
grid-template-columns: auto auto;
gap: 6px;
align-items: start;
text-align: justify;
}
.consent_check label span {
margin-top: -1px;
}
.consent_text {
font-size: 14px;
margin-top: 1em;
text-align: justify;
}


.form_btn {
display: flex;
gap: 0 12px;
justify-content: center;
margin-top: 40px;
}
.form_btn input,
.form_btn.input,
.form_btn button,
.form_btn a {
width: 160px;
box-shadow: none;
color: #fff;
text-decoration: none;
text-align: center;
box-sizing: border-box;
border-radius: 4px;
font-size: 16px;
height: 50px;
box-sizing: border-box;
font-family: inherit;
font-weight: 500;
}
.form_btn.form_btn_w a {
width: auto;
min-width: 160px;
padding: 0 24px;
}
.form_btn .btn_send {
background: #e60012;
}
.form_btn .btn_back {
background: #828882;
}

.form_error {
display: block;
width: 100%;
border: solid 1px #ff0000;
color: #ff0000;
padding: 8px;
line-height: 1;
font-size: 15px;
margin-top: 8px;
}

@media (min-width: 600px) {
.form_area {
margin: 60px auto 0;
width: 100%;
display: grid;
grid-template-columns: 270px auto;
align-items: start;
gap: 40px 20px;
}
.form_area dd + dt {
margin-top: 0;
}
.form_area dd {
margin-top: 0;
}
.form_area dd:has( > input[type="text"] ),
.form_area dd:has( > select ),
.form_area dd:has( > textarea ) {
margin-top: -8px;
}

.form_radio,
.form_check {
flex-direction: row;
gap: 0 20px;
flex-wrap: wrap;
}
.form_radio label + label,
.form_check label + label {
margin-top: 0;
}

.consent_check label span {
margin-top: 0;
}
.consent_text {
margin-top: 2em;
}
.consent_text + .consent_text {
margin-top: 1em;
}


.form_btn {
margin-top: 50px;
gap: 0 24px;
}
.form_btn input,
.form_btn a {
width: 224px;
}
.form_btn.form_btn_w a {
width: auto;
min-width: 224px;
}
}

input[type="text"],
input[type="number"],
input[type="email"],
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.form_area input[type="text"],
.form_area input[type="tel"],
.form_area input[type="number"],
.form_area input[type="email"],
.form_area select,
.form_area option,
.form_area textarea {
	color: #222 !important;
	font-family: inherit !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	width: 100% !important;
	padding: 10px !important;
	box-sizing: border-box !important;
	border: solid 1px #ddd !important;
	border-radius: 4px;
	line-height: 1.4;
	background: #fff;
}
.form_area input.zip {
	width: 7em !important;
}
.form_area select {
	background: url(/btob/img/select.svg) calc(100% - 1rem) 50% no-repeat #fff;
}
.c-block { margin-top:-4em }
.tel-reserve { border:solid 1px #999;padding:1em;width:500px;margin:70px auto 0 }
@media (max-width:599px) {
.c-block { margin-top:-3em }
.tel-reserve {width:100% }
}

.p-mainVisual { overflow:visible }
.wedding-swiper { bottom:-30px !important }
.p-mainVisual .swiper-pagination-bullet-active { background:#176800 }



/* blog */

.post-type-archive-blog .p-postList.-type-simple,.tax-blog_category .p-postList.-type-simple,
.post-type-archive-report .p-postList.-type-simple,.tax-report_category .p-postList.-type-simple { border:none }
.blogList__item { margin-bottom:10px }
.blogList__item + .blogList__item { border-top:solid 1px #ddd;padding-top:1.4em;margin-top:1.4em }
.blogList__body { display:grid;grid-template-columns:5.2em 1fr;grid-template-rows:auto auto }
.blogList__meta { grid-row:1 / span 2 }
.blogList__body a { grid-row:1 }
.blog-tax-list { grid-row:2 }
.blogList__meta time { display:inline-block;background:#192f60;color:#fff;padding:3px 12px 7px;text-align:center;line-height:1.2 }
.blogList-y { font-size:0.85em }
.blogList-md { font-size:1em }
.blogList__title { font-size:1.1em;margin-top:0.5em }
.blog-tax-list { display:flex;flex-wrap:wrap;gap:3px 4px;margin-top:5px }
.blog-tax-list > li { white-space-nowrap;line-height:1;font-size:0.7em }
.blog-tax-list > li a { display:block;color:#000;background:#edde7b;padding:4px 6px 5px }
.blog-taxonomy-list { display:flex;flex-wrap:wrap;gap:3px 4px;margin:-10px 0 40px }
.blog-taxonomy-list > li a,.blog-taxonomy-list > li.current { display:block;text-align:center;padding:6px 6px 7px;line-height:1;font-size:0.85em;color:#000;background:#edde7b;position:relative;white-space:nowrap }
.blog-taxonomy-list > li.current::after { content:"";display:block;width:100%;height:2px;position:absolute;bottom:0;left:0;background:#c1ab05 }
.side-blog-ttl { position:relative !important }
.side-blog-ttl::after { content:"" !important;display:block;position:absolute;bottom:-8px;left:0;width:2.5em;height:2px;background:#ccc }
.single-blog .p-postList.-type-simple,
.single-report .p-postList.-type-simple { border:none;margin-top:20px !important }
.single-blog .-type-simple .p-postList__link,
.single-report .-type-simple .p-postList__link { border:none;padding:.4em .25em }
.single-blog .p-postList__times,
.single-report .p-postList__times { padding:0 }
.blog-category-terms { padding:0 .25em !important;list-style:none;margin-top:-5px }
.blog-category-terms > li { position:relative;padding-left:16px }
.blog-category-terms > li::before { content:"";display:block;width:8px;height:8px;border-top:solid 2px #444;border-right:solid 2px #444;position:absolute;top:0.5em;left:0;transform:rotate(45deg); }
.blog-header { display:flex;align-items:center }
.blog-date { width:5.2em }
.blog-date time { display:inline-block;background:#012c55;color:#fff;padding:3px 12px 7px;text-align:center;line-height:1.2 }
.blog-title { width:calc(100% - 5.2em);font-size:1.25em;line-height:1.35 }
.blog-single-tax-list { justify-content:flex-end;margin-top:8px }
@media (min-width:960px) {
.blogList__body { grid-template-columns:6.5em 1fr }
.blogList__meta time { padding:3px 16px 7px }
.blog-taxonomy-list { gap:4px 5px;margin:-10px 0 50px }
.blog-taxonomy-list > li a,.blog-taxonomy-list > li.current { padding:7px 10px 8px }
.single-blog .-type-simple .p-postList__link,
.single-report .-type-simple .p-postList__link { padding:.6em .25em }
.single-blog .-type-simple .p-postList__title,
.single-report .-type-simple .p-postList__title { font-size:1em }
.blog-date { width:6.3em }
.blog-date time { padding:3px 16px 7px }
.blog-title { width:calc(100% - 6.3em);font-size:1.35em }
}
.title-term { font-weight:normal;margin-top:0.5em;font-size:1.1em;padding:0 0.8em }
