@charset "UTF-8";
/* CSS Document */
/* font
=========================================== */
@font-face { /*NotoSansJP*/
font-family: 'NotoSansJP'; src: url("../fonts/font/NotoSansJP-Regular.ttf"); src: url("../fonts/font/NotoSansJP-Regular.woff2") format("woff2"), url("../fonts/font/NotoSansJP-Regular.woff") format("woff"), url("../fonts/font/NotoSansJP-Regular.ttf") format("truetype"); font-weight: 400; }
@font-face { /*NotoSansJPミディアム*/
font-family: 'NotoSansJP'; src: url("../fonts/font/NotoSansJP-Medium.ttf"); src: url("../fonts/font/NotoSansJP-Medium.woff2") format("woff2"), url("../fonts/font/NotoSansJP-Medium.woff") format("woff"), url("../fonts/font/NotoSansJP-Medium.ttf") format("truetype"); font-weight: 500; }
@font-face { /*NotoSansJPボールド*/
font-family: 'NotoSansJP'; src: url("../fonts/font/NotoSansJP-Bold.ttf"); src: url("../fonts/font/NotoSansJP-Bold.woff2") format("woff2"), url("../fonts/font/NotoSansJP-Bold.woff") format("woff"), url("../fonts/font/NotoSansJP-Bold.ttf") format("truetype"); font-weight: 700; }
@font-face { /*Zen Old Minchoボールド*/
font-family: "Zen Old Mincho"; src: url("../fonts/font/ZenOldMincho-Bold.ttf"); src: url("../fonts/font/ZenOldMincho-Bold.woff2") format("woff2"), url("../fonts/font/ZenOldMincho-Bold.woff") format("woff"), url("../fonts/font/ZenOldMincho-Bold.ttf") format("truetype"); font-weight: 700; }
@font-face { /*Zen Old Minchoブラック*/
font-family: "Zen Old Mincho"; src: url("../fonts/font/ZenOldMincho-Black.ttf"); src: url("../fonts/font/ZenOldMincho-Black.woff2") format("woff2"), url("../fonts/font/ZenOldMincho-Black.woff") format("woff"), url("../fonts/font/ZenOldMincho-Black.ttf") format("truetype"); font-weight: 900; }
@font-face { /*Poppinsボールド*/
font-family: "Poppins"; src: url("../fonts/font/Poppins-Bold.ttf"); src: url("../fonts/font/Poppins-Bold.woff2") format("woff2"), url("../fonts/font/Poppins-Bold.woff") format("woff"), url("../fonts/font/Poppins-Bold.ttf") format("truetype"); font-weight: 700; }
/* Link
=========================================== */
a:link, a:visited { color: #000000; text-decoration: none; }

a:hover, a:active { color: #000000; text-decoration: none; }

a { outline: none; transition: 0.3s; }

a img { transition: 0.3s; }

:focus { outline: none; }

/* LAYOUT
=========================================== */
body { overflow: hidden; width: 100%; }

.pc { display: none !important; }

.sp { display: block; }

body { color: #000000; background: url("../img/common/bg01.jpg") repeat top left; background-size: contain; font-size: 15px; line-height: 1.45; font-family: 'NotoSansJP',"メイリオ","Mayryo ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS PGothic",sans-serif; font-weight: 500; font-style: normal; word-break: break-all; }

img { width: 100%; height: auto; }

table { width: 100%; table-layout: fixed; }

h1, h2, h3, h4, h5, h6 { font-weight: 700; }

.wrap { position: relative; }

input, select { -webkit-appearance: auto; appearance: auto; }

/*共通設定*/
.btn01 { width: 100%; max-width: 420px; height: 60px; margin: 40px auto 0; }

.btn01 a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; padding: 0 45px; box-sizing: border-box; position: relative; background: #4D473D; border-radius: 30px; }

.btn01 a .btn-text { color: #FFFFFF; text-align: center; }

.btn01 a .arrow { width: 24px; height: 24px; background: url("../img/common/btn_arrow01.svg") no-repeat center; background-size: 6px; border: 1px solid #FFFFFF; box-sizing: border-box; border-radius: 50%; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); }

.btn01.contact_btn a { padding: 0 10px; background: #51ACC4; }

.btn01.contact_btn a .btn-text { padding-left: 35px; box-sizing: border-box; font-size: 18px; position: relative; }

.btn01.contact_btn a .btn-text::before { content: ""; display: block; width: 27px; height: 20px; background: url("../img/common/mail_icon.svg") no-repeat center; background-size: contain; position: absolute; top: 5px; left: 0; }

.btn01.contact_btn a .arrow { display: none; }

.title01 { font-family: "Zen Old Mincho"; text-align: center; margin-bottom: 40px; }

.title01 .en { display: block; font-size: 15px; line-height: 1.46; color: #3B8FA5; text-transform: uppercase; }

.title01 .ja { display: block; font-size: 32px; line-height: 1.34; }

.title02 { margin-bottom: 28px; }

.title02 .sub { display: block; padding-left: 38px; box-sizing: border-box; font-size: 14px; line-height: 1.43; font-weight: 500; color: #51ACC4; margin-bottom: 12px; position: relative; }

.title02 .sub::before { content: ""; display: block; width: 30px; height: 1px; background: #51ACC4; position: absolute; top: 11px; left: 0; }

.title02 .title { display: block; font-family: "Zen Old Mincho"; font-size: 26px; line-height: 1.45; }

.tel_box .tel .num { font-size: 32px; font-weight: 700; line-height: 45px; }

.tel_box .tel-text { font-size: 15px; line-height: 22px; }

.tel_box .tel-text span { display: inline-block; font-size: 15px; line-height: 22px; padding: 0 2px; border: 1px solid #FFFFFF; box-sizing: border-box; margin-right: 5px; }

.under-cont > section { padding: 80px 5%; }

.under-cont > section:first-child { padding-top: 50px; }

.under-cont > section:nth-child(2n) { background: url("../img/common/bg02.jpg") repeat top left; background-size: contain; }

/*ウェブフォント*/
.normal { font-weight: 400; }

.medium { font-weight: 500; }

.bold { font-weight: 700; }

.black { font-weight: 900; }

.common_text { line-height: 2; }

.tcenter { text-align: center; }

.tleft { text-align: left; }

.tright { text-align: right; }

.min { font-family: "Zen Old Mincho"; }

.pop { font-family: "Poppins"; }

.text_uppercase { text-transform: uppercase; }

.text_capitalize { text-transform: capitalize; }

/*色*/
.shiro { color: #fff; }

.kuro { color: #000000; }

.cha { color: #4D473D; }

.mizu { color: #3B8FA5; }

.mt20 { margin-top: 20px; }

.flex { width: 100%; margin: 0; padding: 0; display: -webkit-box; display: -moz-box; display: -ms-box; display: -webkit-flexbox; display: -moz-flexbox; display: -ms-flexbox; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

/*header
---------------------------------------------------------------*/
#header { width: 100%; height: 50px; position: fixed; transition: 0.3s; left: 0; right: 0; top: 0; margin: auto; z-index: 100; }

.fixed #header { background: #fff; }

#header .header_inner { height: 100%; justify-content: space-between; align-items: center; flex-wrap: nowrap; position: relative; z-index: 100; }

#header .header_inner .logo_box { width: 123px; margin-left: 10px; position: relative; z-index: 1; }

#header .header_inner .logo { width: 100%; }

#header .header_inner .logo a { display: block; width: 100%; }

#header .header_inner .logo a img { width: 100%; }

#header .header_inner .logo a .logo-text { display: none; }

#header .header_inner .right { width: calc(100% - 133px); height: 100%; justify-content: flex-end; padding-top: 8px; box-sizing: border-box; margin-right: 75px; }

#header .header_inner .right .right_top { justify-content: flex-end; }

#header .header_inner .right .right_top .tel_box { width: 24px; height: 38px; }

#header .header_inner .right .right_top .tel_box .tel { width: 100%; height: 100%; }

#header .header_inner .right .right_top .tel_box .tel a { display: block; width: 100%; height: 100%; background: url("../img/common/tel_icon.svg") no-repeat center top; background-size: 20px; position: relative; }

#header .header_inner .right .right_top .tel_box .tel a::after { content: "電話"; display: block; width: 100%; font-size: 12px; line-height: 18px; text-align: center; position: absolute; bottom: 0; left: 0; }

#header .header_inner .right .right_top .tel_box .tel .num { display: none; }

#header .header_inner .right .right_top .tel_box .tel-text { display: none; }

#header .header_inner .right .right_top .btn01.contact_btn { display: none; }

/*gnav*/
.gnav { display: none; }

/* CTA */
#fixed-box { max-width: 100%; margin: 0; position: fixed; bottom: -100%; left: 0; z-index: 10; transition: 0.3s; }

.fixed #fixed-box { bottom: 0; }

#fixed-box a { border-radius: 0; }

/* nav
=========================================== */
.sp-nav-btn { width: 48px; z-index: 101; box-sizing: border-box; text-align: center; transition: 0.3s; position: absolute; top: 8px; right: 10px; }

.sp-nav-btn .sp-nav-btn_in { width: 24px; height: 18px; margin: 0 auto; position: relative; }

.sp-nav-btn .sp-nav-btn_in > span { width: 100%; height: 2px; background: #000000; border-radius: 1px; position: absolute; left: 0; transition: 0.3s; }

.sp-nav-btn .sp-nav-btn_in .border01 { top: 0; }

.sp-nav-btn .sp-nav-btn_in .border02 { top: 50%; transform: translateY(-50%); }

.sp-nav-btn .sp-nav-btn_in .border03 { bottom: 0; }

.sp-nav-btn > p { font-size: 12px; line-height: 18px; white-space: nowrap; text-align: center; margin-top: 2px; }

.sp-nav-btn.opon .sp-nav-btn_in .border01 { transform: translate(-50%, -50%) rotateZ(45deg); top: 50%; left: 50%; }

.sp-nav-btn.opon .sp-nav-btn_in .border02 { display: none; }

.sp-nav-btn.opon .sp-nav-btn_in .border03 { transform: translate(-50%, 50%) rotateZ(-45deg); bottom: 50%; left: 50%; }

.sp-nav-list .overlay-nav { visibility: hidden; width: 100%; height: 100%; position: fixed; top: 0; right: 0; background: rgba(0, 0, 0, 0.4); opacity: 0; }

.sp-nav-list .overlay-nav.opon { visibility: visible; opacity: 1; }

.sp-nav-list .navs-list { position: fixed; width: 100%; height: 100%; z-index: 99; top: 0; right: -100%; transition: 0.3s; overflow-x: hidden; overflow-y: auto; padding: 60px 5% 40px; box-sizing: border-box; background: #FFFFFF; }

.sp-nav-list .navs-list.opon { right: 0; }

.sp-nav-list .navs-list > ul { margin-bottom: 30px; }

.sp-nav-list .navs-list > ul > li { border-bottom: 1px solid #DEDEDE; }

.sp-nav-list .navs-list ul li .nav-midashi { display: block; padding: 20px 50px 20px 0; box-sizing: border-box; color: #000000; font-size: 16px; position: relative; }

.sp-nav-list .navs-list ul li .nav-midashi::after { content: ""; display: block; width: 20px; height: 20px; background: url("../img/common/spnav_open.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: 0.3s; }

.sp-nav-list .navs-list ul li .nav-midashi.on::after { transform: translateY(-50%) rotate(180deg); }

.sp-nav-list .navs-list ul li .sp-nav { display: flex; flex-wrap: wrap; justify-content: space-between; background: #F9F9F8; padding: 20px; box-sizing: border-box; }

.sp-nav-list .navs-list ul li .sp-nav li { width: 48%; margin-bottom: 10px; }

.sp-nav-list .navs-list ul li .sp-nav li.full { width: 100%; }

.sp-nav-list .navs-list ul li .sp-nav li:nth-last-child(-n+2) { margin-bottom: 0; }

.sp-nav-list .navs-list ul li .sp-nav li a { display: block; padding-left: 12px; box-sizing: border-box; background: url("../img/common/spnav_arrow.svg") no-repeat top 6px left; background-size: 7px; }

.sp-nav-list .navs-list .btn01.contact_btn { margin-top: 0; }

.sp-nav-list .navs-list .tel_box { margin-top: 16px; text-align: center; }

.sp-nav-list .navs-list .tel_box .num { padding-left: 36px; box-sizing: border-box; font-size: 40px; line-height: 1.4; position: relative; }

.sp-nav-list .navs-list .tel_box .num::before { content: ""; display: block; width: 28px; height: 28px; background: url("../img/common/tel_icon.svg") no-repeat center; background-size: contain; position: absolute; top: 14px; left: 0; }

.sp-nav-list .navs-list .tel_box .tel-text { margin-top: -5px; }

.sp-nav-list .navs-list .tel_box .tel-text span { display: none; }

/* main */
/*-------------------------------------------*/
#main { margin-top: 50px; }

#main.home_main { width: 100%; padding: 14px 5% 30px; box-sizing: border-box; text-align: center; position: relative; }

#main.home_main::before { content: ""; display: block; width: 280px; height: 240px; background: url("../img/main/main_bg03.png") no-repeat center right; background-size: contain; position: absolute; top: -12px; right: 0; }

#main.home_main .main-img_box { width: 100%; aspect-ratio: 67 / 48; position: relative; }

#main.home_main .main-img_box .main-img { width: 100%; height: 100%; border-radius: 20px; overflow: hidden; position: absolute; top: 0; left: 0; opacity: 0; animation: image-switch-animation 20s infinite; }

@keyframes image-switch-animation { 0% { opacity: 0; }
  5% { opacity: 1; }
  55% { opacity: 1; }
  60% { opacity: 0; }
  100% { opacity: 0; } }
#main.home_main .main-img_box .main-img:nth-of-type(1) { animation-delay: 0s; }

#main.home_main .main-img_box .main-img:nth-of-type(2) { animation-delay: 10s; }

#main.home_main .main-img_box .main-img.main-img01 { background: url("../img/main/main_img01.jpg") no-repeat center; background-size: cover; }

#main.home_main .main-img_box .main-img.main-img02 { background: url("../img/main/main_img02.jpg") no-repeat center; background-size: cover; }

#main.home_main .main-img_box01::after { content: ""; display: block; width: 80px; height: 90px; background: url("../img/main/il01.png") no-repeat center; background-size: contain; position: absolute; bottom: 0; right: 5px; }

#main.home_main .main-img_box02 { display: none; }

#main.home_main .main-text_box { display: inline-block; text-align: center; position: relative; margin-top: 20px; }

#main.home_main .main-text_box .main-hukidashi { width: 110px; height: 110px; padding-top: 15px; box-sizing: border-box; background: url("../img/main/hukidashi.png") no-repeat center bottom; background-size: contain; position: absolute; top: -110px; left: -20px; z-index: 1; }

#main.home_main .main-text_box .main-hukidashi > span { display: block; font-size: 13px; line-height: 1.44; }

#main.home_main .main-text_box .main-hukidashi > span.big { font-size: 14px; margin-bottom: -7px; }

#main.home_main .main-text_box .main-hukidashi > span.big .tate { writing-mode: vertical-rl; white-space: pre; letter-spacing: -0.3em; line-height: 1; }

#main.home_main .main-text_box .main-hukidashi > span.big em { display: inline-block; font-size: 38px; font-weight: 700; letter-spacing: -0.02em; margin: 0 2px 0 3px; }

#main.home_main .main-text_box .main_title { font-size: 30px; line-height: 1.45; font-weight: 900; margin-bottom: 28px; }

#main.home_main .main-text_box .main_title em { font-size: 40px; font-weight: 700; margin-right: 4px; }

#main.home_main .main-text_box .main_title em.mr0 { margin-right: 0; }

#main.home_main .main-text_box .main_title em.big { font-weight: 900; color: #3B8FA5; position: relative; }

#main.home_main .main-text_box .main_title em.big::before { content: ""; display: block; width: 80px; height: 14px; background: url("../img/main/line.png") no-repeat center; background-size: contain; position: absolute; bottom: -8px; left: 50%; transform: translateX(-50%); }

/* 下層 main */
/*-------------------------------------------*/
#main.kasou { width: 100%; padding: 0 5%; box-sizing: border-box; margin-top: 70px; }

#main.kasou .wrap { display: flex; justify-content: center; align-items: center; width: 100%; min-height: 100px; padding: 18px; box-sizing: border-box; background: #F2F1EF; border-radius: 50px; }

#main.kasou .main_title { font-family: "Zen Old Mincho"; font-size: 22px; line-height: 1.45; text-align: center; }

body.single-page_works #main.kasou .wrap, body.single-page_graveyard #main.kasou .wrap { display: block; padding-top: 21px; padding-bottom: 21px; border-radius: 10px; }

body.single-page_works #main.kasou .main_title, body.single-page_graveyard #main.kasou .main_title { text-align: left; }

/*パンくず*/
div#bread { width: 100%; padding: 4px 5% 0; box-sizing: border-box; }

ul.bread-list { font-size: 13px; justify-content: flex-end; }

ul.bread-list li { line-height: 19px; }

ul.bread-list li a { text-decoration: none; line-height: 19px; }

ul.bread-list li a:hover { text-decoration: underline; }

ul.bread-list li::after { content: "＞"; margin: 0 8px; }

ul.bread-list li:last-child::after { display: none; }

/* TOPへ戻る・追従 */
/*-------------------------------------------*/
#fixed_trigger { position: absolute; left: 0; top: 50px; z-index: -100; }

/* CLEARFIX
=========================================== */
.cf:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; overflow: hidden; font-size: 0.1em; line-height: 0; }

.cf { min-height: 1px; }

* html .cf { height: 1px; /*¥*/ 	                 /*/ height: auto; overflow: hidden; /**/ }

/* iOSでのデフォルトスタイルをリセット */
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; }

/*ライトボックス設定*/
#fancybox-wrap { padding: 0 !important; width: 100% !important; left: 0 !important; }

div#fancybox-content { border: none; width: 92% !important; padding: 2%; margin: 2%; height: auto !important; }

div#fancybox-outer { background: none; }

#fancybox-close { position: absolute; top: 0 !important; right: 0 !important; }

section { position: relative; }

/* footer */
/*-------------------------------------------*/
#contact-sec { background: #51ACC4; padding: 102px 5% 80px; text-align: center; }

#contact-sec .title_box { display: inline-block; text-align: center; margin-bottom: 20px; position: relative; }

#contact-sec .title_box .title01 { display: inline-block; margin-bottom: 0; }

#contact-sec .title_box img { display: block; width: 170px; position: absolute; top: -42px; left: -48px; }

#contact-sec .box-list { display: block; }

#contact-sec .box-list .box { padding: 20px 20px 30px; box-sizing: border-box; background: #3AA2BE; border-radius: 10px; margin-bottom: 20px; }

#contact-sec .box-list .box:last-child { margin-bottom: 0; }

#contact-sec .box-list .box > img { width: 40px; margin-bottom: 4px; }

#contact-sec .box-list .box h3 { font-size: 20px; font-weight: 500; }

#contact-sec .box-list .box .btn01 { margin-top: 17px; }

#contact-sec .box-list .box .btn01 a { padding: 0 40px; background: #FFFFFF; }

#contact-sec .box-list .box .btn01 a .btn-text { color: #5097AA; }

#contact-sec .box-list .box .btn01 a .arrow { width: 8px; height: 11px; background: url("../img/common/btn_arrow02.svg") no-repeat center; background-size: contain; border: none; right: 30px; }

#contact-sec .box-list .box01 .tel_box { margin-top: 4px; }

#contact-sec .box-list .box01 .tel_box .tel .num { color: #FFFFFF; }

#contact-sec .box-list .box01 .tel_box .tel-text { color: #FFFFFF; }

#map-sec { width: 100%; height: 280px; position: relative; }

#map-sec iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

#footer { padding: 60px 5% 120px; background: #FFFFFF; }

#footer .footer_box { display: block; margin-bottom: 40px; }

#footer .footer_box .left { max-width: 300px; margin: 0 auto; text-align: center; }

#footer .footer_box .left .logo { width: 173px; margin: 0 auto 20px; }

#footer .footer_box .left .logo a { display: block; width: 100%; }

#footer .footer_box .left .logo a img { width: 100%; }

#footer .footer_box .left .address { margin-bottom: 12px; }

#footer .footer_box .left .address02 { margin-bottom: 20px; }

#footer .footer_box .left .tel_box { display: inline-block; padding-left: 66px; box-sizing: border-box; text-align: left; position: relative; margin-bottom: 23px; }

#footer .footer_box .left .tel_box .tel .num { font-family: 'NotoSansJP'; font-size: 15px; font-weight: 500; line-height: 1.46; }

#footer .footer_box .left .tel_box .tel .num::before { content: "TEL："; }

#footer .footer_box .left .tel_box .tel-text { margin-top: 1px; }

#footer .footer_box .left .tel_box .tel-text span { display: block; width: 50px; line-height: 17px; text-align: center; padding: 6px 9px 7px; border: 1px solid #000000; box-sizing: border-box; margin-right: 0; position: absolute; top: 0; left: 0; }

#footer .footer_box .left .line-link { display: inline-block; }

#footer .footer_box .left .line-link a { display: flex; align-items: center; }

#footer .footer_box .left .line-link a .icon { display: block; width: 44px; height: 44px; background: url("../img/common/line_img02.png") no-repeat center; background-size: contain; margin-right: 12px; }

#footer .footer_box .left .line-link a .text { text-decoration: underline; transition: 0.3s; }

#footer .footer_box .right { margin-bottom: 40px; }

#footer .footer_box .right .navs-list { align-items: flex-start; justify-content: space-between; }

#footer .footer_box .right .navs-list .navs-list00 { width: calc(50% - 8px); margin-right: 16px; }

#footer .footer_box .right .navs-list .navs-list02 { margin-right: 0; }

#footer .footer_box .right .navs-list .navs-list00 > li { padding: 32px 0; border-bottom: 1px solid #DEDEDE; }

#footer .footer_box .right .navs-list .navs-list00 > li:first-child { border-top: 1px solid #DEDEDE; }

#footer .footer_box .right .navs-list .navs-list00 > li > a, #footer .footer_box .right .navs-list .navs-list00 .nav-midashi { font-size: 17px; line-height: 1.4; }

#footer .footer_box .right .navs-list .navs-list00 > li > a { padding-left: 28px; box-sizing: border-box; position: relative; }

#footer .footer_box .right .navs-list .navs-list00 > li > a::before { content: ""; width: 20px; height: 20px; background-color: #4D473D; background-image: url(../img/common/btn_arrow01.svg); background-repeat: no-repeat; background-position: center; background-size: 5px; border-radius: 50%; position: absolute; top: 3px; left: 0; transition: 0.3s; }

#footer .footer_box .right .navs-list .navs-list00 .sp-nav { padding-left: 8px; box-sizing: border-box; margin-top: 4px; }

#footer .footer_box .right .navs-list .navs-list00 .sp-nav li { margin-top: 12px; }

#footer .footer_box .right .navs-list .navs-list00 .sp-nav li.title { position: relative; }

#footer .footer_box .right .navs-list .navs-list00 .sp-nav li.title::before { content: "―"; display: block; position: absolute; top: 0; left: -23px; }

#footer .bottom_box { border-top: 1px solid #DEDEDE; padding-top: 40px; }

#footer .bottom_box .bottom_box_in { display: block; }

#footer .bottom_box .link_list { justify-content: center; margin-bottom: 16px; }

#footer .bottom_box .link_list li { font-size: 14px; line-height: 20px; margin-right: 20px; }

#footer .bottom_box .link_list li:last-child { margin-right: 0; }

#footer .bottom_box .copyright { font-size: 14px; line-height: 20px; text-align: center; }

/*parts
=========================================== */
.slider01 { margin-bottom: 0 !important; }
.slider01 .slick-list { padding: 0 10px; box-sizing: border-box; overflow: visible; }
.slider01 .slick-list .slick-track { display: flex; }
.slider01 .slick-list .slick-track .slick-slide { height: auto; margin: 0 10px; }
.slider01 .slick-prev, .slider01 .slick-next { width: 50px; height: 50px; background: #FFFFFF; border-radius: 50%; border: 1px solid #4D473D; box-sizing: border-box; transition: 0.3s; z-index: 1; }
.slider01 .slick-prev::before, .slider01 .slick-next::before { content: ""; display: block; width: 9px; height: 12px; opacity: 1; background: url("../img/common/slide_arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.slider01 .slick-prev:focus, .slider01 .slick-next:focus { background: #FFFFFF; }
.slider01 .slick-prev { left: -15px; }
.slider01 .slick-prev::before { transform: translate(-50%, -50%) scale(-1, 1); }
.slider01 .slick-next { right: -15px; }

ul.cate-list { width: auto; padding: 3px 8px 4px; box-sizing: border-box; background: #51ACC4; border-radius: 10px 0 8px 0; }
ul.cate-list li { display: inline-block; }
ul.cate-list li:after { content: "/"; margin: 0 2px; }
ul.cate-list li:last-child:after { display: none; }

.common_content a { display: block; width: 100%; height: 100%; background: #FFFFFF; border-radius: 10px; box-shadow: 0 0 8px rgba(0, 0, 0, 0.08); position: relative; }
.common_content a .img { width: 100%; border-radius: 10px 10px 0 0; position: relative; overflow: hidden; }
.common_content a .img .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }
.common_content a .img ul.cate-list { position: absolute; top: 0; left: 0; z-index: 1; }
.common_content .arrow { display: block; width: 30px; height: 30px; background: url("../img/common/btn_arrow01.svg") no-repeat top 12px left 14px, #4D473D; background-size: 7px; border-radius: 20px 0 10px 0; position: absolute; bottom: 0; right: 0; }

.point-list li { display: inline-block; padding: 1px 4px 2px; background: #ECECEC; border-radius: 3px; font-size: 14px; line-height: 20px; margin: 2px 2px 0 0; }
.point-list li:last-child { margin-right: 0; }

.bochi00 a .img { aspect-ratio: 118 / 85; }
.bochi00 a .info { padding: 20px; box-sizing: border-box; }
.bochi00 a .info .title { font-size: 19px; line-height: 1.45; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; margin-bottom: 8px; font-weight: 500; }
.bochi00 a .info .access-text { padding-left: 15px; box-sizing: border-box; position: relative; margin-bottom: 4px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.bochi00 a .info .access-text::before { content: ""; display: block; width: 11px; height: 14px; background: url("../img/common/map_icon.svg") no-repeat center; background-size: contain; position: absolute; top: 5px; left: 0; }
.bochi00 a .info .access-list { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.bochi00 a .info .info-table { display: block; padding-top: 12px; border-top: 1px solid #DEDEDE; margin-top: 12px; }
.bochi00 a .info .info-table tr:last-child th, .bochi00 a .info .info-table tr:last-child td { padding-bottom: 0; }
.bochi00 a .info .info-table tr th, .bochi00 a .info .info-table tr td { padding-bottom: 4px; }
.bochi00 a .info .info-table tr th { width: 83px; font-weight: 500; }
.bochi00 a .info .info-table tr td { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }
.bochi00 a .info .point-list { margin-top: 12px; }

ul.cate-list02 li { display: inline-block; padding: 0 7px 1px; box-sizing: border-box; border: 1px solid #51ACC4; border-radius: 11px; font-size: 13px; line-height: 19px; margin: 0 4px 4px 0; }
ul.cate-list02 li:last-child { margin-right: 0; }
ul.cate-list02 li.cate01 { background: #51ACC4; }
ul.cate-list02 li.cate02 { color: #51ACC4; }

.bochi01 a { display: block; width: 100%; }
.bochi01 a .img { width: 100%; aspect-ratio: 118 / 85; border-radius: 10px; overflow: hidden; position: relative; }
.bochi01 a .img .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }
.bochi01 a .info { margin-top: 12px; }
.bochi01 a .info .title { font-size: 19px; line-height: 1.45; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; margin-bottom: 10px; font-weight: 500; }
.bochi01 a .info .access-text { padding-left: 15px; box-sizing: border-box; position: relative; }
.bochi01 a .info .access-text::before { content: ""; display: block; width: 11px; height: 14px; background: url("../img/common/map_icon.svg") no-repeat center; background-size: contain; position: absolute; top: 5px; left: 0; }
.bochi01 a .info .access-list { padding-top: 12px; border-top: 1px solid #DEDEDE; margin-top: 12px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 4; -webkit-box-orient: vertical; }
.bochi01 a .info .sub_text { margin-top: 8px; font-size: 13px; padding-left: 1em; text-indent: -1em; }

.voice00 a .img { aspect-ratio: 118 / 81; }
.voice00 a .info { padding: 13px 20px 20px; box-sizing: border-box; }
.voice00 a .info .title { font-size: 19px; line-height: 1.4; font-weight: 500; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.voice00 a .info .text_box { padding-top: 15px; border-top: 1px solid #DEDEDE; margin-top: 15px; }
.voice00 a .info .text_box .text01 { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.voice00 a .info .text_box .name { margin-top: 15px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; }

.works00 a .img { aspect-ratio: 59 / 42; }
.works00 a .info { padding: 11px 10px 23px; box-sizing: border-box; }
.works00 a .info .title { min-height: 50px; font-size: 17px; font-weight: 500; line-height: 25px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.works00 a .info .access-text { padding: 15px 0 0 17px; box-sizing: border-box; border-top: 1px solid #DEDEDE; margin-top: 15px; position: relative; }
.works00 a .info .access-text::before { content: ""; display: block; width: 13px; height: 16px; background: url("../img/common/map_icon.svg") no-repeat center; background-size: contain; position: absolute; top: 18px; left: 0; }

.blog00 a { background: transparent; border-radius: 0; box-shadow: none; }
.blog00 a .img { aspect-ratio: 335 / 232; border-radius: 10px; margin-bottom: 12px; }
.blog00 a .info .time { color: #928B7B; margin-bottom: 4px; }
.blog00 a .info .title { font-size: 18px; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }

.wrap.twin { display: block; }
.wrap.twin div#two-side { margin-bottom: 40px; }
.wrap.twin div#two-side .side_box { margin-bottom: 20px; }
.wrap.twin div#two-side .side_box:last-child { margin-bottom: 0; }
.wrap.twin div#two-side .side_box .side-tit { font-size: 16px; font-weight: 500; line-height: 23px; padding-left: 10px; margin-bottom: 12px; position: relative; }
.wrap.twin div#two-side .side_box .side-tit::before { content: ""; display: block; width: 2px; height: calc(100% - 3px); background: #51ACC4; position: absolute; top: 3px; left: 0; }
.wrap.twin div#two-side .side_box .side-inner select { width: 100%; height: 40px; box-sizing: border-box; padding: 8px 35px 8px 10px; font-size: 16px; line-height: 1.5; font-weight: 500; border: 1px solid #E4E4E4; font-family: 'NotoSansJP'; background: url("../img/common/select_arrow.svg") no-repeat center right 20px, #FFFFFF; background-size: 10px; border-radius: 0; -webkit-appearance: none; appearance: none; cursor: pointer; color: #000000 !important; }
.wrap.twin div#two-side .side_box .side-inner select option { color: #000000 !important; }

.wp-pagenavi > span, .wp-pagenavi > a { display: inline-block; width: 40px; height: 40px; border: 1px solid #4D473D; border-radius: 5px; box-sizing: border-box; margin: 0 2px; text-decoration: none; font-size: 16px; font-weight: 700; color: #4D473D; line-height: 40px; transition: 0.3s; }

.wp-pagenavi { text-align: center; margin-top: 40px; }
.wp-pagenavi a:hover, .wp-pagenavi span.current { background: #4D473D; color: #FFFFFF; }
.wp-pagenavi a.page { position: relative; }
.wp-pagenavi span.extend { width: auto; margin: 0; border: 0; font-size: 13px; }
.wp-pagenavi span.pages { display: none; }
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink { position: relative; color: transparent; }
.wp-pagenavi a.previouspostslink:hover, .wp-pagenavi a.nextpostslink:hover { color: transparent; }
.wp-pagenavi a.previouspostslink:hover::before, .wp-pagenavi a.nextpostslink:hover::before { filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(2deg) brightness(100%) contrast(107%); }
.wp-pagenavi a.previouspostslink::before, .wp-pagenavi a.nextpostslink::before { content: ""; width: 8px; height: 12px; background: url("../img/common/page_arrow01.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.wp-pagenavi a.previouspostslink::before { transform: translate(-50%, -50%) scale(-1, 1); }
.wp-pagenavi a.first, .wp-pagenavi a.last { position: relative; color: transparent; }
.wp-pagenavi a.first:hover, .wp-pagenavi a.last:hover { color: transparent; }
.wp-pagenavi a.first:hover::before, .wp-pagenavi a.last:hover::before { filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(2deg) brightness(100%) contrast(107%); }
.wp-pagenavi a.first::before, .wp-pagenavi a.last::before { content: ""; width: 14px; height: 12px; background: url("../img/common/page_arrow02.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.wp-pagenavi a.first::before { transform: translate(-50%, -50%) scale(-1, 1); }

.post-navigation { margin-top: 40px; }

.post-navigation ul { justify-content: center; align-items: center; position: relative; }

.post-navigation ul > li { width: calc((100% / 3) - 4px); max-width: 110px; }
.post-navigation ul > li a { display: block; width: 100%; height: 40px; padding: 10px 15px; box-sizing: border-box; border: 1px solid #4D473D; border-radius: 20px; position: relative; font-size: 13px; font-weight: 700; line-height: 18px; color: #4D473D; }
.post-navigation ul > li a:focus, .post-navigation ul > li a:hover { text-decoration: none; background: #4D473D; color: #FFFFFF; }
.post-navigation ul > li a:focus::before, .post-navigation ul > li a:hover::before { filter: brightness(0) saturate(100%) invert(100%) sepia(7%) saturate(6320%) hue-rotate(308deg) brightness(124%) contrast(97%); }
.post-navigation ul > li a::before { content: ""; display: block; width: 4px; height: 6px; background: url("../img/common/page_arrow01.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; transform: translateY(-50%); transition: 0.3s; }

.post-navigation ul > li.prev a { padding-left: 26px; }
.post-navigation ul > li.prev a::before { left: 15px; transform: translateY(-50%) scale(-1, 1); }

.post-navigation ul > li.next a { padding-right: 26px; }
.post-navigation ul > li.next a::before { right: 15px; }

.post-navigation ul > li.blog-back { margin: 0 5px; }
.post-navigation ul > li.blog-back a { background: #4D473D; color: #FFFFFF; text-align: center; }
.post-navigation ul > li.blog-back a:focus, .post-navigation ul > li.blog-back a:hover { background: transparent; color: #4D473D; }
.post-navigation ul > li.blog-back a::before { display: none; }

.post-navigation ul > li.kara { opacity: 0; pointer-events: none; }

/*TOPページ　p01
=========================================== */
#voice-sec .cnt { display: block; }

#support-sec .cnt { display: block; }
#support-sec .cnt .text_box { margin-bottom: 40px; }
#support-sec .cnt .img_box { width: 100%; max-width: 510px; margin: 0 auto; }

#area-sec .cnt .img_box { width: 100%; max-width: 660px; margin: 0 auto 33px; }
#area-sec .cnt .area-list { display: flex; justify-content: space-between; flex-wrap: wrap; }
#area-sec .cnt .area-list li { width: calc(50% - 13px); border-bottom: 1px solid #DEDEDE; margin-right: 13px; }
#area-sec .cnt .area-list li:nth-child(-n+2) { border-top: 1px solid #DEDEDE; }
#area-sec .cnt .area-list li:nth-child(2n) { margin-right: 0; }
#area-sec .cnt .area-list li a { display: block; padding: 16px 30px 16px 0; box-sizing: border-box; position: relative; }
#area-sec .cnt .area-list li a .text { font-size: 18px; }
#area-sec .cnt .area-list li a .arrow { display: block; width: 20px; height: 20px; background: url("../img/common/btn_arrow01.svg") no-repeat center, #6D6045; background-size: 5px; border-radius: 50%; position: absolute; top: 50%; right: 0; transform: translateY(-50%); transition: 0.3s; }

.home #bochi-sec { padding: 80px 5%; }
.home #voice-sec { padding: 80px 5%; background: url("../img/common/bg02.jpg") repeat top left; background-size: contain; }
.home #works-sec { padding: 80px 5%; }
.home #support-sec { padding: 80px 5%; background: url("../img/common/bg02.jpg") repeat top left; background-size: contain; }
.home #area-sec { padding: 80px 5%; }

#topbox01 { padding: 30px 5% 80px; }
.banner_box01 {width: 100%;min-height: 52px;margin-bottom: 25px;}
.banner_box01 a {
	display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
	height: 100%;
	padding: 5px 30px;
    background: #FFFFFF;
    border-radius: 5px;
    border: 1px solid #04204F;
	box-sizing: border-box;
	position: relative;
}
.banner_box01 a .btn-text {
	display: block;
	font-size: 15px;
	line-height: 1.46;
	font-weight: 700;
	color: #04204F;
	text-align: center;
}
.banner_box01 a .btn-text .sub {
	display: block;
	font-size: 13px;
	line-height: 1.44;
	font-weight: 500;
}
.banner_box01 a .arrow {
	display: block;
	width: 24px;
	height: 24px;
	background: url(../img/top/banner_arrow.svg) no-repeat top 9px left 11px, #04204F;
	background-size: 5px;
	border-radius: 20px 0 3px;
	position: absolute;
	bottom: 0;
	right: 0;
}
#topbox01 .cnt { display: block; }
#topbox01 .cnt .title01 { text-align: left; margin-bottom: 20px; }
#topbox01 .cnt .title01 .ja { font-size: 28px; }
#topbox01 .cnt .top-news_list .top-news01:first-child a { border-top: 1px solid #E3E3E3; }
#topbox01 .cnt .top-news_list .top-news01 a { display: block; padding: 20px 0; box-sizing: border-box; border-bottom: 1px solid #E3E3E3; position: relative; }
#topbox01 .cnt .top-news_list .top-news01 a .info { align-items: center; }
#topbox01 .cnt .top-news_list .top-news01 a .info .time { margin: 0 4px 4px 0; }
#topbox01 .cnt .top-news_list .top-news01 a .info .news-cate-list { width: auto; margin-bottom: 5px; }
#topbox01 .cnt .top-news_list .top-news01 a .info .news-cate-list li { display: inline-block; padding: 0 8px 1px; box-sizing: border-box; background: #E6E6E6; border-radius: 11px; font-size: 14px; line-height: 20px; margin-right: 5px; }
#topbox01 .cnt .top-news_list .top-news01 a .info .news-cate-list li:last-child { margin-right: 0; }
#topbox01 .cnt .top-news_list .top-news01 a h3 { font-weight: 500; display: -webkit-box; overflow: hidden; -webkit-line-clamp: 1; -webkit-box-orient: vertical; transition: 0.3s; }

#topbox02 { padding: 80px 5%; background: url("../img/common/bg02.jpg") repeat top left; background-size: contain; }
#topbox02 .feat-list .feat01 { display: block; margin-bottom: 60px; }
#topbox02 .feat-list .feat01:last-child { margin-bottom: 0; }
#topbox02 .feat-list .feat01 .img_box { max-width: 480px; margin: 0 auto 12px; }
#topbox02 .feat-list .feat01 .text_box .num { display: inline-block; padding: 1px 8px 2px; box-sizing: border-box; background: #51ACC4; border-radius: 12px; margin-bottom: 8px;}
#topbox02 .feat-list .feat01 .text_box .num span { display: inline-block; margin-left: 2px; letter-spacing: 0.02em; }
#topbox02 .feat-list .feat01 .text_box h3 { font-size: 22px; line-height: 1.44; margin-bottom: 16px; }
#topbox02 .feat-list .feat01 .text_box h3 em { font-size: 26px; }

.boseki-icon-list { display: block; width: 100%; max-width: 350px; margin: 0 auto; }
.boseki-icon-list .list_in { width: 100%; justify-content: center; margin-bottom: 10px; }
.boseki-icon-list .list_in:last-child { margin-bottom: 0; }
.boseki-icon-list .list_in .icon00 { width: calc((100% / 3) - 12px); max-width: 100px; margin-right: 18px; position: relative; }
.boseki-icon-list .list_in .icon00:last-child { margin-right: 0; }
.boseki-icon-list .list_in .icon00:last-child::before { display: none; }
.boseki-icon-list .list_in .icon00::before { content: ""; display: block; width: 13px; height: 13px; background: url("../img/top/mark01.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; right: -17px; transform: translateY(-50%); }
.boseki-icon-list .list_in .icon00 .img { width: 100%; aspect-ratio: 1 / 1; background: #FFFFFF; border-radius: 50%; border: 1px solid #E6E6E6; position: relative; }
.boseki-icon-list .list_in .icon00 .img img { width: auto; height: 40px; position: absolute; top: 20%; left: 50%; transform: translatex(-50%); }
.boseki-icon-list .list_in .icon00 .text { width: 100%; padding: 2px 0 3px; box-sizing: border-box; background: #4D473D; border-radius: 13px; font-size: 14px; line-height: 20px; position: absolute; bottom: 0; left: 0; }
.boseki-icon-list .list_in .icon03 .img img { height: 19px; top: 35%; }

#topbox03 { padding: 80px 5%; background: url("../img/common/bg02.jpg") repeat top left; background-size: contain; }
#topbox03 .cnt { display: block; margin-bottom: 20px; }
#topbox03 .boseki-icon-list { margin-bottom: 60px; }
#topbox03 .item_box { padding: 40px 20px 20px; box-sizing: border-box; background: #FFFFFF; border-top: 2px solid #534A39; border-radius: 0 0 10px 10px; position: relative; margin-bottom: 40px; }
#topbox03 .item_box:last-child { margin-bottom: 0; }
#topbox03 .item_box .box_title { font-size: 32px; line-height: 1.44; margin-bottom: 40px; }
#topbox03 .item_box .box_title span { display: block; font-size: 15px; }
#topbox03 .item_box .box { position: relative; }
#topbox03 .item_box .box h4 { box-sizing: border-box; font-size: 18px; font-weight: 500; padding: 7px 0 8px; }
#topbox03 .item_box .shape_box { border: 1px solid #99BA4B; }
#topbox03 .item_box .shape_box h4 { background: #99BA4B; }
#topbox03 .item_box .shape_box .shape-list { justify-content: center; padding: 25px 27px 20px; box-sizing: border-box; }
#topbox03 .item_box .shape_box .shape-list .shape00 { width: calc(50% - 10px); text-align: center; margin: 20px 20px 0 0; }
#topbox03 .item_box .shape_box .shape-list .shape00:nth-child(-n+2) { margin-top: 0; }
#topbox03 .item_box .shape_box .shape-list .shape00:nth-child(2n) { margin-right: 0; }
#topbox03 .item_box .shape_box .shape-list .shape00 img { width: 100%; max-width: 200px; }
#topbox03 .item_box .shape_box .shape-list .shape00 .text { font-size: 16px; line-height: 1.44; }
#topbox03 .item_box .color_box { border: 1px solid #51ACC4; }
#topbox03 .item_box .color_box h4 { background: #51ACC4; }
#topbox03 .item_box .color_box .color-list { padding: 25px 20px 20px; box-sizing: border-box; }
#topbox03 .item_box .color_box .color-list .color00 { width: calc((100% / 3) - 5px); margin: 20px 6px 0 0; }
#topbox03 .item_box .color_box .color-list .color00:nth-child(-n+3) { margin-top: 0; }
#topbox03 .item_box .color_box .color-list .color00:nth-child(3n) { margin-right: 0; }
#topbox03 .item_box .color_box .color-list .color00 img { width: 100%; height: auto; }
#topbox03 .item_box .color_box .color-list .color00 .text { font-size: 16px; line-height: 1.44; }
#topbox03 .item_box01 .item_box_in { display: block; }
#topbox03 .item_box01 .item_box_in .box { border-radius: 10px; }
#topbox03 .item_box01 .item_box_in .box h4 { border-radius: 8px 8px 0 0; }
#topbox03 .item_box01 .item_box_in .shape_box { margin-bottom: 30px; }
#topbox03 .item_box01 .item_box_in .shape_box::after { content: ""; display: block; width: 40px; height: 40px; background: url("../img/top/open_icon.svg") no-repeat center, #A7A7A7; background-size: 16px; border-radius: 50%; position: absolute; bottom: -35px; left: 50%; transform: translateX(-50%); z-index: 1; }
#topbox03 .item_box01 .item_box_in .shape_box .shape-list .shape01 .text { margin-top: 8px; }
#topbox03 .item_box02 { padding-bottom: 26px; margin-bottom: 60px; }
#topbox03 .item_box02 .simulation_box { display: block; }
#topbox03 .item_box02 .simulation_box .left { margin-bottom: 20px; }
#topbox03 .item_box02 .simulation_box .left .box h4.t_text { padding: 11px 50px 13px 20px; cursor: pointer; }
#topbox03 .item_box02 .simulation_box .left .box .c_text { display: none; }
#topbox03 .item_box02 .simulation_box .left .box .c_text input[type="radio"] { display: none; }
#topbox03 .item_box02 .simulation_box .left .box .c_text label { cursor: pointer; transition: 0.3s; }
#topbox03 .item_box02 .simulation_box .left .shape_box { margin-bottom: 20px; }
#topbox03 .item_box02 .simulation_box .left .shape_box h4.t_text { background: url("../img/top/open_icon.svg") no-repeat center right 25px, #99BA4B; background-size: 20px; }
#topbox03 .item_box02 .simulation_box .left .shape_box h4.t_text.on { background: url("../img/top/close_icon.svg") no-repeat center right 25px, #99BA4B; background-size: 20px; }
#topbox03 .item_box02 .simulation_box .left .shape_box .shape-list { padding: 0 4px 20px 19px; }
#topbox03 .item_box02 .simulation_box .left .shape_box .shape-list .shape00 { width: calc(50% - 15px); max-width: 210px; margin-right: 15px; margin-top: 20px; }
#topbox03 .item_box02 .simulation_box .left .shape_box .shape-list .shape00 .img { width: 100%; aspect-ratio: 1 / 1; border-radius: 5px; overflow: hidden; border: 1px solid #DEDEDE; box-sizing: border-box; transition: 0.3s; padding: 5px; }
#topbox03 .item_box02 .simulation_box .left .color_box h4.t_text { background: url("../img/top/open_icon.svg") no-repeat center right 25px, #51ACC4; background-size: 20px; }
#topbox03 .item_box02 .simulation_box .left .color_box h4.t_text.on { background: url("../img/top/close_icon.svg") no-repeat center right 25px, #51ACC4; background-size: 20px; }
#topbox03 .item_box02 .simulation_box .left .color_box .color-list { padding: 10px 10px 20px 19px; }
#topbox03 .item_box02 .simulation_box .left .color_box .color-list .color00 { width: calc((100% / 3) - 7px); margin-right: 7px; margin-top: 20px; }
#topbox03 .item_box02 .simulation_box .left .color_box .color-list .color00 .img { width: 100%; aspect-ratio: 1 / 1; border-radius: 5px; overflow: hidden; border: 1px solid #DEDEDE; box-sizing: border-box; transition: 0.3s; }
#topbox03 .item_box02 .simulation_box .left .color_box .color-list .color00 .img img { width: auto; height: 100%; transition: 0.3s; }
#topbox03 .item_box02 .simulation_box .right { background: #FFFFFF; border-radius: 10px; border: 1px solid #ECECEC; overflow: hidden; }
#topbox03 .item_box02 .simulation_box .right #simulation-img { height: 50.67vw; margin-bottom: 0 !important; }
#topbox03 .item_box02 .simulation_box .right #simulation-img .slide-img { width: 100%; height: 50.67vw; background-repeat: no-repeat; background-position: center; background-size: contain; }
#topbox03 .item_box02 .simulation_box .right .price_box { display: block; width: 100%; max-width: 255px; margin: 0 auto 20px; background: #ECECEC; border-radius: 5px; padding: 20px 20px 8px; box-sizing: border-box; }
#topbox03 .item_box02 .simulation_box .right .price_box .choice-list { margin-bottom: 5px; }
#topbox03 .item_box02 .simulation_box .right .price_box .choice-list li { font-size: 16px; }
#topbox03 .item_box02 .simulation_box .right .price_box .choice-list li span { display: inline-block; padding: 0 6px 2px; box-sizing: border-box; border-radius: 3px; line-height: 23px; margin-right: 8px; color: #FFFFFF; }
#topbox03 .item_box02 .simulation_box .right .price_box .choice-list li.choice01 { margin-bottom: 5px; }
#topbox03 .item_box02 .simulation_box .right .price_box .choice-list li.choice01 span { background: #99BA4B; }
#topbox03 .item_box02 .simulation_box .right .price_box .choice-list li.choice02 span { background: #51ACC4; }
#topbox03 .item_box02 .simulation_box .right .price_box .price-text { font-size: 16px; }
#topbox03 .item_box02 .simulation_box .right .price_box .price-text em.price01 { font-size: 40px; line-height: 1.4; margin-right: 1px; }
#topbox03 .item_box02 .simulation_box .right .price_box .price-text span { font-size: 14px; margin-top: 23px; }

.boseki-btn-list { display: block; }
.boseki-btn-list .btn { max-width: 400px; height: 100px; margin: 0 auto 10px; }
.boseki-btn-list .btn:last-child { margin-bottom: 0; }
.boseki-btn-list .btn a { display: flex; align-items: center; background: #FFFFFF; border-radius: 10px; position: relative; box-shadow: 0 0 8px rgba(0, 0, 0, 0.08); }
.boseki-btn-list .btn a .btn_img { width: 124px; height: 100px; border-radius: 10px 0 0 10px; position: relative; overflow: hidden; }
.boseki-btn-list .btn a .btn_img .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }
.boseki-btn-list .btn a .btn_text { width: calc(100% - 124px); height: 100%; padding: 0 15px; box-sizing: border-box; }
.boseki-btn-list .btn a .btn_text em { display: block; font-size: 20px; margin-top: 4px; }
.boseki-btn-list .btn a .arrow { display: block; width: 30px; height: 30px; background: url("../img/common/btn_arrow01.svg") no-repeat top 11px left 13px, #4D473D; background-size: 6px; border-radius: 14px 0 10px 0; position: absolute; bottom: 0; right: 0; }

#topbox04 { padding: 80px 5%; }
#topbox04 .cnt { display: block; margin-bottom: 30px; }
#topbox04 .ba_box { display: block; }
#topbox04 .ba_box .box_in { border-radius: 10px; position: relative; z-index: 1; }
#topbox04 .ba_box .box_in img { width: 100%; }
#topbox04 .ba_box .box_in .text { padding: 3px 8px 4px; box-sizing: border-box; border-radius: 10px 0 15px; position: absolute; top: 0; left: 0; z-index: 1; }
#topbox04 .ba_box .box_in.before .text { background: #000000; }
#topbox04 .ba_box .box_in.after { margin-top: 50px; }
#topbox04 .ba_box .box_in.after::before { content: ""; display: block; width: 36px; height: 60px; background: url("../img/top/arrow01_sp.png") no-repeat center; background-size: contain; position: absolute; top: -55px; left: 50%; transform: translateX(-50%); z-index: 1; }
#topbox04 .ba_box .box_in.after .text { background: #51ACC4; }

/*石半の樹木葬・永代供養墓について　p02
=========================================== */
.common_box { padding: 26px 20px 30px; box-sizing: border-box; background: #FFFFFF; border-top: 2px solid #534A39; border-bottom: 2px solid #534A39; }

#p02box01 .cnt { display: block; }
#p02box01 .cnt .text_box { margin-bottom: 40px; }
#p02box01 .cnt .text_box p { margin-bottom: 30px; }
#p02box01 .cnt .text_box p:last-child { margin-bottom: 0; }
#p02box01 .cnt .img_box { max-width: 500px; margin: 0 auto; }

#p02box02 .nayami_box { margin-bottom: 60px; }
#p02box02 .nayami_box h2 { font-size: 22px; margin-bottom: 28px; }
#p02box02 .nayami_box .box_in { display: block; margin-bottom: 28px; }
#p02box02 .nayami_box .box_in .img { display: none; }
#p02box02 .nayami_box .box_in .list li { display: inline-block; padding: 9px 20px 8px; box-sizing: border-box; background: #F3F3F3; border-radius: 30px; font-size: 14px; line-height: 1.4; margin-bottom: 8px; }
#p02box02 .nayami_box .box_in .list li:last-child { margin-bottom: 0; }
#p02box02 h2.title { padding-top: 52px; box-sizing: border-box; font-size: 22px; margin-bottom: 32px; position: relative; }
#p02box02 h2.title::before { content: ""; display: block; width: 32px; height: 40px; background: url("../img/p02/img03.png") no-repeat center; background-size: contain; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
#p02box02 .nayami-list .nayami01 { margin-bottom: 60px; }
#p02box02 .nayami-list .nayami01:last-child { margin-bottom: 0; }
#p02box02 .nayami-list .nayami01 .title_box { display: block; padding: 20px; box-sizing: border-box; background: #FFFFFF; border-radius: 5px; margin-bottom: 20px; }
#p02box02 .nayami-list .nayami01 .title_box span { display: inline-block; padding: 1px 6px 2px; box-sizing: border-box; background: #51ACC4; border-radius: 11px; font-size: 13px; line-height: 1.44; text-align: center; margin-bottom: 4px; }
#p02box02 .nayami-list .nayami01 .title_box span em { display: inline-block; font-size: 12px; letter-spacing: 0.04em; margin-left: 2px; }
#p02box02 .nayami-list .nayami01 .title_box h3 { font-size: 18px; line-height: 1.4; }
#p02box02 .nayami-list .nayami01 .cnt { display: block; }
#p02box02 .nayami-list .nayami01 .cnt .img_box { max-width: 460px; margin: 0 auto 20px; }

/*会社概要　p03
=========================================== */
.company-table tr { border-bottom: 1px solid #E3E3E1; }
.company-table tr:first-child { border-top: 1px solid #E3E3E1; }
.company-table tr th, .company-table tr td { padding: 20px 10px; box-sizing: border-box; }
.company-table tr th { width: 80px; background: #F2F1EF; font-weight: 500; }
.company-table tr td { padding-right: 0; }

.company-access_box h3 { padding-left: 10px; box-sizing: border-box; font-size: 16px; line-height: 1.44; margin-bottom: 16px; position: relative; }
.company-access_box h3::before { content: ""; display: block; width: 2px; height: calc(100% - 3px); background: #4D473D; position: absolute; bottom: 0; left: 0; }
.company-access_box .map_box { width: 100%; height: 320px; position: relative; }
.company-access_box .map_box iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
.company-access_box .text { margin-top: 16px; }

#p03box01 .cnt { display: block; }
#p03box01 .cnt .img_box { max-width: 440px; margin: 0 auto 28px; }
#p03box01 .text p { margin-bottom: 30px; }
#p03box01 .text p:last-child { margin-bottom: 0; }
#p03box01 .name_box { margin-top: 40px; }
#p03box01 .name_box p { line-height: 29px; }
#p03box01 .name_box .name em { display: inline-block; font-size: 20px; margin-left: 4px; }

#p03box02 .table_box { display: block; margin-bottom: 40px; }
#p03box02 .table_box .company-table:first-child tr:first-child { border-top: 1px solid #D6D5D0; }
#p03box02 .table_box .company-table tr { border-bottom: 1px solid #D6D5D0; }
#p03box02 .table_box .company-table tr th { background: #ECEAE7; }

#p03box03 .cnt { display: block; margin-bottom: 40px; }
#p03box03 .cnt .text_box { margin-bottom: 40px; }
#p03box03 .cnt .text_box .company-table { margin-top: 40px; }
#p03box03 .cnt .text_box .company-table .sub_text { display: block; margin-top: 2px; font-size: 12px; padding-left: 1em; text-indent: -1em; }
#p03box03 .cnt .img_box { max-width: 560px; margin: 0 auto; }

/*墓地情報　p04
=========================================== */
#p04box01 .graveyard_tab_list .tab_list { display: flex; border-bottom: 3px solid #51ACC4; }
#p04box01 .graveyard_tab_list .tab_list li { width: 50%; }
#p04box01 .graveyard_tab_list .tab_list li a { display: block; padding: 8px 5px 9px; box-sizing: border-box; background: #DEDEDE; border-radius: 5px 5px 0 0; font-size: 16px; line-height: 23px; text-align: center; color: #818181; transition: 0.3s; cursor: pointer; }
#p04box01 .graveyard_tab_list .tab_list li.on a { background: #51ACC4; color: #FFFFFF; }
#p04box01 .graveyard-all-list { display: block; padding: 20px 20px 30px; box-sizing: border-box; background: #FFFFFF; }
#p04box01 .graveyard-all-list .bochi01 { margin-bottom: 40px; }
#p04box01 .graveyard-all-list .bochi01:last-child { margin-bottom: 0; }

.gallery_img .gallery_main { width: 100%; margin-bottom: 0 !important; }
.gallery_img .gallery_main .slick-prev, .gallery_img .gallery_main .slick-next { width: 50px; height: 50px; background: rgba(0, 0, 0, 0.16); border-radius: 50%; border: 1px solid #FFFFFF; box-sizing: border-box; top: 50%; transform: translate(0, -50%); transition: 0.3s; z-index: 1; }
.gallery_img .gallery_main .slick-prev::before, .gallery_img .gallery_main .slick-next::before { content: ""; display: block; width: 9px; height: 12px; opacity: 1; background: url("../img/common/slide_arrow.svg") no-repeat center; background-size: contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(768%) hue-rotate(78deg) brightness(113%) contrast(100%); }
.gallery_img .gallery_main .slick-prev { left: -10px; }
.gallery_img .gallery_main .slick-prev::before { transform: translate(-50%, -50%) scale(-1, 1); }
.gallery_img .gallery_main .slick-next { right: -10px; }
.gallery_img .gallery_main .gallery_main01 { width: 100%; border-radius: 5px; }
.gallery_img .gallery_thum { width: 100%; margin-bottom: 0 !important; }
.gallery_img .gallery_thum .gallery_thum01 { cursor: pointer; position: relative; overflow: hidden; border-radius: 5px; margin-right: 5px; }
.gallery_img .gallery_thum .gallery_thum01:last-child { margin-right: 0; }
.gallery_img .gallery_thum .gallery_thum01.slick-current::before { content: ""; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.4); position: absolute; left: 0; top: 0; z-index: 2; box-sizing: border-box; }

#graveyardBox01 .info-table tr { display: block; border-bottom: 1px solid #E3E3E1; }
#graveyardBox01 .info-table tr:first-child { border-top: 1px solid #E3E3E1; }
#graveyardBox01 .info-table tr th, #graveyardBox01 .info-table tr td { display: block; padding: 12px 20px 14px; box-sizing: border-box; }
#graveyardBox01 .info-table tr th { background: #F2F1EF; font-weight: 500; }
#graveyardBox01 .info-table tr td a { text-decoration: underline; }
#graveyardBox01 .cnt { display: block; }
#graveyardBox01 .cnt .gallery_img { margin-bottom: 40px; }
#graveyardBox01 .cnt .gallery_img .gallery_main .gallery_main01 { aspect-ratio: 335 / 253; }
#graveyardBox01 .cnt .gallery_img .gallery_thum { margin-top: 5px; }
#graveyardBox01 .cnt .gallery_img .gallery_thum .gallery_thum01 { width: calc(25% - 5px); aspect-ratio: 4 / 3; }
#graveyardBox01 .cnt .text_box .info-table tr td { padding-right: 0; }
#graveyardBox01 .cnt .text_box .info-table tr td a.map-link { display: block; padding-left: 16px; box-sizing: border-box; text-decoration: underline; position: relative; margin-top: 5px; }
#graveyardBox01 .cnt .text_box .info-table tr td a.map-link:hover { opacity: 0.7; }
#graveyardBox01 .cnt .text_box .info-table tr td a.map-link::before { content: ""; display: block; width: 12px; height: 16px; background: url("../img/common/map_icon.svg") no-repeat center; background-size: contain; position: absolute; top: 4px; left: 0; }
#graveyardBox01 .cnt .text_box .point-list { margin-top: 20px; margin-left: -2px; }
#graveyardBox01 .box-list { margin-top: 40px; }
#graveyardBox01 .box-list .about_box { padding: 18px 20px 22px; box-sizing: border-box; margin-bottom: 30px; }
#graveyardBox01 .box-list .about_box:last-child { margin-bottom: 0; }
#graveyardBox01 .box-list .about_box a { text-decoration: underline; }
#graveyardBox01 .box-list .about_box .box_in { display: block; }
#graveyardBox01 .box-list .about_box .box_in .img { max-width: 320px; aspect-ratio: 590 / 443; border-radius: 5px; margin: 0 auto 16px; }
#graveyardBox01 .box-list .about_box .box_in .text_box h2.title { font-size: 16px; font-weight: 500; line-height: 23px; padding-left: 10px; position: relative; }
#graveyardBox01 .box-list .about_box .box_in .text_box h2.title::before { content: ""; display: block; width: 2px; height: calc(100% - 3px); background: #51ACC4; position: absolute; bottom: 0; left: 0; }
#graveyardBox01 .box-list .about_box .box_in .text_box p.sub_text { font-size: 12px; padding-left: 1em; text-indent: -1em; margin-top: 4px; }
#graveyardBox01 .box-list .about_box .info-table { margin-top: 20px; }
#graveyardBox01 .box-list .about_box .info-table tr td ul li { padding-left: 1em; text-indent: -1em; margin-bottom: 8px; }
#graveyardBox01 .box-list .about_box .info-table tr td ul li:last-child { margin-bottom: 0; }
#graveyardBox01 .box-list .about_box .text01 { margin-top: 20px; }

/*墓石の商品紹介　p05
=========================================== */
section.boseki-sec01 .cnt { display: block; margin-bottom: 40px; }
section.boseki-sec01 .cnt h2 { font-size: 21px; margin-bottom: 24px; }
section.boseki-sec01 .cnt h2 em { font-size: 27px; }
section.boseki-sec01 .cnt .text_box p { margin-bottom: 12px; }
section.boseki-sec01 .cnt .text_box p:last-child { margin-bottom: 0; }
section.boseki-sec01 .cnt .text_box p a { text-decoration: underline; color: #3B8FA5; }

section.boseki-sec02 .btn-list { display: block; margin-top: 60px; }
section.boseki-sec02 .btn-list .btn { max-width: 400px; height: 100px; margin: 0 auto 10px; }
section.boseki-sec02 .btn-list .btn:last-child { margin-bottom: 0; }
section.boseki-sec02 .btn-list .btn a { display: flex; align-items: center; background: #FFFFFF; border-radius: 10px; position: relative; box-shadow: 0 0 8px rgba(0, 0, 0, 0.08); }
section.boseki-sec02 .btn-list .btn a .btn_img { width: 124px; height: 100px; border-radius: 10px 0 0 10px; position: relative; overflow: hidden; }
section.boseki-sec02 .btn-list .btn a .btn_img .in_img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: 0.3s; }
section.boseki-sec02 .btn-list .btn a .btn_text { width: calc(100% - 124px); height: 100%; padding: 0 15px; box-sizing: border-box; font-size: 18px; }
section.boseki-sec02 .btn-list .btn a .arrow { display: block; width: 30px; height: 30px; background: url("../img/common/btn_arrow01.svg") no-repeat top 11px left 13px, #4D473D; background-size: 6px; border-radius: 14px 0 10px 0; position: absolute; bottom: 0; right: 0; }

section#p05box02.boseki-sec02 .color_box h3 { font-size: 16px; font-weight: 500; line-height: 23px; padding-left: 10px; margin-bottom: 16px; position: relative; }
section#p05box02.boseki-sec02 .color_box h3::before { content: ""; display: block; width: 2px; height: calc(100% - 3px); background: #51ACC4; position: absolute; bottom: 0; left: 0; }
section#p05box02.boseki-sec02 .color_box .color-list li { display: flex; align-items: center; width: calc(50% - 3px); background: #FFFFFF; padding: 9px; box-sizing: border-box; border: 1px solid #DEDEDE; border-radius: 5px; cursor: pointer; margin: 5px 5px 0 0; transition: 0.3s; }
section#p05box02.boseki-sec02 .color_box .color-list li:nth-child(-n+2) { margin-top: 0; }
section#p05box02.boseki-sec02 .color_box .color-list li:nth-child(2n) { margin-right: 0; }
section#p05box02.boseki-sec02 .color_box .color-list li span.img { display: inline-block; width: 30px; height: 30px; border-radius: 3px; margin-right: 8px; }
section#p05box02.boseki-sec02 .color_box .color-list li span.text { display: inline-block; font-size: 14px; line-height: 1.3; }
section#p05box02.boseki-sec02 .color_box .color-list li.on { background: #51ACC4; border: 1px solid #51ACC4; pointer-events: none; }
section#p05box02.boseki-sec02 .color_box .color-list li.on span.text { color: #FFFFFF; }
section#p05box02.boseki-sec02 .boseki-list { margin-top: 40px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 { margin-bottom: 20px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00:last-child { margin-bottom: 0; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .color-block { display: block; padding: 20px; box-sizing: border-box; background: #FFFFFF; border-radius: 5px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .gallery_img { margin-bottom: 24px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .gallery_img .gallery_main .gallery_main01 { aspect-ratio: 59 / 45; border: 1px solid #F3F3F3; box-sizing: border-box; border-radius: 5px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .gallery_img .gallery_thum { margin-top: 7px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .gallery_img .gallery_thum .gallery_thum01 { width: calc((100% / 3) - 7px); aspect-ratio: 187 / 140; border: 1px solid #F3F3F3; box-sizing: border-box; border-radius: 5px; margin-right: 7px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .gallery_img .gallery_thum .gallery_thum01:last-child { margin-right: 0; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box .color-icon { display: inline-block; padding: 1px 6px 2px; box-sizing: border-box; background: #51ACC4; border-radius: 11px; font-size: 13px; line-height: 19px; margin-bottom: 4px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box h3.title { font-size: 22px; font-weight: 500; margin-bottom: 20px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box .text01 { margin-bottom: 20px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box .price_box { align-items: center; padding: 11px 15px 10px; box-sizing: border-box; background: #F3F3F3; border-radius: 5px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box .price_box p { display: inline-block; line-height: 1.47; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box .price_box p.price01 { margin-right: 4px; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box .price_box p.price01 em { display: inline-block; font-size: 28px; font-weight: 700; }
section#p05box02.boseki-sec02 .boseki-list .boseki00 .text_box .price_box p.price02 { margin-top: 10px; }

/*墓石＋囲いセットの商品紹介　p06
=========================================== */
section#p06box02.boseki-sec02 .title01 { margin-bottom: 20px; }
section#p06box02.boseki-sec02 .set-list { margin-top: 40px; }
section#p06box02.boseki-sec02 .set-list .set00 { margin-bottom: 20px; }
section#p06box02.boseki-sec02 .set-list .set00:last-child { margin-bottom: 0; }
section#p06box02.boseki-sec02 .set-list .set00 h3 { padding: 12px 20px 13px; box-sizing: border-box; background: #51ACC4; border-radius: 5px 5px 0 0; font-size: 18px; line-height: 1.45; font-weight: 500; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in { display: block; padding: 20px; box-sizing: border-box; background: #FFFFFF; border-radius: 0 0 5px 5px; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .img { max-width: 420px; aspect-ratio: 59 / 45; border-radius: 5px; margin: 0 auto 20px; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .price_box { display: block; padding: 14px 15px 15px; box-sizing: border-box; background: #F3F3F3; border-radius: 5px; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .price_box p { display: block; line-height: 1.47; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .price_box p.price01 em { display: inline-block; font-size: 28px; font-weight: 700; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .text { margin-top: 20px; line-height: 1.6; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .info-table { margin-top: 20px; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .info-table tr { display: block; border-bottom: 1px solid #E3E3E1; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .info-table tr:first-child { border-top: 1px solid #E3E3E1; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .info-table tr th, section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .info-table tr td { display: block; padding: 12px 20px 14px; box-sizing: border-box; }
section#p06box02.boseki-sec02 .set-list .set00 .box_in .text_box .info-table tr th { background: #F2F1EF; font-weight: 500; }

/*お墓の改装・墓じまい　p07
=========================================== */
#p07box01 .cnt { display: block; }
#p07box01 .cnt .text_box { margin-bottom: 20px; }
#p07box01 .cnt .text_box .title01 { text-align: left; }
#p07box01 .cnt .text_box .title01 .ja .mini { font-size: 24px; }
#p07box01 .cnt .text_box .list { margin: 20px 0; }
#p07box01 .cnt .text_box .list li { padding-left: 12px; box-sizing: border-box; position: relative; margin-bottom: 4px; }
#p07box01 .cnt .text_box .list li:last-child { margin-bottom: 0; }
#p07box01 .cnt .text_box .list li::before { content: ""; display: block; width: 6px; height: 6px; background: #000000; border-radius: 50%; position: absolute; top: 9px; left: 0; }
#p07box01 .cnt .img_box { max-width: 512px; margin: 0 auto; }

#p07box02 .ba_box { display: block; margin-bottom: 20px; }
#p07box02 .ba_box .box_in { border-radius: 10px; position: relative; z-index: 1; }
#p07box02 .ba_box .box_in img { width: 100%; border-radius: 10px; }
#p07box02 .ba_box .box_in .text { padding: 3px 8px 4px; box-sizing: border-box; border-radius: 10px 0 15px; position: absolute; top: 0; left: 0; z-index: 1; }
#p07box02 .ba_box .box_in.before .text { background: #000000; }
#p07box02 .ba_box .box_in.after { margin-top: 50px; }
#p07box02 .ba_box .box_in.after::before { content: ""; display: block; width: 36px; height: 18px; background: url("../img/p07/arrow_sp.svg") no-repeat center; background-size: contain; position: absolute; top: -34px; left: 50%; transform: translateX(-50%); z-index: 1; }
#p07box02 .ba_box .box_in.after .text { background: #51ACC4; }
#p07box02 .flow_box { padding: 35px 20px 50px; margin-top: 40px; }
#p07box02 .flow_box .box-list .box { display: block; margin-bottom: 50px; }
#p07box02 .flow_box .box-list .box:last-child { margin-bottom: 0; }
#p07box02 .flow_box .box-list .box .img_box { width: 100%; max-width: 200px; margin: 0 auto 12px; }
#p07box02 .flow_box .box-list .box .text_box h3 { font-size: 24px; margin-bottom: 12px; }

/*実績紹介　p08
=========================================== */
#p08box01 .works-all-list { display: block; }
#p08box01 .works-all-list .works00 { margin-bottom: 20px; }
#p08box01 .works-all-list .works00:last-child { margin-bottom: 0; }

#worksBox01 .cnt { display: block; }
#worksBox01 .cnt .gallery_img { margin-bottom: 40px; position: relative; }
#worksBox01 .cnt .gallery_img .gallery_main .gallery_main01 { aspect-ratio: 335 / 253; }
#worksBox01 .cnt .gallery_img .gallery_thum { margin-top: 5px; }
#worksBox01 .cnt .gallery_img .gallery_thum .gallery_thum01 { width: calc((100% / 3) - 5px); aspect-ratio: 4 / 3; }
#worksBox01 .cnt .gallery_img .text { padding: 3px 8px 4px; box-sizing: border-box; border-radius: 5px 0 10px; position: absolute; top: 0; left: 0; z-index: 1; }
#worksBox01 .cnt .gallery_img_before .text { background: #000000; }
#worksBox01 .cnt .gallery_img_after .text { background: #51ACC4; }
#worksBox01 .cnt .gallery_img.only .text { display: none; }
#worksBox01 .cnt .text_box .info-table tr { display: block; border-bottom: 1px solid #E3E3E1; }
#worksBox01 .cnt .text_box .info-table tr:first-child { border-top: 1px solid #E3E3E1; }
#worksBox01 .cnt .text_box .info-table tr th, #worksBox01 .cnt .text_box .info-table tr td { display: block; padding: 12px 20px 14px; box-sizing: border-box; }
#worksBox01 .cnt .text_box .info-table tr th { background: #F2F1EF; font-weight: 500; }
#worksBox01 .cnt .text_box .info-table tr td a { text-decoration: underline; }
#worksBox01 .cnt .text_box p.comment { margin-top: 40px; }
#worksBox01 .cnt .text_box p.comment a { text-decoration: underline; }

/*お知らせ　p09
=========================================== */
#p09box01 .blog-all-list .blog00 { margin-bottom: 40px; }
#p09box01 .blog-all-list .blog00:last-child { margin-bottom: 0; }

body.single-post #header, body.single-page_column #header { background: #fff; }
body.single-post div#bread, body.single-page_column div#bread { margin-top: 70px; padding-top: 0; }
body.single-post .blogBox_in, body.single-page_column .blogBox_in { padding: 20px 20px 32px; box-sizing: border-box; background: #FFFFFF; border-radius: 10px; }
body.single-post .blogBox_in .info .cate-list02, body.single-page_column .blogBox_in .info .cate-list02 { width: auto; margin: 0 8px 8px 0; }
body.single-post .blogBox_in .info .time, body.single-page_column .blogBox_in .info .time { display: inline-block; margin-bottom: 8px; }
body.single-post .blogBox_in h1.title, body.single-page_column .blogBox_in h1.title { font-size: 22px; margin-bottom: 24px; }
body.single-post .blogBox_in .img, body.single-page_column .blogBox_in .img { width: 100%; text-align: center; margin-bottom: 24px; }
body.single-post .blogBox_in .text_box a, body.single-page_column .blogBox_in .text_box a { text-decoration: underline; }

/*お客様の声　p10
=========================================== */
#p10box01 .voice-list .voice01 { margin-bottom: 40px; }
#p10box01 .voice-list .voice01:last-child { margin-bottom: 0; }
#p10box01 .voice-list .voice01 h3 { padding: 12px 20px 13px; box-sizing: border-box; background: #51ACC4; border-radius: 5px 5px 0 0; font-size: 18px; line-height: 1.4; font-weight: 500; }
#p10box01 .voice-list .voice01 .box_in { padding: 20px; box-sizing: border-box; background: #FFFFFF; border-radius: 0 0 5px 5px; }
#p10box01 .voice-list .voice01 .box_in .text02 { margin-top: 20px; }
#p10box01 .voice-list .voice01 .box_in .img-list { display: block; margin-top: 40px; }
#p10box01 .voice-list .voice01 .box_in .img-list div { margin-bottom: 20px; }
#p10box01 .voice-list .voice01 .box_in .img-list div:last-child { margin-bottom: 0; }
#p10box01 .voice-list .voice01 .box_in .img-list .img01 { width: 100%; aspect-ratio: 10 / 7; border-radius: 5px; }
#p10box01 .voice-list .voice01 .box_in .img-list .img02 { width: 100%; aspect-ratio: 5 / 6; }
#p10box01 .voice-list .voice01 .box_in .img-list .img02 a { display: block; width: 100%; height: 100%; border-radius: 5px; position: relative; }
#p10box01 .voice-list .voice01 .box_in .img-list .img02 a .icon { display: block; width: 30px; height: 30px; background-color: rgba(0, 0, 0, 0.64); background-image: url("../img/p10/icon_zoom.svg"); background-repeat: no-repeat; background-position: center; background-size: 18px; border-radius: 5px 0; position: absolute; bottom: 0; right: 0; transition: 0.3s; }

/*お問い合わせ　p11
=========================================== */
.page-contact #contact-sec { display: none; }

#p11box01 .content_wrap { background: #FFFFFF; padding: 20px 20px 26px; box-sizing: border-box; border-radius: 5px; }
#p11box01 .content_wrap > img { display: block; width: 40px; margin: 0 auto 5px; }
#p11box01 .content_wrap h2.title { font-size: 18px; font-weight: 500; }
#p11box01 .tel_wrap.content_wrap h2.title { margin-bottom: 8px; }
#p11box01 .tel_wrap.content_wrap .tel_box { text-align: center; }
#p11box01 .tel_wrap.content_wrap .tel_box .tel-text span { border: 1px solid #BCBCBC; }
#p11box01 .line_wrap.content_wrap h2.title { margin-bottom: 12px; }
#p11box01 .line_wrap.content_wrap .btn01 { margin: 0 auto; }
#p11box01 .line_wrap.content_wrap .btn01 a { padding: 0 35px; background: #FFFFFF; border: 1px solid #07B53B; }
#p11box01 .line_wrap.content_wrap .btn01 a .btn-text { color: #07B53B; }
#p11box01 .line_wrap.content_wrap .btn01 a .arrow { width: 7px; height: 10px; background: url("../img/p11/btn_arrow_line.svg") no-repeat center; background-size: contain; border: 0; box-sizing: border-box; border-radius: 0; right: 28px; }
#p11box01 .content-list { display: block; }
#p11box01 .content-list .tel_wrap.content_wrap { margin-bottom: 20px; }
#p11box01 .form_wrap.content_wrap { padding-bottom: 40px; margin-top: 20px; }
#p11box01 .form_wrap.content_wrap h2.title { margin-bottom: 24px; }

/*各エリアページ　p12
=========================================== */
#p12box01 .cnt { display: block; margin-bottom: 20px; }
#p12box01 .cnt .img_box { max-width: 550px; margin: 0 auto 24px; }
#p12box01 .cnt .text_box h2.title { font-size: 21px; line-height: 1.46; margin-bottom: 24px; }
#p12box01 .cnt .text_box h2.title em { display: inline-block; font-size: 26px; }
#p12box01 .point-list { display: block; }
#p12box01 .point-list .point00 { max-width: 295px; position: relative; margin: 0 auto 20px; }
#p12box01 .point-list .point00:last-child { margin-bottom: 0; }
#p12box01 .point-list .point00 p { display: inline-flex; flex-direction: column; align-items: flex-start; position: absolute; bottom: 25px; left: 0; z-index: 1; }
#p12box01 .point-list .point00 p span { display: inline-block; padding: 0 4px 2px; box-sizing: border-box; background: #51ACC4; border-radius: 5px; font-size: 22px; line-height: 1.45; margin-bottom: 2px; }
#p12box01 .point-list .point00 p span:last-child { margin-bottom: 0; }

#p12box02 .cnt { display: block; margin-bottom: 40px; }
#p12box02 .cnt .img_box { max-width: 500px; margin: 0 auto 24px; }
#p12box02 .cnt .text_box h3.title { font-size: 21px; line-height: 1.33; margin-bottom: 24px; }
#p12box02 .cnt .text_box h3.title em { display: inline-block; font-size: 27px; }
#p12box02 .boseki_box { padding: 28px 20px 30px; margin-top: 40px; }
#p12box02 .boseki_box h2.title { font-size: 22px; line-height: 30px; margin-bottom: 23px; }
#p12box02 .boseki_box .boseki-btn-list .btn a .btn_img { width: 118px; }
#p12box02 .boseki_box .boseki-btn-list .btn a .btn_text { width: calc(100% - 118px); padding: 0 10px; font-size: 13px; }
#p12box02 .boseki_box .boseki-btn-list .btn a .btn_text em { font-size: 18px; }
#p12box02 .boseki_box .boseki-btn-list .btn a .arrow { width: 26px; height: 26px; background: url("../img/common/btn_arrow01.svg") no-repeat top 9px left 11px, #4D473D; background-size: 6px; }

/*戒名彫り・納骨　ご依頼フォーム　p13
=========================================== */
#p13box01 .form_wrap.content_wrap { background: #FFFFFF; padding: 20px 20px 40px; box-sizing: border-box; border-radius: 5px; }

ul.contact-state { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0; }
ul.contact-state > li { display: table; width: 25.07vw; height: 40px; position: relative; }
ul.contact-state > li > span { display: table-cell; text-align: center; vertical-align: middle; background: #D4D4D4; font-weight: 700; line-height: 1.47; color: #737373; }
ul.contact-state > li.state01 { clip-path: polygon(0 0, calc(100% - 1.33vw) 0%, 100% 50%, calc(100% - 1.33vw) 100%, 0 100%, 0% 50%); }
ul.contact-state > li.state01 > span { background: #51ACC4; color: #FFFFFF; }
ul.contact-state li.state02 { clip-path: polygon(0 0, calc(100% - 1.33vw) 0%, 100% 50%, calc(100% - 1.33vw) 100%, 0 100%, 0% 50%); }

ul.contact-state.contact-state02 { display: flex; flex-wrap: wrap; justify-content: space-between; }
ul.contact-state.contact-state02 > li.state02 > span { background: #51ACC4; color: #FFFFFF; }

.state-text { display: none; text-align: center; color: #C45151; font-weight: 700; font-size: 16px; }

.wpcf7-form.custom-wpcf7c-confirmed .state-text { display: block; }
.wpcf7-form.custom-wpcf7c-confirmed ul.contact-state { margin-bottom: 20px; }

.contactTBL { padding-top: 28px; /*住所*/ /*添付ファイル*/ /*お問い合わせ項目*/ /*日時*/ /*doui-check*/ /*送信ボタン*/ }
.contactTBL::placeholder { color: #9A9A9A; }
.contactTBL th { display: block; margin-bottom: 10px; }
.contactTBL th .hissu, .contactTBL th .ninni { display: inline-block; font-size: 13px; line-height: 19px; font-weight: 700; padding: 2px 4px 3px; box-sizing: border-box; margin-right: 8px; }
.contactTBL th .hissu { background: #C45151; color: #FFFFFF; }
.contactTBL th .ninni { background: #F3F3F3; }
.contactTBL td { display: block; font-size: 15px; font-weight: 500; line-height: 22px; margin-bottom: 40px; }
.contactTBL td .sub_text { display: block; font-weight: 400; margin-top: 5px; padding-left: 1em; text-indent: -1em; }
.contactTBL td .sub_text02 { display: block; margin-bottom: 10px; }
.contactTBL td .sub_text02.indent { font-weight: 400; padding-left: 1em; text-indent: -1em; margin-top: 2px; margin-bottom: 0; }
.contactTBL input.wpcf7-text, .contactTBL textarea.wpcf7-form-control.wpcf7-textarea, .contactTBL select.wpcf7-form-control.wpcf7-select, .contactTBL input.wpcf7-date { width: 100%; height: 40px; padding: 8px 20px; box-sizing: border-box; background: #FFFFFF; border: 1px solid #D4D4D4; border-radius: 0; font-family: 'NotoSansJP'; font-size: 16px; font-weight: 400; line-height: 1.5; color: #000000; cursor: pointer; }
.contactTBL input.wpcf7-text.your-name, .contactTBL input.wpcf7-text.kana, .contactTBL input.wpcf7-text.tel01 { max-width: 170px; }
.contactTBL textarea.wpcf7-form-control.wpcf7-textarea { height: 160px; }
.contactTBL select.wpcf7-form-control.wpcf7-select { padding: 8px 30px 8px 16px; background: url("../img/p11/select_arrow.svg") no-repeat center right 16px, #FFFFFF; background-size: 10px; -webkit-appearance: none; appearance: none; }
.contactTBL select.wpcf7-form-control.wpcf7-select option { color: #000000; }
.contactTBL .address_box .address-list li { margin-bottom: 30px; }
.contactTBL .address_box .address-list li:last-child { margin-bottom: 0; }
.contactTBL .address_box .address-list li .th { margin-bottom: 5px; }
.contactTBL .address_box .address-list li.zip1 .td input.wpcf7-text { width: 170px; }
.contactTBL .text-list { margin-top: 6px; }
.contactTBL .text-list li { font-weight: 400; padding-left: 1em; text-indent: -1em; margin-bottom: 4px; }
.contactTBL .text-list li:last-child { margin-bottom: 0; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler { border: none; border-radius: 0; margin-bottom: 0; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container { padding: 0; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner { width: auto; text-align: left; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner h3, .contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner span { display: none; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap::after { display: block; content: "※ファイルが選択されていません"; font-size: 15px; font-weight: 400; color: #000000; margin-top: 4px; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn { display: block; width: 100%; height: 40px; padding-top: 10px; box-sizing: border-box; background: #000000; border: 0; border-radius: 0; font-size: 14px; font-weight: 400; line-height: 20px; color: #FFFFFF; transition: 0.3s; text-align: center; }
.contactTBL .codedropz-upload-wrapper .codedropz-upload-handler .dnd-upload-counter { display: none; }
.contactTBL .codedropz-upload-wrapper .wpcf7c-conf.wpcf7c-conf-hidden { display: none; }
.contactTBL .codedropz-upload-wrapper:has(.dnd-upload-status) .codedropz-upload-handler .codedropz-upload-container .codedropz-upload-inner .codedropz-btn-wrap::after { display: none; }
.contactTBL .koumoku th { margin-bottom: 20px; }
.contactTBL .koumoku .wpcf7-list-item { display: block; margin: 20px 0 0 0; }
.contactTBL .koumoku .wpcf7-list-item label { display: flex; align-items: center; cursor: pointer; }
.contactTBL .koumoku .wpcf7-list-item label input[type="radio"] { width: 20px; height: 20px; background: #FFFFFF; border: 1px solid #D4D4D4; margin-right: 10px; cursor: pointer; }
.contactTBL .koumoku .wpcf7-list-item label span.wpcf7-list-item-label { font-size: 14px; line-height: 20px; font-weight: 500; }
.contactTBL .koumoku .wpcf7-list-item.first { margin-top: 0; }
.contactTBL .koumoku .koumoku-list li { margin-bottom: 40px; }
.contactTBL .koumoku .koumoku-list li:last-child { margin-bottom: 0; }
.contactTBL .koumoku .koumoku-list li .th { margin-bottom: 10px; }
.contactTBL .day_box { display: block; margin-top: 20px; }
.contactTBL .day_box p.day_title { margin-bottom: 8px; }
.contactTBL .day_box ul.day-list { width: auto; align-items: center; margin-bottom: 8px; }
.contactTBL .day_box ul.day-list:last-child { margin-bottom: 0; }
.contactTBL .day_box ul.day-list li { display: flex; align-items: center; font-size: 15px; line-height: 22px; margin-right: 18px; }
.contactTBL .day_box ul.day-list li:last-child { margin-right: 0; }
.contactTBL .day_box ul.day-list li .wpcf7-form-control-wrap { width: 55px; margin-right: 8px; }
.contactTBL .day_box ul.day-list li .wpcf7-form-control-wrap select.wpcf7-form-control.wpcf7-select { padding-right: 20px; padding-left: 10px; background: url("../img/p11/select_arrow.svg") no-repeat center right 8px, #FFFFFF; background-size: 10px; }
.contactTBL .day_box ul.day-list li .wpcf7-form-control-wrap .time_select { width: 55px; }
.contactTBL .day_box ul.day-list li .wpcf7-form-control-wrap:has(.year_select) { width: 75px; }
.contactTBL .day_box ul.day-list li .wpcf7-form-control-wrap:has(.year_select) .year_select { width: 75px; }
.contactTBL .doui-box .doui-text { font-weight: 400; margin-top: 10px; }
.contactTBL .doui-box .doui-text a { display: block; text-decoration: underline; }
.contactTBL .doui-box .wpcf7-list-item { display: block; margin-left: 0; }
.contactTBL .doui-box .wpcf7-list-item label { display: flex; align-items: center; justify-content: flex-start; }
.contactTBL .doui-box .wpcf7-list-item label span.wpcf7-list-item-label { position: relative; display: flex; align-items: center; cursor: pointer; font-size: 15px; font-weight: 700; line-height: 22px; }
.contactTBL .doui-box .wpcf7-list-item label input[type="checkbox"] { width: 20px; height: 20px; margin-right: 10px; background: #FFFFFF; border: 1px solid #D4D4D4; border-radius: 100%; cursor: pointer; }
.contactTBL .contact-submit.flex { display: block; }
.contactTBL .contact-submit.flex .btn01 { margin-top: 0; }
.contactTBL .contact-submit.flex .btn01 input.wpcf7-form-control { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; padding: 0 50px; box-sizing: border-box; white-space: normal; border: 0; border-radius: 30px; background-color: #4D473D; background-image: url("../img/p11/btn_arrow.png"); background-repeat: no-repeat; background-position: center right 20px; background-size: 24px; cursor: pointer; transition: 0.3s; font-family: 'NotoSansJP'; font-size: 15px; line-height: 22px; color: #FFFFFF; font-weight: 500; appearance: none; -webkit-appearance: none; -moz-appearance: none; }
.contactTBL .contact-submit.flex .btn01:has(.wpcf7c-force-hide) { display: none; }
.contactTBL .contact-submit.flex .btn01.back { margin-top: 20px !important; }
.contactTBL .contact-submit.flex .btn01.back input.wpcf7-form-control { background-color: transparent; background-image: url("../img/p11/btn_arrow_back.png"); background-position: center left 20px; border: 2px solid #4D473D; color: #4D473D; }
.contactTBL .contact-submit.flex .wpcf7c-elm-step2.mt20 { width: 100%; text-align: center; font-size: 15px; line-height: 22px; font-weight: 500; margin-top: 20px; }
.contactTBL .contact-submit.flex input.wpcf7-form-control:focus { outline: none; }

/*確認画面時の表示設定*/
.form_wrap.content_wrap:has(.contactArea.che) { background: #eee !important; }

.contactArea.che .contactTBL td { margin-bottom: 20px; }
.contactArea.che .dnd-upload-status .dnd-upload-details .remove-file, .contactArea.che .codedropz-upload-handler, .contactArea.che .file-text, .contactArea.che span.dnd-progress-bar, .contactArea.che input[type=checkbox], .contactArea.che input[type=radio] { display: none; }
.contactArea.che input[type=checkbox]:checked, .contactArea.che input[type=radio]:checked { display: inline-block; }
.contactArea.che input[type=checkbox] ~ span.wpcf7-list-item-label, .contactArea.che input[type=radio] ~ span.wpcf7-list-item-label { display: none; }
.contactArea.che input[type=checkbox]:checked ~ span.wpcf7-list-item-label, .contactArea.che input[type=radio]:checked ~ span.wpcf7-list-item-label { display: inline-block; font-weight: 700; }
.contactArea.che textarea.wpcf7-textarea, .contactArea.che input.wpcf7-number, .contactArea.che input.wpcf7-date, .contactArea.che input.wpcf7-text, .contactArea.che select { font-weight: 700; }

/*入力内容確認時にフォーム上部へスクロールするがナビゲーションが追従の場合フォームとナビゲーションが重なるのでそのためのオフセット設定*/
form.wpcf7-form { padding-top: 185px; margin-top: -185px; }

.wpcf7c-conf { background-color: #D4D4D4 !important; }

input:-webkit-autofill, input:-internal-autofill-selected { -webkit-appearance: none; -webkit-box-shadow: 0 0 0px 1000px #D4D4D4 inset !important; box-shadow: 0 0 0px 1000px #D4D4D4 inset !important; }

.wpcf7 .ajax-loader { display: none !important; }

.wpcf7-spinner { display: none !important; }

/*Thanks・404
=========================================== */
#other { padding: 60px 5%; text-align: center; }
#other h2 { font-size: 24px; margin-bottom: 30px; }
#other p { position: relative; }
#other .btn01 { margin-top: 40px; }

/*プライバシーポリシー
=========================================== */
div#pageBox01 { padding: 60px 5%; }

h2.pp-title01 { font-size: 24px; border-bottom: solid 2px; margin-bottom: 30px; padding-bottom: 10px; }

h3.pp-title02 { font-size: 20px; position: relative; margin: 20px 0; padding-left: 10px; }
h3.pp-title02::before { content: ""; width: 2px; height: 65%; background: #000; position: absolute; left: 0; top: 0; bottom: 0; margin: auto 0; }

/*ウインドー幅ごと
=========================================== */
@media screen and (min-width: 0px) and (max-width: 374px) { #main.kasou .main_title { font-size: 5.87vw; }
  .sp-nav-list .navs-list .tel_box .num { padding-left: 9.6vw; font-size: 10.67vw; }
  .sp-nav-list .navs-list .tel_box .num::before { width: 7.47vw; height: 7.47vw; top: 3.73vw; }
  .wp-pagenavi > span, .wp-pagenavi > a { width: 10.67vw; height: 10.67vw; margin: 0 0.53vw; line-height: 10.67vw; }
  .post-navigation ul > li { width: calc((100% / 3) - 1.07vw); }
  .post-navigation ul > li a { padding: 10px 4vw; font-size: 3.47vw; }
  .post-navigation ul > li.prev a { padding-left: 6.93vw; }
  .post-navigation ul > li.prev a::before { left: 4vw; }
  .post-navigation ul > li.next a { padding-right: 6.93vw; }
  .post-navigation ul > li.next a::before { right: 4vw; }
  .post-navigation ul > li.blog-back { margin: 0 1.33vw; }
  .boseki-btn-list .btn a .btn_img { width: 33.07vw; }
  .boseki-btn-list .btn a .btn_text { width: calc(100% - 33.07vw); font-size: 4vw; padding: 0 4vw; }
  .boseki-btn-list .btn a .btn_text em { font-size: 5.33vw; }
  #p02box02 .nayami_box h2 { font-size: 5.87vw; }
  #p12box02 .boseki_box .boseki-btn-list .btn a .btn_img { width: 31.47vw; }
  #p12box02 .boseki_box .boseki-btn-list .btn a .btn_text { width: calc(100% - 31.47vw); padding: 0 2.67vw; font-size: 3.47vw; }
  #p12box02 .boseki_box .boseki-btn-list .btn a .btn_text em { font-size: 4.8vw; }
  .contactTBL .day_box ul.day-list li { margin-right: 10px; } }
@media screen and (min-width: 0px) and (max-width: 360px) { #main.home_main .main-text_box .main_title { font-size: 26px; }
  #main.home_main .main-text_box .main_title em { font-size: 35px; } }
@media screen and (min-width: 0px) and (max-width: 350px) { .btn01.contact_btn a .btn-text { padding-left: 30px; font-size: 16px; }
  .btn01.contact_btn a .btn-text::before { width: 26px; height: 20px; top: 3px; }
  .contactTBL .day_box ul.day-list li { font-size: 13px; margin-right: 6px; }
  .contactTBL .day_box ul.day-list li .wpcf7-form-control-wrap { margin-right: 4px; } }
@media screen and (min-width: 0px) and (max-width: 330px) { #p12box01 .point-list .point00 p span { font-size: 20px; } }
/*safari用
=========================================== */
.safari #main.home_main .main-text_box .main-hukidashi > span.big .tate { letter-spacing: 0.1em; }
