@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    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
*/

body {
    font-family: "YakuHanJP_Narrow", "Zen Kaku Gothic New", "Noto Serif JP", sans-serif;
    color: #2F2F2F;
    background-color: #fcfcfc;
    font-size: 16px;
    letter-spacing: 0.1em;
	line-height:2.2;
	font-weight: 400;
	font-style: normal;
}
p{
	margin-bottom:2em;
}

.p-spMenu__body > .c-widget__title {
  display: none;
}

.l-header .l-container{
	max-width: 1176px;
}

.p-mainVisual{
	max-width: 640px;
    margin: 0 auto;
    overflow: visible;
}

.c-iconBtn{
	color:var(--color_main);
}

.l-header{
	background:none;
}

.lang-ja .top_message {
  position: relative;
  writing-mode: vertical-rl;
  line-height: 4rem;
  font-feature-settings: "vrt2" on;
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  margin: 6rem auto;
  padding: 1rem 1px;
  white-space: nowrap;
}

.lang-en .top_message {
    position: relative;
    line-height: 4rem;
    font-family: "Shippori Mincho", serif;
    margin: 3em auto 0 auto;
    white-space: nowrap;
    text-align: center;
    left: calc(50% - 200px);
    width: 400px;
    display: inline-block;
}

/* 擬似要素で線を描く */
.top_message::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4rem; /* ← 最初の行（右端）から1本分内側に */
  width: calc(100% - 4rem); /* 最後の行（左端）手前までに制限 */
  background-image: repeating-linear-gradient(
    to left,
    rgba(115, 46, 46, 0.1) 0px,
    rgba(115, 46, 46, 0.1) 1px,
    transparent 1px,
    transparent 4rem
  );
  background-size: 4rem auto;
  background-position: 0 top;
  pointer-events: none;
  z-index: 0;
}

.lang-en .top_message::before {
    content: "";
    position: absolute;
    top: 4rem;
    bottom: 0;
    left: 0;
    width: 100%;
    background-image: repeating-linear-gradient(to bottom, rgba(115, 46, 46, 0.1) 0px, rgba(115, 46, 46, 0.1) 1px, transparent 0, transparent 4rem);
    pointer-events: none;
    z-index: 0;
}

.post_content hr{
	margin: 6em auto;
}

.top_newpost,.top_pickup{
	font-size: 3.6em !important;
	color:var(--color_main);
	padding-left: 1.2em;
	margin-bottom: 1.8em !important;
	font-family: "Waterfall", cursive;
	margin-top: 2em !important;
	letter-spacing: 0;
}
.top_newpost::before,
.top_pickup::before{
    content: "";
    position: absolute;
    border: solid 1px var(--color_main);
    width: 100px;
    height: 1px;
	left:-1.2em;
    top: 0.85em;
	display: block;
}


.lang-ja .p-blogParts .top_msg_r,
.lang-ja .p-blogParts .top_msg_l{
    writing-mode: vertical-rl;
    font-feature-settings: "vrt2" on;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    color:#C9A6A0;
    position: absolute;
    font-size:1.5em;
    letter-spacing: 0.6em;
    transition: transform 0.3s ease;
}
.lang-ja .p-blogParts .top_msg_r{
    top:-700px;
    left: 50%;
    transform: translateX(clamp(50%, 33vw, 380px));
}
.lang-ja .p-blogParts .top_msg_l{
    top:-500px;
    left: 50%;
    transform: translateX(clamp(-440px, -40vw, -50%));
}

.lang-en .p-blogParts .top_msg_r,
.lang-en .p-blogParts .top_msg_l{
    font-family: "Shippori Mincho", serif;
    color:#C9A6A0;
    position: absolute;
    font-size:2em;
    letter-spacing: 0.2em;
    transition: transform 0.3s ease;
    width: 300px;
}
.lang-en .p-blogParts .top_msg_r{
    top: -680px;
    left: 12%;
    text-align: right;
    transform: translateX(clamp(50%, 33vw, 380px));
}
.lang-en .p-blogParts .top_msg_l{
    top:-470px;
    left: 50%;
    transform: translateX(clamp(-440px, -40vw, -50%));
}


.l-footer{
    background-color: transparent;
    margin-top: 3em;
}
.l-footer__nav li:first-child a{
	border-left:none;
}
.l-footer__nav a{
	border-right:none;
}
.l-footer .wp-block-image{
	margin-bottom: 0;
	padding-bottom:0;
}
.l-footer .footer_logo_img{
	size:100%;
}
.l-footer .footer_subtitle{
	font-size: 0.8em;
    letter-spacing: 0.5em;
	text-align:center;
}
.l-footer .footer_subtitle_en{
	font-size: 0.7em;
    letter-spacing: 0.1em;
	text-align:center;
	font-family: "Shippori Mincho", serif;
}

.post_content dt, .post_content h2, .post_content h3, .post_content h4{
    color:var(--color_main);
}

@media screen and (min-width: 961px) {
    .l-header__menuBtn.sp_ {
        display: block!important;
        position: relative;
        top: 14px; //表示位置
    }
    .p-spMenu {
        display: block!important;
    }
    .p-spMenu__inner {
        max-width: 600px; //幅を設定
    }
	p.pc_center{
		text-align:center;	
	}
}

@media screen and (max-width: 599px) {
    .l-content{
		margin: 0 1em;
    }
	.l-footer .wp-block-image img{
		margin-bottom: 0;
	}
	.wp-block-image img{
		margin-bottom: 2em;
	}
	.top_newpost, .top_pickup{
	    font-size: 3em !important;
	}
	.top_newpost::before, .top_pickup::before{
	    width: 85px;
		top: 0.8em;
	}
	.lang-ja .p-blogParts .top_msg_r,
	.lang-ja .p-blogParts .top_msg_l{
        color:#F5F0E6;
        font-size:1.2em;
        text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
    }
    .lang-ja .p-blogParts .top_msg_r{
        top: -66vh;
        left: 56vw;
        transform: translateX(-50%);
    }
    .lang-ja .p-blogParts .top_msg_l{
        top: -60vh;
        left: 44vw;
        transform: translateX(-50%);
    }

    .lang-en .p-blogParts .top_msg_r,
    .lang-en .p-blogParts .top_msg_l{
        color:#F5F0E6;
        font-size:1.2em;
        letter-spacing: 0.2em;
        text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
        width: 100%;
        text-align: center;
        left: 50vw;
        transform: translateX(-50%);
    }
    .lang-en .p-blogParts .top_msg_r{
        top: -56vh;
    }
    .lang-en .p-blogParts .top_msg_l{
        top: -45vh;
    }

    .lang-en .top_message {
        left: calc(50% - 160px);
        width: 320px;
        font-size: 0.8em;
    }
	.l-footer .footer_subtitle_en{
		font-size: 0.7em;
    	letter-spacing: 0.1em;
	}
}
