/*フォント指定*/
body { font-size:clamp(14px, 1.5vw, 20px); color: #595757; font-family: 'Yu Gothic','Yu Gothic Medium','メイリオ','MS ゴシック','游ゴシック Medium',sans-serif; font-feature-settings: "palt"; -webkit-text-size-adjust: 100%; }
.fsr-1 { font-size:clamp(5px, 1.2vw, 14px); }
.fsr-2 { font-size:clamp(14px, 2vw, 24px); }
.fsr-22 { font-size:clamp(14px, 2.2vw, 26px); }
.fsr-28 { font-size:clamp(14px, 2.8vw, 30px); }
.fsr-3 { font-size:clamp(16px, 2.8vw, 36px); }
.fsr-4 { font-size:clamp(24px, 4vw, 48px); }
.fsr-5 { font-size:clamp(18px, 2.8vw, 36px); }
.hf-txt-es { font-size:clamp(8px, 1.5vw, 20px); }
.hf-txt-s { font-size:clamp(9px, 1.5vw, 20px); }
.hf-txt-m { font-size:clamp(10px, 1.5vw, 20px); }
.hf-txt { font-size:clamp(12px, 1.5vw, 20px); }
.hf-txt-b { font-size:clamp(14px, 2.8vw, 36px); }
.hf-txt-eb { font-size:clamp(16px, 2.8vw, 36px); }
.hf-txt-h { font-size:clamp(22px, 2.8vw, 36px); }
@font-face { font-family: 'Noto Serif JP'; src: url(fonts/NotoSerifJP-Regular.woff2); font-weight: normal; }
@font-face { font-family: 'Noto Serif JP'; src: url(fonts/NotoSerifJP-Bold.woff2); font-weight: bold; }
.noto_serif { font-family: Noto Serif JP; }
.subtitle { color: #002B60; letter-spacing: 0.12em; }
.text-dark, .page-navi a { color: #231815; }
.text-gray { color: #595757; }
.section-color { color: #4B4B4B; }
.ls-top { letter-spacing: 1rem; }

/*各パーツサイズ指定*/
.container { max-width: 1000px; }
img { max-width: 100%; }
section { padding-top: 150px; margin-top:-150px; }
.logo { width: 230px; }

/*固定ヘッダー・フッター*/
#header { position: fixed; top: 0; margin: 0; width: 100%; z-index: 3; }
#footer { position: fixed; bottom: 0; margin: 0; width: 100%; z-index: 3; }
.header-wrapper, .bottom-wrapper { background: #D7D6CC; }
.header-wrapper { padding: .75em 0; }
.bottom-wrapper { padding: .5em 0; }
header a, footer a { display: block; text-decoration:none; color: #595757; }
main { z-index: -1; }
ul.page-navi { list-style: none; display: table; width: 100%; align-items: center; padding-left: 0; }
ul.page-navi li { text-align: center; display: table-cell; vertical-align: middle; position: relative; border-bottom: 1px solid #000; }
ul.page-navi li::before { content:""; display:inline-block; width: 1px; height: 2.8em; background-color: #595757; position: absolute; top: .2em; left: 0px; }
ul.page-navi li:last-child::after { content:""; display:inline-block; width: 1px; height: 2.8em; background-color: #595757; position: absolute; top: .3em; right: 0px; }
.tohome-fixed {  bottom: 100px; width: 100%; }
.tohome-btn { display: block; margin-left: auto; text-align: center; width: 60px; background: #595757; color: #FFF; text-decoration: none; border-radius: 5px 5px 0 0; padding: .5em; }
/*.rc-btn { max-width: 400px; width: 70%; }*/
.img-shadow { filter: drop-shadow(3px 3px 1px rgba(160, 160, 160, 0.8)); }

/*　ハンバーガーメニューボタン　*/
.hamburger { display : block; position: relative; z-index: 3; width : 42px; height: 42px; cursor: pointer; text-align: center; background: #595757; border-radius: 100%; }
.hamburger span { display: block; position: absolute; width: 30px; height: 2px; left: 6px; background: #FFF; -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; }
.hamburger span:nth-child(1) { top: 10px; }
.hamburger span:nth-child(2) { top: 20px; }
.hamburger span:nth-child(3) { top: 30px; }

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) { top : 20px; left: 6px; background: #fff; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); }
.hamburger.active span:nth-child(2), .hamburger.active span:nth-child(3) { top: 20px; background :#fff; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }

/* メニュー背景　*/
nav.globalMenuSp { position: fixed; z-index : 2; top: 0; left: 0; color: #fff; background: rgba( 71,70,73,0.8 ); text-align: center; width: 100%; opacity: 0; display: none; transition: opacity .6s ease, visibility .6s ease; }
nav.globalMenuSp ul { margin: 0 auto; padding: 0; width: 100%; }
nav.globalMenuSp ul li { list-style-type: none; padding: .25rem 0; width: 100%; transition: .4s all; border-bottom: 1px solid #999; }
nav.globalMenuSp ul li:last-child { padding-bottom: 0; }
nav.globalMenuSp ul li:hover{ background :#ddd; }
nav.globalMenuSp ul li a { display: block; color: #fff; padding: .75em 0; text-decoration :none; } 

/* クリックでjQueryで追加・削除 */
nav.globalMenuSp.active { opacity: 100; display: block; }

/*トップページ*/
.top-text { bottom: 1rem; }
.top-message { background-image: url(img/top-message-bg.jpg); background-repeat: none; background-size: cover; margin: 3em auto; padding: 2em; }
.top-message-text { padding : 2em 0; }
ul.top-message-nav { list-style: none; }
ul.top-message-nav li { display: inline-block; }
ul.top-message-nav li:before, .top-message-nav li:last-child::after { content: "｜" }
.top-message-nav li a { text-decoration:none; color: #595757; }
.top-btn { width: 50%; margin: auto; padding: .25em 0; background: #DD5866; color: #fff; text-decoration: none; text-align: center; border-radius: 5px; }
.interview-img { max-width: 750px; }

/*問合せ*/
/*.personnel-head  { margin-top: 80px; }*/
.personnel-head p { margin-bottom: 0; }
.personnel-logo { max-width: 40px; width:50%; }
.personnel-innner { background-image: url(img/personnel-bg.jpg); background-repeat: none; background-size: 65%; background-position: bottom left; padding: 1em 0; }
.personnel-box1 { width: 80%; margin-left: 20%; }
.personnel-box2 { width: 52%; margin-left: 48%; }
.privacy-btn { background: #988575; color: #FFF; text-decoration:none; border-radius: 5px; padding: .5em; text-align: right; }
.mailer-btn { background: #22B473; color: #FFF; text-decoration:none; border-radius: 5px; padding: .5em; text-align: right; }
.personnel-icon-size { width:30px; }

/*会社概要*/
.hr-dotted { border-bottom: 3px dotted #988575; background-color: #FFF; }
.overview-table { width: 100%; border-collapse:  collapse; }
.overview-table th, .overview-table td { padding: .5em; border: solid 1px #B2B1B1;  }
.overview-table th { background: #DCD8D6; text-align: center; }
.rect { background: #595757; width: .5em; height: 1em; }
.dl-table { display: flex; width: 100%; flex-wrap: wrap; align-items: stretch; }
.dl-table dt { width: 7em; }
.dl-table dd { width: calc(100% - 7em); }
.text-red { color: #E6231D; }
.text-blue { color: #002B60; }
.text-green { color: #0DAC67; }
.hr-bold { border-bottom: 3px solid; }
.timeline { list-style: none; padding-left: 0; }
.timeline > li { overflow: hidden; margin: 0; position: relative; }
.timeline-date img { width: 40px; }
.timeline-date { width: 55px; float: left; margin-top: 20px; }
.timeline-content { width: calc( 100% - 55px); float: left; border-left: 3px #e5e5d1 solid; padding-left: 10px; padding-top: 10px; padding-bottom: 30px; }
.timeline-content:before { content:  url(img/timeline-circle.png); width: 30px; height: 30px; position: absolute; left: 46px; top: 24px; border-radius: 100%; }
.timeline-content-none { width: calc( 100% - 55px); float: left; border-left: 3px #e5e5d1 solid; padding-left: 30px; }
.timeline-content-none:before { content: none; }
.timeline-title { color: #00689F; }

/*インタビュー*/
.interview-top { height: 1000px; }
.interview-top .top-l-side { width: 425px; }
.interview-top .top-r-side { width: 550px; left: 400px; }
.interview-top .top-img { width: 575x; padding-left: 80px; }
.interview-ttl { height: 132px; }
.interview-ttl p { margin-bottom: 0; }
.ps-md-profile { padding-left: 2rem!important; }
.interview-ttl .l-top { top: -6px; left: 155px; font-size: 38px; color: #FFF; }
.interview-ttl .l-center { top: 42px; left:160px; }
.interview-ttl .l-bottom { top: 68px; left:250px; font-size: 40px; }
.se-mt-3 { margin-top: 0rem !important; }
.i-timeline { color: #FFF; border-radius: .3em; padding: .15em .75em; font-size:clamp(8px, 3vw, 30px); }
.i-timeline-01 { background: #D84C3B; }
.i-timeline-02 { background: #DB7B26; }
.i-timeline-03 { background: #E7951F; }
.i-timeline-04 { background: #9CBB2A; }
.i-timeline-05 { background: #50A453; }
.i-timeline-06 { background: #2875BA; }
.i-timeline-07 { background: #34485C; }
.funeral .l-bottom, .funeral-c { color: #883473; }
.bridal .l-bottom, .bridal-c { color: #E34773; }
.sales .l-bottom, .sales-c { color: #3AA288; }
.management .l-bottom, .management-c { color: #143677; }
.interview-loadmap-bg { height: 1678px; }
.bg-gray { background: #EEEFF0; }
.interview-section-bg { height: 370px; }
.interview-section-title { top: 160px; left: 50%; transform: translateX(-50%); font-size:clamp(20px, 4vw, 48px); color: #94504C; }
/*.loadmap-title { color: #24346C; left: 230px; font-size:clamp(12px, 3vw, 40px); }
.loadmap-title-sentence { line-height: 1.2em; left: 230px; top: 60px; font-size:clamp(6px, 1.5vw, 20px); } */
.section-box { width: 500px; height: 310px; margin-bottom: 2em; }
.section-title { top: 80px; left: 60px; font-size:clamp(10px, 2.4vw, 28px); font-weight: bold; }
.section-title-2line { top: 60px; }
.section-icon { width: 83px; top: 160px; left: 60px; }
.section-content { top: 40px; left: 200px; width: 250px; font-size:clamp(10px, 2.4vw, 28px); }
@media (max-width: 1000px) {
	.interview-top { height: calc(1000 / 1000 * 100vw); }
	.interview-top .top-l-side { width: calc(450 / 1000 * 100vw); }
	.interview-top .top-r-side { width: calc(550 / 1000 * 100vw); left: calc(400 / 1000 * 100vw); }
	.interview-top .top-img { width: calc(575 / 1000 * 100vw); padding-left: calc(80 / 1000 * 100vw); }
	.interview-ttl { height: calc(132 / 1000 * 100vw); }
	.interview-ttl .l-top { top: calc(0 / 1000 * 100vw); left: calc(155 / 1000 * 100vw); font-size: calc(38 / 1200 * 100vw); }
	.interview-ttl .l-center { top: calc(42 / 1000 * 100vw); left: calc(160 / 1000 * 100vw); }
	.interview-ttl .l-bottom { top: calc(68 / 1000 * 100vw); left: calc(250 / 1000 * 100vw); font-size: calc(40 / 1200 * 100vw); }
	.interview-loadmap-bg { height: calc(1678 / 1000 * 100vw); }
	/*.loadmap-title { left: calc(230 / 1000 * 100vw); }
	.loadmap-title-sentence { line-height: calc(1.2em / 1000 * 100vw); left: calc(230 / 1000 * 100vw); top: calc(60 / 1000 * 100vw); } */
	.interview-section-bg { height: calc(370 / 1000 * 100vw); }
	.interview-section-title { top: calc(160 / 1000 * 100vw); }
	.section-box { width: calc(480 / 1000 * 100vw); height: calc(310 / 1000 * 100vw); }
	.section-title { top: calc(80 / 1000 * 100vw); left: calc(60 / 1000 * 100vw); }
	.section-title-2line { top: calc(60 / 1000 * 100vw); }
	.section-icon { width: calc(83 / 1000 * 100vw); top: calc(160 / 1000 * 100vw); left: calc(60 / 1000 * 100vw); }
	.section-content { top: calc(40 / 1000 * 100vw); left: calc(200 / 1000 * 100vw); width: calc(250 / 1000 * 100vw); }
	.logo { width: calc(230 / 1000 * 100vw); }
	.ls-top { letter-spacing: calc(10 / 1000 * 100vw); }
	.top-message { padding: calc(20 / 1000 * 100vw); }
	.top-message-text  { padding: calc(20 / 1000 * 100vw) 0; }
}
@media (max-width: 379px) {
	.interview-top { height: calc(1100 / 1000 * 100vw); }
}


/*メディアクエリ*/

@media (min-width: 379px) {
	.se-mt-3 { margin-top: 1rem !important; }
}

@media (min-width: 576px) {
/*	main { margin: 80px 0 120px; }*/
	.top-text { bottom: 3rem; }
/*	.personnel-head  { margin-top:120px; }*/
	.personnel-logo { max-width: 80px; }
	.personnel-box1 { width:65%; margin-left: 35%; }
	.personnel-box2 { width: 40%; margin-left: 60%; }
}

@media (min-width: 768px) {
	.tohome-btn { width: 80px; padding: .25em }
/*	main { margin: 100px 0 150px; }*/
/*	.personnel-head  { margin-top:140px; }*/
	.personnel-box2 { width: 40%; margin-left: 60%; }
	.timeline-date { width: 110px; margin-top: 0; }
	.timeline-content { width: calc( 100% - 110px); }
	.timeline-date img { width: 95px; }
	.timeline-content:before {  left: 101px; }
	.timeline-content-none { width: calc( 100% - 110px); float: left; border-left: 3px #e5e5d1 solid; padding-left: 30px; }
	.ps-md-profile { padding-left: 5rem!important; }
}

@media (min-width: 992px) {
	.tohome-btn { width: 90px; padding: .25em }
/*	main { margin: 120px 0 200px; }*/
/*	.personnel-head  { margin-top:160px; }*/
	.personnel-icon-size { width:40px; }
}

