@charset "utf-8";

/*
16px基準文字サイズ
8px	  0.5rem
10px	0.625rem
11px	0.6875rem
12px	0.750rem
13px	0.8125rem
14px  0.875rem
15px	0.9375rem
16px	1rem
18px	1.125rem
20px	1.25rem
21px  1.3125rem
22px	1.375rem
24px	1.5rem
28px  1.75rem
30px  1.875rem
32px	2rem
36px	2.25rem 
38px	2.375rem 
39px	 2.4375rem
40px	 2.5rem
*/
/*
Layout（ページを構成する要素に対して使用するクラス）・・・「l-」
Component（複数のページで再利用できる要素に対して使用するクラス）・・・「c-」
Project（ページ単位で使用するクラス）・・・「p-」
Utility（強制的にスタイルを当てたりする調整用のクラス）・・・「u-」
*/

/* ================================================
   RESET
================================================ */
html, body, div, dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea,
p, blockquote, th, td {
margin: 0;
padding: 0;
}
h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: normal;
}
address, caption, cite, code, dfn, th, var {
font-style: normal;
font-weight: normal;
}
caption, th {
text-align: left;
}
ol, ul {
list-style: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
img, abbr, acronym, fieldset {
border: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: "";
}
img {
max-width: 100%;
height: auto;
vertical-align: top;
}
a {
display: block; 
text-decoration: none;
color: inherit;
outline: none;
}
a[href^="tel:"]{
   pointer-events: none;
   display: inline-block;
   color: #f76e02;
}
@media screen and (max-width: 768px) {
   a[href^="tel:"] {
       pointer-events: auto;
   }
}

/* ================================================
   BASIC
================================================ */
html {
	scroll-behavior: smooth;
}

@media (max-width: 1200px) {
  html {
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 0.9375rem;
  }
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}
/*html {
font-size:62.5%;
}
*/
body, .editor-styles-wrapper {
    font-size: 1rem;
    line-height: 1.5;
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
    /* color: #fff; */
    /* background: #000; */
    padding: 0px;
    margin: 0px;
    -webkit-text-size-adjust: 100%;
    letter-spacing: 0.05em;
    overflow: hidden;
    overflow-y: scroll;
    overflow-x: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    animation: loading 1s;
    position: relative;
}
@keyframes loading {
	0% {opacity: 0;}
	100% {opacity: 1;}
}

a {
color: #000;
-webkit-transition: all .4s;
transition: all .4s;
text-decoration: none;
opacity: 1;
}
a:hover {
opacity: 0.6;
-webkit-transition: all .4s;
transition: all .4s;
text-decoration:none;
}
@media screen and (min-width: 768px) {
   a[href^="tel:"] {
       pointer-events: none;
   }
}

/* WRAPPER
------------------------------------------------ */
#l-wrapper {
   position: relative;
}
#wrapper img {
max-width:100%;
height:auto;
}

@media screen and (max-width: 768px) {
	#l-wrapper {
		overflow: hidden;
	}
}

/* HEADER
------------------------------------------------ */
#header {
    width: 100%;
    position: fixed;
    z-index: 100;
    top: 0;
    padding: 1rem 0;
	background: rgba( 255,255,255,.9 );
}
.l-header_inr {
    /* position: relative; */
    margin: 0 auto;
    padding: 0 1.5rem;
    box-sizing: border-box;
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
}
.l-logo_otr {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.l-logo {
    margin: 0;
}
.l-logo a img {
    width: 100%;
    /* max-width: 20rem; */
}
.l-logo .sp-only {
    display: none;
}
.l-head_link {
   display: flex;
   align-items: center;
   justify-content: flex-start;
   margin-left: 2rem;
}
.l-head_link_item {
   overflow: hidden;
   display: flex;
    align-items: center;
    height: 100px;
}


.l-navi {
    border-left: 1px solid #000;
    padding: 0 0 0 .5rem;
}
.l-gnav {
    display: flex;
    gap: .5rem;
    align-items: baseline;
    justify-content: space-around;
}
.l-gnav_item {
    margin: 0;
}
.l-gnav_item:first-child {
    margin: 0;
}
.l-gnav_item a {
    font-size: 1rem;
    padding: 0.1rem 0.5vw;
    box-sizing: border-box;
    overflow: hidden;
    color: #000;
}



@media (max-width: 1200px) {
	#header {
		padding: 0.5rem 0;
	}
	.l-gnav {
		display: none;
	}
}
@media (max-width: 768px) {
	.l-logo a img {
		max-width: 12rem;
	}
	.l-logo .pc-only {
	}
	.l-logo .sp-only {
	}
	.l-header_inr {
	}
	.l-navi {
	}
}

@media screen and (max-width: 768px) {
   .l-logo {
   }
  .l-gnav_item a {
  }
  .l-gnav {
  }
  .l-gnav li a {
  }
  .l-gnav li {
  }
}
@media screen and (max-width: 640px) {
}
@media screen and (max-width: 540px) {
   .l-logo {
   }
}

/* VISUAL
------------------------------------------------ */
.p-hero {
    height: 100vh;
    position: relative;
    margin-bottom: 8rem;
}
.p-mv {
    width: 100vw;
    height: 100vh;
    position: relative;
    margin: 0 0 0 auto;
    box-sizing: border-box;
}



/* ------TOP背景スライド画像------ */
.mvimg-frame {
    position: relative;
    width: 100%;
    height: 100vh;
    aspect-ratio: 7 / 4;
    overflow: hidden;
    margin: 0 auto;
    z-index: 0;
}
.mvimg-frame .mvimg {
    position: absolute;
	top: 0;
    left: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
	background-position: 50% 50%;
	animation: slideAnime 20s ease infinite;
	opacity: 0;
}
.mvimg-frame .mvimg:nth-child(1) {
	background-image: url("images/mv01.jpg");
	animation-delay: 0s;
}
.mvimg-frame .mvimg:nth-child(2) {
	background-image: url("images/mv02.jpg");
	animation-delay: 5s;
}
.mvimg-frame .mvimg:nth-child(3) {
	background-image: url(images/mv03.jpg);
	animation-delay: 10s;
}
.mvimg-frame .mvimg:nth-child(4) {
	background-image: url(images/mv04.jpg);
	animation-delay: 15s;
}
/* フェードアニメーション */
@keyframes slideAnime {
  0% { opacity: 0; }
  12% { opacity: 1; }
  25% { opacity: 1; }
  37% { opacity: 0; }
  100% { opacity: 0; }
}

@media screen and (max-width: 768px) {
	.p-hero {
		height: 65svh;
		margin-bottom: 4rem;
	}
	.p-mv {
        height: 65svh;
        aspect-ratio: 4 / 3;
    }
	.mvimg-frame {
        height: 65svh;
        aspect-ratio: 4 / 3;
    }

	.mvimg-01, .mvimg-02, .mvimg-03, .mvimg-04 {
		background-position: 50% 50%;
	}
}


/* TOPページ　ご挨拶
------------------------------------------------ */
.p-top-message {
    max-width: 1000px;
    margin: auto;
    padding: 0 2rem 8rem;
}
.p-top-message_inr {
    display: flex;
    gap: 5vw;
}

.p-top-message_inr div:first-child {
    width: 65%;
}
.p-top-message_inr div:first-child p {
    font-size: 1.125rem;
    line-height: 2.75rem;
    letter-spacing: 0.1rem;
}

.p-top-message_inr div:nth-child(2) {
    text-align: center;
}
.p-top-message_inr div:nth-child(2) img {
    margin-top: 0.75rem;
}
.p-top-message_inr div:nth-child(2) p {
    font-family: "Hina Mincho";
    font-weight: 400;
    margin: 1rem auto;
}
.p-top-message_inr div:nth-child(2) p span {
    font-size: 1.5rem;
    margin-left: 1rem;
    vertical-align: sub;
}
.p-top-message.sp-only {
	display: none;
}

@media screen and (max-width: 768px) {
	.p-top-message.pc-only {
		display: none;
	}
	.p-top-message.sp-only {
		display: inherit;
	}
	.p-top-message_inr div:first-child {
		width: 100%;
	}
}
@media screen and (max-width: 640px) {
	.p-top-message_inr {
		flex-direction: column;
		gap: inherit;
		row-gap: 1rem;
	}
	.p-top-message_inr div:first-child p {
		font-size: 1rem;
		line-height: 2rem;
	}
}


/* TOPページ　トピックス
------------------------------------------------ */
.p-top-latest {
    background: #ededed;
}
.p-top-information_ttl {
    font-size: 2.5em;
    margin-bottom: 1rem;
    font-weight: bold;
}
.p-top_instagram_main {
   /*background-color: #ddd;*/
}
.p-top_instagram {
	width: 35%;
	text-align: center;
}
.p-top_news {
    background: #f8f3ed;
    padding: 8rem 0;
}
.p-top_news_otr {
    max-width: 1300px;
    margin: auto;
    padding: 0 2rem;
}
.p-top_news_ttl {
    width: 100%;
    display: flex;
    justify-content: center;
    text-align: center;
    margin-bottom: 4rem;
}
.p-top_news_ttl_inr {
    display: flex;
    flex-direction: column;
}

.p-top-latest_ttl {
    font-size: 2rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    display: flex;
    flex-direction: column;
    padding-bottom: 2rem;
    position: relative;
}
.p-top-latest_ttl span {
    font-size: 1rem;
    font-weight: normal;
    letter-spacing: 0.2rem;
    margin-top: 0.5rem;
}
.p-top-latest_ttl:after {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 1px;
    background: #a6a4a3;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.p-top-news_container {
}
.p-top-news_otr {
    display: flex;
    gap: 5%;
    row-gap: 4rem;
    flex-wrap: wrap;
    /* justify-content: space-between; */
}
.p-top-news_list {
    width: 30%;
}

.p-top-news_list a {
    padding: 0;
    color: #000;
}
.p-top-news_list_main {
    display: flex;
    flex-direction: column;
}

.p-top-news_list a:hover {
    opacity: 1;
}
.p-top-news_list a .p-top-news_list_img {
    overflow: hidden;
    background: #000000;
    aspect-ratio: 14 / 9;
    object-fit: cover;
}
.p-top-news_list a .p-top-news_list_img img {
    width: calc(100% + 8px);
    max-width: inherit;
    transition: all 1.2s ease-in-out;
    margin-top: -1px;
}
.p-top-news_list a:hover .p-top-news_list_img img {
    transform: scale(1.1);
	opacity: .5;
}

.p-top-news_list_main_data {
    margin: 1rem 0 0.5rem;
}
.p-top-news_list_day {
    display: inline-block;
    font-size: 1.125rem;
    font-weight: 400;
    font-family: "Noto Sans JP";
    line-height: 100%;
    color: #828282;
}
.p-top-news_list_ttl {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 1rem;
}
.p-top-news_txt {
    line-break: anywhere;
}

@media screen and (max-width: 768px) {
	.p-top-news_otr {
		gap: 6%;
	}
	.p-top-news_list {
		width: 47%;
	}
}

@media screen and (max-width: 640px) {
	.p-top-news_otr {
		gap: inherit;
		row-gap: 2rem;
	}
	.p-top-news_list {
		width: 100%;
	}
}

/* TOPページ　ピックアップ
------------------------------------------------ */
.l-pickup-bnr-block {
    padding: 4rem 0;
}
.l-pickup-bnr_otr {
    text-align: center;
    padding: 0 2rem;
    box-sizing: border-box;
}

.l-pickup-bnr_inr {
    /* display: flex; */
    margin-top: 4rem;
    display: grid;
    grid-template-columns: 3fr 3fr 3fr;
    gap: 0;
}
.l-pickup-bnr_inr li {
    background: #000;
}
.l-pickup-bnr_inr li a {
    position: relative;
    color: #fff;
    overflow: hidden;
}
.l-pickup-bnr_inr li a:hover {
    opacity: 1;
}
.l-pickup-bnr_inr li a img {
    width: 100%;
    max-width: inherit;
    height: auto;
    transition: all 1.2s ease-in-out;
    margin-top: -1px;
    scale: 1.2;
}
.l-pickup-bnr_inr li a:hover img {
    transform: scale(0.9);
    opacity: .5;
}
.l-pickup-bnr_inr li div {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    box-sizing: border-box;
    width: 70%;
    height: 50%;
}
.l-pickup-bnr_inr li h3 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}
.l-pickup-bnr_inr li p {
    font-size: 0.875rem;
    font-weight: 300;
}

@media screen and (max-width: 768px) {
	.l-pickup-bnr_inr {
        /* display: flex; */
        /* flex-direction: column; */
        grid-template-columns: 1fr;
    }
	.l-pickup-bnr_inr li div {
		width: calc(100% - 4rem);
		height: calc(100% - 4rem);
	}
	.l-pickup-bnr_inr li a {
		height: 35vw;
	}
	.l-pickup-bnr_inr li a img {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
	}
}

@media screen and (max-width: 640px) {
	.l-pickup-bnr_inr li div {
        width: calc(100% - 2rem);
        height: calc(100% - 2rem);
    }
	.l-pickup-bnr_inr li h3 {
		font-size: 1.5rem;
	}
	.l-pickup-bnr_inr li p {
		font-size: 0.75rem;
	}
}

/* TOPページ　アクセス
------------------------------------------------ */
.l-access-bnr-block {
    margin: 0 auto;
    padding: 6rem 2rem;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    background: #fff;
    border-radius: 0 0 4rem 0;
}
.l-access-bnr_otr {
    /* display: flex; */
    /* flex-wrap: wrap; */
    /* justify-content: space-between; */
    max-width: 1300px;
    margin: auto;
}
.l-access-bnr_inr {
}
.l-access-bnr_inr li:first-child {
    margin-bottom: 3rem;
}
.l-access-bnr_inr .p-top-latest_ttl {
    text-align: center;
    margin-bottom: 4rem;
}
.l-access-bnr_inr li p {
    font-size: 1.125rem;
    letter-spacing: 0.1rem;
    line-height: 2.125rem;
    max-width: 800px;
    margin: auto;
}
.l-access-bnr_inr a {
    color: #000;
}
.l-access-bnr_inr li p a {
    display: inline-block;
    margin-right: 1rem;
}

.l-access-bnr_inr li:last-child iframe {
    display: block;
    width: 100%;
    min-height: 27.375rem;
}

@media screen and (max-width: 768px) {
	.l-access-bnr_otr {
		flex-direction: column;
	}
	.l-access-bnr_otr div {
		width: 100%;
	}
	.l-access-bnr_otr div:first-child {
		height: 12rem;
	}
}

@media screen and (max-width: 640px) {
	.l-access-bnr_inr li p {
		font-size: 1rem;
		line-height: 1.5rem;
	}
	.l-access-bnr_inr li p a {
		margin: 1rem 0 0;
	}
}

/* CONTENTS
------------------------------------------------ */
.l-contents {
margin-top:8rem;
}

.l-top_inner {
	width: 100%;
	max-width: 1200px;
	padding-right: 1rem;
	padding-left: 1rem;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
.l-inner {
	width: 100%;
	max-width: 1250px;
	padding-right: 1rem;
	padding-left: 1rem;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	box-sizing: border-box;
}
.l-inner_wide {
    width: 100%;
    max-width: 100%;
    /* padding-right: 1rem; */
    /* padding-left: 1rem; */
    margin-right: auto;
    margin-left: auto;
    position: relative;
}


/* FOOTER
------------------------------------------------ */
.l-footer {
    padding: 4rem 0;
    background: #f2f2f2;
}
.l-footer_inr {
    position: relative;
    margin: 0 auto;
    padding: 0 1.5rem;
}
.l-footer_inr a {
    color: #000;
}
.l-footer_contents {
   max-width: 1200px;
   padding: 0 20px;
   margin: 0 auto;
   display: flex;
   justify-content: center;
   align-items: baseline;
   gap: 5rem;
}

.l-footer_main {
    display: flex;
    justify-content: space-between;
    align-items: end;
}
.l-footer_head {
}

.l-footer_logo {
    width: 15rem;
}

.l-footer_add {
    font-size: 1.125rem;
    font-weight: 300;
    letter-spacing: 0.1rem;
    line-height: 2.125rem;
    margin: 1rem 0;
}
.l-footer_add a {
    display: inline-block;
    margin-right: 1rem;
}
.l-footer_tel {
}

.l-footer_sub {
}

.l-privacy {
    font-size: 1.125rem;
}

.l-copy {
    font-size: 0.75rem;
    font-family: 'Noto Sans JP';
    font-weight: 400;
    color: #999;
    margin-top: 2rem;
    border-top: 1px solid #ddd;
    padding-top: 2rem;
}

@media (max-width: 768px) {

	.l-footer_main {
		flex-direction: column;
		align-items: flex-start;
	}
	.l-footer_contents {
	}
	.l-footer_logo {
	}
	.l-footer_link {
		text-align: center;
		margin: 2rem auto;
	}
	.l-footer_link_insta {
		display: inline-block;
	}
	.l-footer {
		margin-bottom: 0;
		margin-top: 0;
		padding-bottom: 4rem;
	}
	.l-footer_tel {
		font-size: 1.215rem;
	}
	.l-footer_sub {
		display: block;
		justify-content: space-between;
		gap: 3rem;
		flex-direction: unset;
		margin-top: 2rem;
		padding: 2rem 0 0;
	}
	.l-copy {
	}
	.l-footer_mark_list li {
		width: 30%;
	}
	.l-footer_mark_list {
		display: flex;
		flex-wrap: wrap;
		width: 80%;
		margin: 0 auto;
	}
	.l-footer_nav {
		gap: 1rem;
	}
	.l-footer_nav_list a,
	.l-footer_nav_list_sub a {
		font-size: 0.8735rem !important;
	}
	.l-footer_logo {
        width: 100%;
        max-width: 12rem;
    }
}

@media (max-width: 640px) {
}

/* ================================================
   コンテンツページ
================================================ */

.cheader {
    height: 65vh;
    background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;
}
.cheader.about {
    background-image: url("images/chead_about.png");
}
.cheader.eitaikyou {
    background-image: url("images/chead_eitaikyou.png");
}
.cheader.keidai {
    background-image: url("images/chead_keidai2.png");
}
.cheader.interment {
    background-image: url("images/chead_second-columbarium.png");
}
.cheader.dharma-talk {
    background-image: url("images/chead_dharma-talk.png");
}
.subheader {
    height: 65vh;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
}
.subheader.interment2 {
    /*background-image: url("images/subhead_interment2.jpg"); */
    height: inherit;
}
.subheader.interment3 {
    /* background-image: url(images/subhead_interment3.jpg); */
    height: inherit;
}

.l-contents_inr {
}
.l-contents_main, .l-contents_main.archive.dharma-talk {
    max-width: 1200px;
    margin: auto;
    padding: 4rem 2rem;
}
.l-contents_main.contactus, .l-contents_main.pages, .l-contents_main.archive, .l-contents_main.notfound {
    padding: 11rem 2rem 4rem;
}

.l-contents_ttl {
    text-align: center;
    margin-bottom: 4rem;
}

.l-contents_container {
}

.p-contents_txt_otr {
    max-width: 1000px;
    margin: 0 auto;
    border-bottom: 1px solid #ddd;
    padding: 4rem 0;
}

.c-ttl_sub {
    font-size: 1.5rem;
    margin-bottom: 2rem;
    text-align: center;
    letter-spacing: 0.25rem;
}
.c-ttl_sub2 {
    font-size: 1.3125rem;
    margin-bottom: 0.25rem;
}
.p-interment-price {
    font-size: 1.5rem;
    /* font-weight: 600; */
    margin-bottom: 0;
    text-align: center;
}
.p-interment-price span {
    font-size: 1.125rem;
}

.l-contents_container p {
    font-size: 1.125rem;
    line-height: 2.5rem;
    margin-bottom: 3rem;
}
.l-contents_container .p-simgle_contents p a {
    display: inline-block;
    text-decoration: underline;
    font-weight: 700;
    color: #265f09;
}

.u-author_name {
    text-align: right;
}

.u-none_border {
    border: none !important;
}

.p-about_list {
    margin-bottom: 3rem;
}
.p-about_list li:nth-child(odd) {
    background: #eee;
}
.p-about_list li dl {
    display: table;
    width: 100%;
}
.p-about_list li dl dt, .p-about_list li dl dd {
    display: table-cell;
    width: 50%;
    padding: 1rem 4rem;
}

.p-keidai_pcontents {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
}
.p-keidai_pcontents li:first-child {
    width: 40%;
}
.p-keidai_pcontents li:nth-child(2) {
    width: 55%;
}

.c-contents_otr_row2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem;
    row-gap: 1rem;
}
.c-contents_otr_row2 li {
    width: calc(50% - 0.5rem);
}
.l-contents_main2 {
    background: #f8f3ed;
}
.l-contents_main2 .l-contents_container {
    padding: 4rem 2rem;
}
.p-p_contents {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 4rem;
    row-gap: 4rem;
    margin-bottom: 4rem;
}
.p-p_contents li {
    width: calc(50% - 2rem);
}
.u-detail-photo {
    text-align: center;
}
.u-detail-photo img {
    max-height: 18.75rem;
    margin-bottom: 2rem;
}
.p-p_contents h3 {
    border-bottom: 1px solid #ccc;
    padding-bottom: 0.5rem;
}
.p-p_contents dl {
    display: flex;
}
.p-detail tr {
    border-bottom: 1px solid #ccc;
}
.p-detail th, .p-detail td {
    padding: 1rem 4rem;
}

.l-contents_main.contactus {
    padding: 11rem 2rem 4rem;
}
.contactus .c-ttl_sub {
    margin-bottom: 0.5rem;
}
.contactus .l-contents_container p {
    text-align: center;
    font-size: 1.25rem;
}
.contactus .l-contents_container p a {
    display: inline;
    color: #000;
}

.p-access_map_otr {
    margin-bottom: 4rem;
}
.l-access-bnr_inr li:last-child iframe, .p-access_map_otr iframe {
    display: block;
    width: 100%;
    min-height: 27.375rem;
}


@media (max-width: 768px) {
	.p-about_list li dl dt {
		padding: 1rem 0 1rem 1rem;
	}
	.p-about_list li dl dd {
		padding: 1rem 1rem 1rem 0;
	}
}

@media (max-width: 640px) {
	.contactus .l-contents_container p a {
		display: inline-block;
		margin: 0 auto;
		width: 100%;
	}
	.p-keidai_pcontents {
		flex-direction: column;
	}
	.p-keidai_pcontents {
		flex-direction: column;
	}
	.p-keidai_pcontents li:first-child {
		width: 100%;
		margin-bottom: 1rem;
	}
	.p-keidai_pcontents li:nth-child(2) {
		width: 100%;
	}

	.p-p_contents {
		flex-direction: column;
	}
	.p-p_contents li {
		width: 100%;
	}
	.p-p_contents li img {
        width: 100%;
        max-width: 360px;
        margin: 0 auto 2rem;
        display: block;
    }
	.p-detail th, .p-detail td {
		padding: 1rem;
	}
	.p-detail th {
		width: 9rem;
		padding-right: 0;
	}
}

/* 共通
------------------------------------------------ */
.c-main_uline_ttl {
    font-size: 2rem;
    font-weight: 600;
    padding: 0 0 .5rem;
    /* border-bottom: 1px solid #000; */
    margin-bottom: 2rem;
	position: relative;
}
.c-main_uline_ttl span {
    font-size: 1.7rem;
    letter-spacing: 0.325rem;
    color: #ddd;
    position: absolute;
    right: 0;
    bottom: 0.25rem;
    z-index: -1;
}
.c-main_uline_ttl::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0; /* 最初は幅0 */
  height: 1px; /* 線の太さ */
  background-color: #000; /* 線の色 */
  transition: width 3.5s ease-out; /* アニメーションの設定 */
}
/* JavaScriptでクラスを追加 */
.c-main_uline_ttl.is-active::after {
  width: 100%; /* スクロールしたら100%に */
}

.c-more_btn_otr {
    text-align: center;
    margin-top: 4rem !important;
}
.c-more_btn {
    display: inline-block;
}
.c-more_btn a {
    padding: 1.125rem;
    box-sizing: border-box;
    border: 1px solid #000;
    color: #000;
    min-width: 18.75rem;
}
.c-more_btn p {
    margin-bottom: 0;
}


.tel-link {
	pointer-events: none;
}
.fax-link {
    pointer-events: none;
}
.mail-link {
}

@media (max-width: 768px) {
	.tel-link {
		pointer-events: auto;
	}
}
@media (max-width: 640px) {
	.c-main_uline_ttl {
		font-size: 1.5rem;
	}
	.c-more_btn p {
		margin-bottom: 0;
		letter-spacing: -0.025rem;
	}
}

/* TOP
------------------------------------------------ */
.p-top-section {
    margin: 0 auto;
    /* padding: 8rem 0; */
    padding: 4rem 0;
}
.p-top-section_wide {
max-width: 100%;
margin: 0 auto;
padding: 8rem 0;
}
.p-top-section_inr {
max-width: calc(1200px - 30px);
margin: 0 auto;
position: relative;
}
.p-top-section_ttl {
font-size: 2.5em;
margin-bottom: 4rem;
font-weight: bold;
}
.p-top-section_ttl span {
   font-size: 1.215rem;
   font-weight: bold;
   margin-left: 1rem;
}
.p-top-section_ttl_lead {
   font-size: 1.125rem;
}
.p-top-section_head {
   position: relative;
   margin: 0 auto 4rem auto;
}
.__topttl_center {
    text-align: center;
}
.p-top-section_ttl_pic {
   display: block;
   line-height: 1;
   width: 12rem;
   text-align: center;
   margin: 0 auto;
}

.p-top-news_btn_otr {
    text-align: right;
    max-width: 1100px;
    padding: 2rem;
    margin: 4rem auto 0;
}
.p-top-news_btn {
    position: relative;
    display: inline-block;
    text-align: left;
    font-weight: 800;
    z-index: 3;
}
.p-top-news_btn:after {
    content: "";
    display: inline-block;
    width: 6.25rem;
    height: 6.25rem;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -1.5rem;
    margin: auto;
    z-index: -1;
}
.p-top-news_btn p {
    position: relative;
    font-size: 1.5rem !important;
    line-height: 100%;
    padding-right: 3rem;
    box-sizing: border-box;
    margin-bottom: 0 !important;
}
.p-top-news_btn p:before {
    content: "";
    display: inline-block;
    width: 1.25rem;
    height: 3px;
    background: #e60018;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1rem;
    margin: auto;
}
.p-top-news_btn p:after {
    content: "";
    display: inline-block;
    width: 0.625rem;
    height: 0.625rem;
    border-right: 3px solid #e60018;
    border-bottom: 3px solid #e60018;
    transform: rotate(-45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1rem;
    margin: auto;
}

.p-top-section_ttl_main {
   font-size: 3.5rem;
   font-weight: bold;
   position: relative;
   display: inline-block;
}




/* Contact
------------------------------------------------ */

@media screen and (max-width: 768px) {
}
@media screen and (max-width: 540px) {
}


/* ACCESS
------------------------------------------------ */
.p-btm_access {

}
.ggmap {
    position: relative;
    width: 100%;
    padding-top: 32.25%;
    /* 16:9のアスペクト比 */
    height: 0;
    filter: grayscale(100%);
}

.ggmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



/* パンくず
------------------------------------------------ */
.l-breadcrumbs {
    display: block;
    font-size: 0.750rem;
    margin: 0 auto;
    color: #828282;
    padding: 0 1rem;
}
.l-breadcrumbs span {
    color: #828282;
    display: inline-block;
}
.l-breadcrumbs span a {
	color: #828282;
}
.l-breadcrumbs span.post.post-page.current-item {
    text-decoration: underline;
}


/* PAGE
------------------------------------------------ */

@media screen and (max-width: 768px) {
}
@media screen and (max-width: 600px) {
}

/* ABOUT
------------------------------------------------ */


/* COMPANY
------------------------------------------------ */

@media screen and (max-width: 768px) {
}


/* History */

@media screen and (max-width: 768px) {
}
@media screen and (max-width: 640px) {
}
@media screen and (max-width: 540px) {
}


/* Sustainability
------------------------------------------------ */

@media screen and (max-width: 768px) {
}


/* Business
------------------------------------------------ */

@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 640px) {
}


/* BASE
------------------------------------------------ */

@media screen and (max-width: 768px) {
}
@media screen and (max-width: 600px) {
}


/* ACCESS（下層）
------------------------------------------------ */
.p-access-top {
    /* margin-top: -15rem; */
    margin-top: -10rem;
}
.p-access-detail_list {
}
.p-access-detail_list ul {
    max-width: 1000px;
    margin: 4rem auto;
    border-top: 1px solid #ddd;
}
.p-access-detail_list li {
    display: table;
    width: 100%;
    border-bottom: 1px solid #ddd;
}
.p-access-detail_list li dl {
    display: table-row;
}
.p-access-detail_list li dt, .p-access-detail_list li dd {
    display: table-cell;
    padding: 1rem;
}
.p-access-detail_list li dt {
    width: 25%;
}
.p-access-detail_list li dd {
    width: 75%;
}

.p-access-detail_list .p-about-staff_list {
    margin-bottom: 4rem;
}
.p-access-detail_list .p-about-staff_list_head h4, .p-access-detail_list .p-service-detail_list_txt {
    padding: 0 1rem;
}
.p-access-detail_list .p-about-staff_list_head h4 {
}
.p-access-detail_list .p-service-detail_list_txt {
    margin-bottom: 2rem;
    font-size: 1.125rem;
}

.p-access-detail_map iframe {
    margin: 0 auto 3.5rem;
}
.p-access-detail_map iframe:last-child {
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
.p-access-top {
    margin-top: -3rem;
}
.p-access-detail_list ul {
    margin: 0 auto;
}
.p-access-detail_list li dt {
    width: 5rem;
}
.p-access-detail_list li dd {
    width: calc(100% - 5rem);
    padding: 1rem 1rem 1rem 0;
}
.p-access-detail_list .p-service-detail_list_txt {
    padding: 0;
}
}

/* Prvacy policy
------------------------------------------------ */
.wp-block-heading {
    font-size: 1.3125rem;
    margin: 2rem 0 0.5rem;
}
ol.wp-block-list {
    list-style-type: decimal-leading-zero;
    margin-bottom: 2rem;
}
ol.wp-block-list li {
    margin-left: 1.8rem;
    margin-bottom: 0.25rem;
	font-weight: 300;
}
/*PRIVACY*/
.wrapHINAGATA h3 {
   margin:1.5em 0;
   font-size:1.125rem;
   padding:1rem 0;
   border-bottom:1px solid #ccc;
   font-weight:600;
   }
   div.wrapHINAGATA p{
      margin:1rem 0;
      line-height:1.5;
   }
   div.wrapHINAGATA ul{
      margin:20px 0 0 30px;
   }
   div.wrapHINAGATA ul li{
      list-style:outside decimal;
      line-height:140%;
      margin:10px 0 0 0;
   }
   div.wrapHINAGATA ul li ul{
      margin:15px 0 10px 10px;
   }
   div.wrapHINAGATA ul li ul li{
      list-style:outside none;
      margin-left:20px;
      text-indent:-1.5em;
   }
   div.wrapHINAGATA ul.child{
      margin:15px 0 0 10px;
   }
   div.wrapHINAGATA ul.child li{
      list-style:outside none;
      margin-left:45px;
      text-indent:-1.7em;
   }
   div.wrapHINAGATA p.tR{
      margin:30px 0 0 0;
      font-size:0.95em;
      line-height:140%;
      text-align:right;
   }
   div.wrapHINAGATA ul li ul li ol li{
      list-style:outside lower-roman;
      margin-left:20px;
      text-indent:-0.2em;
   }
   div.wrapHINAGATA ol{
      margin:1rem 0 0 2rem;
   }
   div.wrapHINAGATA ol li{
      list-style:outside decimal;
      line-height:140%;
      margin:1rem 0 0 0;
   }
   div.wrapHINAGATA ol li ol{
   margin-bottom: 20px;
   }
   div.wrapHINAGATA ol li ol li{
   font-size: 100%;
   }
.p-privacy_company {
   font-size: 1rem;

}

/* CONTACT（問い合わせフォーム）
------------------------------------------------ */


@media screen and (max-width: 768px) {
}


/* ARCHIVE
------------------------------------------------ */
.p-archive_list {
    margin: 2.5rem 0 0;
    border-bottom: 1px solid #ccc;
}
.topics .p-archive_list {
    margin: 0;
}
.p-archive_list li {
    border-top: 1px solid #ccc;
}
.topics .p-archive_list li {
    border: none;
    margin-bottom: 4rem;
}
.p-archive_list li a {
    position: relative;
    display: flex;
    gap: 2rem;
    color: #262626;
    align-items: flex-start;
}
.p-archive_list li a:hover {
    opacity: 1;
}
.post-thumbnail {
    width: calc(40% - 2rem);
    aspect-ratio: 14 / 9;
    object-fit: cover;
    overflow: hidden;
    background: #000000;
}
.p-archive_list li a .post-thumbnail img {
    width: calc(100% + 8px);
    max-width: inherit;
    transition: all 1.2s ease-in-out;
    margin-top: -1px;
}
.p-archive_list li a:hover .post-thumbnail img {
    transform: scale(1.1);
	opacity: .5;
}

.post-excerpt {
    width: 60%;
}
.l-contents_container .archive_txt p {
    margin: 0;
}
.archive_date {
    margin: 0 1.5125rem 0 0;
    font-size: 1.1252rem;
    padding: 1rem 4rem;
    color: #777;
}
.topics .archive_date {
    padding: 0;
    margin: 0;
}
.archive_ttl {
    position: relative;
    font-size: 1.1252rem;
    font-weight: normal;
    padding: 1rem 4rem;
}
.topics .archive_ttl {
    padding: 0.75rem 0;
    font-size: 1.5rem;
}

.page_nav {
    margin-top: 4rem;
    margin-bottom: 4rem;
    padding-top: 0;
    text-align: center;
}
.wp-pagenavi a, .wp-pagenavi span {
    display: inline-block !important;
    border: none !important;
    padding: 0 0.75rem !important;
}

@media screen and (max-width: 768px) {
	.p-archive_list li a {
		flex-direction: column;
		align-items: baseline;
		gap: 0;
	}
	.topics .p-archive_list li a {
		gap: 2rem;
	}
	.archive_date {
		padding: 0.75rem 0 0.25rem;
	}
	.archive_ttl {
		padding: 0 0 1rem;
	}
	.post-thumbnail {
		width: 100%;
	}
	.post-excerpt {
		width: 100%;
	}
}

/* SINGLE
------------------------------------------------ */
.single_date {
    color: #997d29;
    font-size: 1.1252rem;
    margin: 0 0 4rem;
    text-align: center;
}
h2.single_ttl {
    font-size: 1.5rem;
    margin: 0 0 1.5rem;
    text-align: center;
}
.dharma h2.single_ttl {
	text-align: center;
}
.dharma h2.single_ttl:before {
	content: "［ "
}
.dharma h2.single_ttl:after {
	content: " ］"
}
.single_wrap p {
    font-size: 1.125rem;
    font-weight: normal;
    margin: 28px 0;
    line-height: 1.8;
}
.single_wrap p b, .single_wrap p strong {
    font-weight: 900;
}
.single_wrap a {
    display: inline;
    color: #f46a00;
    text-decoration: underline;
    padding: 0 0.2rem;
}
.single_wrap h1 {
	font-size: 2.25rem;
	font-weight: 700;
	margin: 28px 0;
}
.single_wrap h2 {
	font-size: 1.75rem;
	font-weight: 700;
	margin: 28px 0;
}
.single_wrap h3 {
	font-size: 1.3125rem;
	font-weight: 700;
	margin: 28px 0;
}
.single_wrap h4 {
	font-size: 1.125rem;
	font-weight: 700;
	margin: 28px 0;
}
.single_wrap h5 {
	font-size: 0.9375rem;
	font-weight: 700;
	margin: 28px 0;
}
.single_wrap h6 {
	font-size: 0.750rem;
	font-weight: 700;
	margin: 28px 0;
}

.wp-block-image {
    margin-bottom: 2rem;
}

.single_nav {
    margin-top: 6.25rem;
    padding-top: 6.25rem;
    display: -ms-flexbox;
    display: flex;
    border-top: 1px solid #ccc;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.single_nav.u-sp_nav {
    display: none;
}
.single_nav div {
    width: 30%;
	font-size: 1rem;
}
.single_nav div.c-more_btn_otr {
    margin: -1.125rem 0 0 !important;
}
.single_nav div .c-more_btn {
    width: 100%;
}
.single_nav div .c-more_btn a {
    min-width: inherit;
}
.single_nav_prev {
    text-align: left;
}
.single_nav_next {
    text-align: right;
}
.single_nav_back {
    text-align: center;
}
.single_nav_prev a {
	padding-left: 30px;
	position: relative;
	display:inline-block;
}
.single_nav_next a{
	padding-right:30px;
	position: relative;
}
.single_nav_back span {
	position: relative;
}
.single_nav_back span:before {
	width: 16px;
	height: 16px;
	position: absolute;
	top: calc(50% - 8px);
	left: 0;
	content: '';
}

.single_nav_prev a:before {
    display: block;
    content: "";
    width: 8px;
    height: 8px;
    position: absolute;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    top: 0;
    bottom: 0;
    margin: auto;
    transform: rotate(135deg);
    left: 0;
}
.single_nav_next a:before {
    display: block;
    content: "";
    width: 8px;
    height: 8px;
    position: absolute;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    top: 0;
    bottom: 0;
    margin: auto;
    transform: rotate(-45deg);
    right: 0;
}
.wp-block-file a {
    display: inline-block;
}

@media screen and (max-width: 768px) {
	.single_wrap h2 {
		font-size: 1.25rem;
		margin: 0 0 2rem;
	}
	.single_wrap p {
		font-size: 1rem;
	}
}

@media screen and (max-width: 500px) {
	.single_nav.u-pc_nav {
		display: none;
	}
	.single_nav.u-sp_nav {
		display: flex;
		flex-wrap: wrap;
	}
	.single_nav.u-sp_nav .single_nav_prev, .single_nav.u-sp_nav .single_nav_next {
		width: 50%;
	}
	.single_nav.u-sp_nav .single_nav_back.c-more_btn_otr {
		width: 100%;
		margin: 2rem 0 0 !important;
	}
}

/* ADD
------------------------------------------------ */
.b {
font-weight:bold;
}
.center {
text-align:center;
}
.mt10 {
margin-top: 0.625rem !important;
}
.mt20 {
margin-top: 1.25rem !important;
}
.mt40 {
margin-top: 2.5rem !important;
}
.mt60 {
margin-top: 3.75rem !important;
}
.mt80 {
margin-top: 5rem !important;
}
.mt120 {
margin-top: 7.5rem;
}
.mb0 {
margin-bottom: 0 !important;
}
.f11{
font-size: 0.6875rem;
}
.f12{
font-size: 0.750rem;
}
.f14{
font-size: 0.875rem;
}
.f15{
font-size: 0.9375rem;
}
.f16{
font-size: 1rem;
}
.f18 {
font-size: 1.125rem;
}
.f21 {
font-size: 1.3125rem;
}
.f24 {
font-size: 1.5rem;
}
.red {
color: #cc0000;
}
.txt-r {
text-align: right;
}
.txt-l {
text-align: left !important;
}
.bg-gray1{
padding:20px;
background:#efefef;
}
.aligncenter {
display: block;
margin: 0 auto;
}
.alignright {
float: right;
}
.alignleft {
float: left;
}

/* FADE
------------------------------------------------ */
.js-scroll.-fadein {
  opacity: 0;
  transform: translateY(0);
}
.js-scroll.-fadein.js-active {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 4s ease, transform 4s ease;
}

/*--下からスライドイン--*/
.js-scroll.-slidein {
  opacity: 0;
  transform: translateY(5rem);
}
.js-scroll.-slidein.js-active {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 2.4s ease, transform 2.4s ease;
}

/*--左右からスライドイン--*/
.js-scroll.-slidein-left {
  opacity: 0;
  transform: translateX(-5rem);
}
.js-scroll.-slidein-left.js-active {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 2.4s ease, transform 2.4s ease;
}

.js-scroll.-slidein-right {
  opacity: 0;
  transform: translateX(5rem);
}
.js-scroll.-slidein-right.js-active {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 2.4s ease, transform 2.4s ease;
}

/*--要素がズームインしながら表示--*/
.js-scroll.-zoomin {
  transform: scale(0.8);
  opacity: 0;
}
.js-scroll.-zoomin.js-active {
  transform: scale(1);
  opacity: 1;
  transition: opacity 0.4s ease, transform 0.4s ease;
}

/*--フェードインのスピードずらし用--*/
.-fast {
  transition: opacity 0.4s ease, transform 0.4s ease !important;
}
.-slow {
  transition: opacity 4s ease, transform 4s ease !important;
}

 /*SPMENU*
------------------------------------------------ */
.c-hamburger {
    display: none;
    width: 150px;
    height: 100%;
    z-index: 20;
    padding: 0 0;
    position: fixed;
    right: 0;
    top: 0;
    border: none;
    background: none;
    cursor: pointer;
    box-sizing: border-box;
}
 
.c-hamburger span {
    position: relative;
    display: block;
    height: 1px;
    background-color: #000;
    transition: 0.3s ease-in-out;
    margin-left: auto;
    margin-right: auto;
    width: 1.75rem;
    /* box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); */
}
 
.c-hamburger.open {
}
 
.c-hamburger.open span {
}
 
.c-hamburger span:nth-child(1) {
    /* width: 1.5rem; */
}
 
.c-hamburger span:nth-child(2) {
    /* width: 1.5rem; */
    margin-top: 0.375rem;
    margin-bottom: 0.375rem;
}
 
.c-hamburger span:nth-child(3) {
    /* width: 1.5rem; */
    /* top: 0; */
}
 
.c-hamburger.open span {
    /* background-color: #fff; */
}
 
.c-hamburger.open span:nth-child(1) {
    top: 0.4375rem;/*＝7px*/
    transform: rotate(45deg);
}
 
 .c-hamburger.open span:nth-child(2) {
    background-color: transparent;
    box-shadow: none;
 }
 
.c-hamburger.open span:nth-child(3) {
    /* width: 1.5rem; */
    top: -0.4375rem;/*＝-7px*/
    transform: rotate(-45deg);
}

.c-hamburger p {
    margin: 0 auto;
    padding: 0 1rem;
    color: #fff;
    font-size: 16px;
    font-family: "Noto Serif JP", serif !important;
    font-weight: 500;
    letter-spacing: 1px;
}
.c-hamburger p.sub {
    font-size: 9px;
}

 /*ドロワー*/
.p-drawer__logo {
	max-width:8.75rem;
}
.p-drawer {
    /* display: none; */
    place-items: center;
    position: fixed;
    top: -100%;
    width: 100%;
    height: 100vh;
    z-index: 15;
    transition: all 0.8s;
    background-color: rgba(0, 0, 0, 0);
    padding-top: 4.5rem;
    padding-bottom: 0;
    color: #000;
    overflow: hidden;
    box-sizing: border-box;
}
.p-drawer a {
	color: #000;
}

.p-drawer.open {
    top: 0;
    background-color: #f8f3ed;
}
.p-drawer__wrap {
	height: 100vh;
	width: 100%;  
}
.p-drawer__navigation {
    max-width: 1450px;
    width: 100%;
    height: 100vh;
    overflow: scroll;
    margin: auto;
}
.p-drawer__navigation-wrap {
    height: auto;
    /* overflow-y: scroll; */
    padding: 1rem 2rem 2rem;
    box-sizing: border-box;
}
.p-drawer__navigation-wrap_main {
display: flex;
justify-content: space-between;
}
.p-drawer__navigation-wrap_main .p-drawer__navigation-items  {
width: 100%;
}

.p-drawer__navigation-wrap::-webkit-scrollbar {
width: 1px;
}
.p-drawer__navigation-wrap::-webkit-scrollbar-track {
}
.p-drawer__navigation-wrap::-webkit-scrollbar-thumb {
}
.p-drawer__navigation-subItems {}
.p-drawer__navigation-items {
}
.p-drawer__navigation-item {
letter-spacing: 0.075em;
line-height: 1.6;
color: #fff;
font-size: 1rem;
}
.p-drawer__navigation-item_sub {
display: flex;
}
.p-drawer__navigation-item_sub li {
}
.p-drawer__navigation-item_sub li a {
font-size:0.935rem;
padding: 0 0.5em 1.5em;
font-weight: normal !important;
color: #fff;
}
.p-drawer__navigation-items--bottom {
}
.p-drawer__navigation-item--bottom {
font-size: 1rem;
letter-spacing: 0.075em;
line-height: 1.6;
color: #fff;
}
.p-drawer__navigation-item {
border-bottom: 1px solid #ccc;
position: relative;
}
.p-drawer__navigation-item:last-child {
border-bottom:none;
}
.p-drawer__navigation-item a {
padding: 1.2em 0;
color: #000;
font-size: 1.125rem;
font-weight: 700;
position: relative;
display: block;
}

.p-drawer__navigation-item a:hover + .p-drawer__navigation-item:after {
transform-origin: left top;
transform: scale(1, 1);
}
.p-drawer__navigation-subItem {}
.p-drawer__navigation-subItem + .p-drawer__navigation-subItem {
}
.p-drawer__navigation-item + .p-drawer__navigation-item {
}
.p-drawer__navigation-item_company {
padding: 2em 1em ;
}
.p-drawer__navigation-item_company_name {
font-size:1.125rem;
font-weight: 600;
}
.p-drawer__navigation-item_company_tel {
font-size:1rem;
font-weight: 600;
letter-spacing: 0;
margin: 1em 0;
}
.p-drawer__navigation-item_company_tel a {
display: inline;
}
.p-drawer__navigation-item_company_add {
font-size:0.935rem;
}
.p-drawer__navigation-wrap_sub {
border-top: 1px solid #ccc;
}
.p-drawer__navigation-item_sub li a::before {
display: none !important;
}
.sp_sub_add {
margin: 1rem 0;
}
.sp_sub_data_add {
margin: 1rem 0;
}
.sp_sub_data_add a {
text-decoration: underline; 
}
.sp_sub_data_tel {
font-size: 1.125rem;
}
.sp_privacy {
    margin: 1rem 0 0;
    font-size: 0.875rem;
}
.sp_privacy a {
display: inline-block;
}

.sp_sub_data_business-hours {
margin-bottom: 1rem;
}
.sp_sub_data_business-hours dl {
display: flex;
flex-direction: column;
font-weight: 300;
}
.sp_sub_data_business-hours dt {
    /* font-size: 1.25rem; */
    /* font-weight: 700; */
    width: 15rem;
    margin: 2rem 0 1rem;
}

 @media screen and (max-width: 1200px) {
    .c-hamburger {
        display: block !important;
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        background: rgba(0, 0, 0, 1);
        z-index: 10000;
    }
}
 @media screen and (max-width: 768px) {
    .p-drawer {
		display: grid;
    }
   .p-drawer__navigation-wrap_main {
		display: block;
   }
   .p-drawer__navigation-wrap_main .p-drawer__navigation-items  {
		width: auto;
   }
    .p-drawer__navigation-item a {
        font-size: 0.875rem;
        padding: 0.5rem 0;
        /* padding-bottom: 0.5rem; */
        /* position: relative; */
    }
   .p-drawer__navigation-item:last-child {
		border-bottom: 1px solid #ccc;
   }
   .p-drawer__navigation-wrap_sub {
		border-top: none;
   }
	.sp_sub_data_business-hours dl dd {
		font-size: 0.875rem;
	}
	.sp_sub_data_business-hours dl dd br {
		display: none;
	}
}

@media screen and (max-width: 640px) {
	.c-hamburger {
		top: 0;
		right: 0;
		width: 8rem;
	}
	.c-hamburger p {
		font-size: 0.923rem;
		letter-spacing: 0.1rem;
	}
	.c-hamburger p.sub {
	font-size: 0.625rem;
	}
}