/*
Theme Name: リリカエックス_ver_01_2025
Theme URL:
Author:
Author URI:
Description: リリカエックス_のテンプレートver01
Version: 9999
Tags:
License:
License URI:
*/
/* ==========================================================================
   Foundation
   ========================================================================== */
/* Reset
   ----------------------------------------------------------------- */

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav.gnav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:400;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav.gnav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}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}
figure{margin-bottom:0;}
/* Base
   ----------------------------------------------------------------- */

body{
	font-family:
	Meiryo, /* 1. メイリオ（Windowsを優先） */
 "Hiragino Maru Gothic ProN", /* 2. ヒラギノ丸ゴシック（Mac/iOS） */
 "Hiragino Kaku Gothic ProN", /* 3. ヒラギノ角ゴシック（Mac/iOS） */
 "Hiragino Sans", /* Mac/iOSの新しい角ゴシック */
 "Helvetica Neue", /* 欧文フォント */
 Arial, /* 欧文フォント */
 sans-serif; /* 最終的な代替フォント */
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
	color:#5f3322;
	margin:0 auto;
	background:url(img/body_bg.jpg) repeat-y 0 0 / 100% auto;

}
.wrapper{min-height:100vh;overflow:hidden;}


a{
	color:#2f2b26;
	text-decoration:none;
}


main a:hover{
	color:#b44de7;
}

img{
	vertical-align:top;
	max-width:100%;
	height:auto;
}
figcaption{
	text-align:center;
	font-size:clamp(13px, 1.5vw, 16px);
	line-height:1.5em;
	margin:5px 0;
}
ol{list-style:none}
strong{font-weight:bold;}
/* ==========================================================================
   共通
========================================================================== */
html{
	font-size:clamp(16px, 1.5vw, 19px);
	scroll-padding-top: 50px;/*追従headerの高さ指定*/
}
main{/*overflow:hidden;*/}

/*文字寄せ*/
.txt-right{text-align:right;}
.txt-center{text-align:center;}
/*一文字空白*/
.indent{text-indent: 1em;}
/*URL改行防止*/
main p{word-break: break-all;}


/*共通ボタン*/
.btn {text-align:center;}
.btn a{
	font-size:clamp(11px, 1.5vw, 16px);
	box-sizing:border-box;
	line-height:40px;
	text-align:center;
	min-width:220px;
	display:inline-block;
	margin:0 auto;
	border:solid 2px #aa1714;
	background-color:#aa1714;
	color:#ffe274;
	font-weight:bold;
	border-radius:22px;
	text-decoration: none;
}

.btn a:hover{color:#aa1714;background:#ffe274;opacity:1;}

/*共通テーブル*/
table.tbl100{width: 100%;}

.tbl01{
	margin-bottom: 1.5rem;
	box-sizing: border-box;
	border-top:solid 1px #ccc;
	border-left:solid 1px #ccc;
}
.tbl01 thead th{
	background:#e1dded;
	font-weight:bold;
	text-align:center;
}
.tbl01 tbody th{
	text-align:center;
}
.tbl01 tbody td{background:#fff;}
.tbl01 tbody td:nth-child(1){
	text-align:center;
}
.tbl01 tbody td.point{
	background:#f4f3f2;
}
.tbl01 tbody td.pr{text-align:center;}
.tbl01 td,
.tbl01 th{
	padding: 1rem ;
	line-height: 1.5rem;
	font-size:clamp(11px, 1.25vw, 15px);
	border-bottom:solid 1px #ccc;
	border-right:solid 1px #ccc;
	vertical-align: middle;
}


@media screen and (max-width: 768px){
.scroll{
	overflow: auto;
	white-space: nowrap;
	margin-bottom: 1em;
}
.scroll table{
	width: 100%;
	margin-bottom: 0.5em;
}
}
@media screen and (max-width: 480px){
.tbl01 td,
.tbl01 th{padding: 1rem 1rem;}
}



/*mapレスポンシブ*/
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 36.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}
@media screen and (max-width: 640px){
	.gmap {padding-bottom: 56.25%;}
}
/*動画レスポンシブ*/
.yt_movie {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.yt_movie iframe {
  width: 100%;
  height: 100%;
}



/*tel スマホサイズのみクリック可*/
@media (min-width: 769px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}



/*見出し*/

/*共通の見出しサイズ*/
h1,
h2,
h3,
h4,
h5,
p{line-height:1.5em;}

/*h1:not(.not){font-size:clamp(16px, 1.5vw, 19x);}
h2:not(.not){font-size:clamp(16px, 1.5vw, 19x);}
h3:not(.not){font-size:clamp(16px, 1.5vw, 19x);}
h4:not(.not){font-size:clamp(16px, 1.5vw, 19x);}
h5:not(.not){font-size:clamp(16px, 1.5vw, 19x);}
h6:not(.not){font-size:clamp(16px, 1.5vw, 19x);}*/
h1:not(.not),
h2:not(.not),
h3:not(.not),
h4:not(.not),
h5:not(.not),
h6:not(.not),
p,a{font-size:clamp(14px, 1.75vw, 19px);}

h1:not(.not) span,
h2:not(.not) span,
h3:not(.not) span,
h4:not(.not) span,
h5:not(.not) span,
h6:not(.not) span{display:inline-block;}
p span{display:inline-block;}

/*共通の見出し装飾と余白*/
.bold{font-weight: 700;}
h1:not(.not){margin-bottom:1rem;}
h2:not(.not){margin-bottom:1rem;}
h3:not(.not){margin-bottom:1rem;}
h4:not(.not){margin-bottom:1rem;}
h5:not(.not){margin-bottom:1rem;}
h6:not(.not){margin-bottom:1rem;}
p:not(.not){margin-bottom:1rem;}







/*共通リスト*/

/*丸ドットのリスト*/
ul.list01{
	margin-left: 0.5rem;
	margin-bottom:1.5rem;
}
ul.list01 > li{
	font-size:clamp(13px, 2vw, 16px);
	line-height: 1.5em;
	padding:0 0 0 26px;
	position:relative;
	margin-bottom:1rem;
}
ul.list01 > li:before{
	content: "";
	position:absolute;
	left:6px;
	top:calc(1em - 7px);
	width:8px;
	height:8px;
	background:#1F2E55;
	display: block;
	border-radius:5px;
}
/*数字リスト*/
ol.list-num01 {
	margin-left: 0.5rem;
	margin-bottom:1.5rem;
	counter-reset: listnum;
}
ol.list-num01 > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 1.5em;
	margin: 0 0 1rem 0;
	padding:0 0 0 26px;
	position:relative;
}
ol.list-num01 > li:before{
	position: absolute;
	left: 0px;
	counter-increment: listnum;
	content: counter(listnum) ".";
	width: 23px;
	text-align: right;
}

/*（）付き数字リスト*/
ol.in-list-num {
	margin-left: 0.5rem;
	margin-bottom:1.5rem;
	counter-reset: listnum;
}
ol.in-list-num > li{
	font-size:clamp(14px, 2vw, 16px);
	line-height: 2em;
	margin: 0 0 1rem 0;
	padding:0 0 0 26px;
	position:relative;
}
ol.in-list-num > li:before{
	position: absolute;
	left: 0px;
	counter-increment: listnum;
	content: "(" counter(listnum) ")";
	width: 23px;
	text-align: right;
}





/* ==========================================================================
   Layout
========================================================================== */


/* Header と side
----------------------------------------------------------------- */
header{
	width:100%;
	box-sizing:border-box;
	position:relative;
	height:50px;
	max-width:1340px;
	margin:0 auto;
	
}
header:after{
	max-width:1080px;
	content:"";
	    position: absolute;
	width:100%;
	height:220px;
	right:0;
	top:-110px;
	background-image: url(img/ribbon.png);
	background-repeat: no-repeat;
	background-position:bottom left;
	background-size:auto 100% ;
	background-size: cover;
}
@media screen and (max-width: 768px){
	header:after{
		width:100%;
	height:160px;
	top:-80px;
	
	}
	
}
@media screen and (max-width: 480px){
	    header:after {
        width: 100%;
        height: 110px;
        top: -30px;
    }
}

.header-in{
	max-width:650px;
	margin:0 auto;
	position:relative;
}
.header-in .h-logo{
	width:125px;
	position:absolute;
	z-index:9;
	right:20px;
	top:20px;
}
.header-in .h-logo a:hover img{
  transform: rotate(12deg);
  transition: transform 0.3s ease; 
}


@media screen and (max-width: 768px){
	.header-in .h-logo{width:115px;right:30px;}
}
@media screen and (max-width: 480px){
	.header-in .h-logo{width:80px;}
}

/* footer
---------------------------------------------------------------- */
footer{
	max-width:1180px;
	margin:0 auto;
	position:relative;
	}
.otherpage footer{height:200px;}
footer .address{
	color:#fff;
	font-size:clamp(11px, 1.25vw, 13px);
	max-width:650px;
	margin:0 auto;
	padding:10px 20px 0;
}
footer .address img{width:55%;}
.totop{
	position:absolute;
	z-index:9;
	right: 50px;
    bottom: 25px;
		width:35%;
		max-width:350px;
}
.totop a:hover img{
  transform: rotate(12deg);
  transition: transform 0.3s ease; 
}

.index #scrollTopBtn{display:none;}

.tohomeimg a{
	position: absolute;
	z-index: 8;
	background-image: url(img/back_to_home.png);
	background-position: left 5% top 30%;
	background-size: 33% auto;
	background-repeat: no-repeat;
	width: 35%;
	max-width: 350px;
	right: 10vw;
	bottom: 0px;
	content: "";
	display: block;
	aspect-ratio: 35 / 46;
}
.index .tohomeimg{display:none;}
@media screen and (max-width: 1200px){
	.totop{right: 5px;bottom: 15px;}
}



@media screen and (max-width: 768px){
.otherpage footer{height:unset;}
.totop{bottom:-50px;right:-50px;width:35%;}
.tohomeimg a{bottom:-50px;right: 0;}
}
@media screen and (max-width: 480px){
	.totop{right:-40px;width:40%;}
.tohomeimg a{bottom:-50px;right: 15px;}
}

/* ==========================================================================
   main内共通
========================================================================== */
.main-wrap{padding:0 40px;}
main{
	min-height:calc(100vh - 200px);
	max-width:690px;
	background:#fff;
	border:solid 20px #237514;
	margin:0 auto;
	padding:40px 20px;
	box-sizing:border-box;
	
}
/*toppageのみ*/
.index main{
	min-height:calc(100vh - 160px);
	display:flex;
	flex-direction:column;
	justify-content: space-between;
}
@media screen and (max-width: 480px){
	.main-wrap{padding:0 20px;}
	main{border:solid 10px #237514;}

}

.otherpage main{
	padding-bottom:4rem;
	min-height:calc(100vh - 100px);;
}

/*金色の枠*/
.gold_box_wrap{
	padding:0 10px;
	position:relative;
	width:100%;
	box-sizing:border-box;
	max-width:450px;
	margin:0 auto;
}
.gold_box_wrap::before,
.gold_box_wrap::after{
	content: "";
  position: absolute;
	width:25px;
	height:calc(100% - 6px);
	top:3px;
	background-image: linear-gradient(#ffff66, #d4a406 50%, #5e3d12 50%, #cd9a01);
}
.gold_box_wrap::before{
left:0;
clip-path:polygon(100% 0%, calc(100% - 15px) 50%, 100% 100%, 15px 100%, 0% 50%, 15px 0%);
}
.gold_box_wrap::after{
right:0;
clip-path:polygon(calc(100% - 15px) 0%, 100% 50%, calc(100% - 15px) 100%, 0% 100%, 15px 50%, 0% 0%);
}

.gold_box {
	width:100%;
	box-sizing:border-box;
	padding:15px 25px;
	line-height:1.5em;
  position: relative;
  display: inline-block;
  background-color:#CC9900;
	clip-path: polygon(16px 0%, calc(100% - 16px) 0%, 100% 50%, calc(100% - 16px) 100%, 16px 100%, 0% 50%);
}

.gold_box::before {
  content: "";
  position: absolute;
  inset:3px;
  background-color: #fff;
  clip-path: polygon(15px 0%, calc(100% - 15px) 0%, calc(100% - 1px) 50%, calc(100% - 15px) 100%, 15px 100%, 1px 50%);
  z-index: -1;
}



/* ==========================================================================
   section別
========================================================================== */


.page-tit{
	position:relative;
	z-index:1;
}
.page-tit::before{
	aspect-ratio: 1 / 1;
	width:30%;
	max-width:190px;
	height:auto;
	content: "";
	position: absolute;
	left: -100px;
	top: 0;
	z-index:-1;
	background-image:url(img/leaf.png);
	background-size:100% auto;
	background-position:center;
	background-repeat:no-repeat;
}
@media screen and (max-width: 768px){
	.page-tit::before{width:30%;left:-70px;}
}
@media screen and (max-width: 480px){
	.page-tit::before{left:-50px;top:30px;}
}

.otherpage .page-tit{
	box-sizing: border-box;
	margin:30px auto 110px;
}
.otherpage .page-tit h1{
	width:100%;
	max-width:400px;
	text-align:center;
	padding-bottom:.5rem;
	margin:0 auto;
	font-weight:bold;
}
.otherpage .page-tit .sub-tit{
	width:100%;
	max-width:400px;
	text-align:center;
	padding-top:.5rem;
	border-top:solid 3px #5f3322;
	margin:0 auto;
	font-weight:bold;
	line-height:1.5em;
}
.otherpage .page-tit .sub-tit span{    max-width: 18em;font-weight:bold;}
@media screen and (max-width: 768px){
.otherpage .page-tit{margin:10px auto 60px;}
}

.page-cont{
	width:100%;
	max-width:400px;
	box-sizing: border-box;
	margin:0 auto;
}
/*フロントページ =====================================*/
.index .page-tit{
	padding:.5rem 4rem 0 4rem;
}
.index .page-cont{
	max-width:432px;
}
.top_main_img{
	text-align:center;
	padding:0 20px;
	margin-bottom:20px;
}
@media screen and (max-width: 768px){
	.index .page-tit{padding:.5rem 2rem 0 2rem;}
}
@media screen and (max-width: 480px){
	.index .page-tit{padding:0;}
}
.list-index-nav{
	max-width:432px;
	margin:0 0 40px auto;
	padding-left: 2rem;
}
.list-index-nav > div{width:80%;max-width:216px;}
.list-index-nav > div:nth-child(1){margin:0 0 1rem auto;}
.list-index-nav > div:nth-child(2){margin:0 auto 1rem 0;}
.list-index-nav > div:nth-child(3){margin:0 auto 1rem;}
.list-index-nav > div a{
	display:block;
	font-weight:bold;
	padding:5px 10px;
	text-align:center;
	border-bottom:solid 3px #5F3322;
	box-sizing:border-box;
	font-size:clamp(14px, 1.75vw, 19px);
}
.list-index-nav > div a:hover{
	color:#b44de7;
	border-bottom:solid 3px #b44de7;
}

/*その他ページ =====================================*/
.otherpage .page-cont{
	margin-bottom:13rem;
}
.otherpage .page-cont p{
	max-width:18em;/*18文字サイズで*/
	margin:0 auto 1.5rem;
}
@media screen and (max-width: 768px){
	.otherpage .page-cont{margin-bottom:7rem;}
}
@media screen and (max-width: 480px){
	.otherpage .page-cont{margin-bottom:4rem;}
}


/*サーチ =====================================*/

.search_item .gold_box{padding:5px 25px;}
.search-form-5 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    overflow: hidden;
}
.search-form-5 label{width:100%;}
.search-form-5 input {
    height: 45px;
    padding: 5px 15px;
    border: none;
    box-sizing: border-box;
    font-size: 1em;
    outline: none;
		display: block;
    width: 100%;
		background-color:#fff;
}

.search-form-5 input::placeholder {color: #777777;}
.search-form-5 button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 45px;
    border: none;
    background-color: transparent;
    cursor: pointer;
}
.search-form-5 button::after {
    width: 20px;
    height: 20px;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20d%3D%22M23.7%2020.8%2019%2016.1c-.2-.2-.5-.3-.8-.3h-.8c1.3-1.7%202-3.7%202-6C19.5%204.4%2015.1%200%209.7%200S0%204.4%200%209.7s4.4%209.7%209.7%209.7c2.3%200%204.3-.8%206-2v.8c0%20.3.1.6.3.8l4.7%204.7c.4.4%201.2.4%201.6%200l1.3-1.3c.5-.5.5-1.2.1-1.6zm-14-5.1c-3.3%200-6-2.7-6-6s2.7-6%206-6%206%202.7%206%206-2.6%206-6%206z%22%20fill%3D%22%23CC9900%22%3E%3C/path%3E%20%3C/svg%3E');
    background-repeat: no-repeat;
    content: '';
}

.search-form-5 input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #fff inset;
    box-shadow: 0 0 0px 1000px #fff inset;
}
 input:valid {background-color:#fff;}


/*アップデート =====================================*/

.list-date li{
	text-align:center;
	margin-bottom:1.5rem;
}
.list-date li a{
	display:inline-block;
	
}


/* キーワード=====================================*/

.list-kw li{
	text-align:center;
	margin-bottom:1.5rem;
}
.list-kw li a{
	display:inline-block;
	
}


/* 一覧ページ=====================================*/

.cat_list{margin-bottom:1.5rem;}

.otherpage .cat_list .date{text-align:center;margin-bottom:0;}


.cat_list .tit-wrap{
	border-top: 1px solid #707070;
	padding: .5rem 0 0 0;
	max-width:300px;
	margin:0 auto;
}

.cat_list h2{
	max-width: 18em;
	margin: 0 auto 1rem;
	text-align:center;
}


.child-cat-list{margin-bottom:1.5rem;}
.child-cat-list li{
	text-align:center;
	margin-bottom:1.5rem;
}
.child-cat-list li a{
	display:inline-block;
}



.pagenavi{
	margin-top:2rem;
	text-align:center;
	font-size:clamp(14px, 1.75vw, 19px);
}
.pagenavi .current,
.pagenavi .current > span{
	font-weight:bold;
	color:#b44de7;
	font-size:clamp(14px, 1.75vw, 19px);
}



/* singleページ=====================================*/

.single{
	background-image: none;
}
.single.bg-show{
	background-image:url(img/single_bg.png);
	background-repeat:no-repeat;
	background-size:60% auto;
	background-position:left bottom 1em;
	padding-bottom: 8rem;

}

.bgimg{
	width: 60%;
}

.single-tit{
	position:relative;
	z-index:1;
	box-sizing: border-box;
	margin: 30px auto 110px;
}
.single-tit .date{
	width: 100%;
	max-width: 400px;
	text-align: center;
	padding-bottom: .5rem;
	margin: 0 auto;
}
.single-tit h1{
	width: 100%;
	max-width: 400px;
	text-align: center;
	padding-top: .5rem;
	border-top: solid 3px #5f3322;
	margin: 0 auto;
	line-height: 1.5em;
}
.single-tit h1 span{max-width: 18em;}

.single-tit::before{
	aspect-ratio: 1 / 1;
	width:30%;
	max-width:190px;
	height:auto;
	content: "";
	position: absolute;
	left: -100px;
	top: 0;
	z-index:-1;
	background-image:url(img/leaf.png);
	background-size:100% auto;
	background-position:center;
	background-repeat:no-repeat;
}

@media screen and (max-width: 768px){
	.single-tit{margin:10px auto 60px;}
	.single-tit::before{width:30%;left:-70px;}
}
@media screen and (max-width: 480px){
	.single-tit::before{left:-50px;top:30px;}
}



/*お問い合わせ*/

.otherpage .page-cont #contact-page p{
	margin:0;
	max-width:unset;
}

.otherpage .page-cont #contact-page .gold_box_wrap{
	margin-top:2rem;
}
.otherpage .page-cont #contact-page .gold_box_wrap .gold_box{
	padding:5px 25px;
}



.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea{
	padding: 0.5em 0.5em;
	width: 100%;
	/* width: 100vw; */
	box-sizing: border-box;
	font-size: 1em;
	text-align: center;
	height: 45px;
	border:none;
}


.sousin{
	width:80%;
	max-width:365px;
	margin:2rem auto ;
}
.sousin input[type="submit"] {

appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    /* デフォルトの文字を非表示にしたい場合は text-indent などで対応 */
    font-size: 0; /* テキストを非表示 */
    color: transparent; /* テキスト色を透明に */
    border: none;
    background: none;
    padding: 0;
		background-image: url('img/btn-send.png');
    background-size: contain; /* 画像をボタンサイズに合わせる */
    background-repeat: no-repeat;
    width: 100%;   /* ボタンの幅を指定 (画像サイズに合わせる) */
    height: auto;  /* ボタンの高さを指定 (画像サイズに合わせる) */
		 aspect-ratio: 365 / 205; 
    cursor: pointer; 
}

.modoru {
	width:80%;
	max-width:365px;
	margin:2rem auto ;
	text-align:center;
}
.modoru input{
	border: none;
	background: none;
	padding: 8px;
	background:#f8f8f8;
	cursor: pointer; 
	font-size:18px;
}

