@charset "utf-8";

.display-name { color: #fff; }
#container { position: relative; }
header { width: 100%; }
header .head-inr { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
header .header-logo { padding: 10px 40px; line-height: 1; }
header .header-logo a { display: flex; align-items: center; }
header .header-logo p { font-size: 14px; line-height: 20px; color: #3F3E42; }
header .header-logo .hana-mark { width: 80px; margin: 0 10px 0 0; line-height: 1; }
header .header-logo .hana-mark img { width: 100%; }
header .header-logo .hana-name { line-height: 1; }
header .header-logo .logo { width: 200px; line-height: 1; }
header .header-logo .logo img { width: 100%; }
header .header-logo .logo .st0{fill:#3f3e42;}
header .header-contact { font-size: 0; }
header .contact-tel { display: inline-block; background: rgba(0,0,0,0.5); }
header .contact-tel a { pointer-events: none; color: #fff; display: block; }
header .contact-tel dl { padding: 15px; }
header .contact-tel dd { color: #fff; font-size: 14px; line-height: 20px; font-weight: 500; text-align: center; }
header .contact-tel dt { color: #fff; font-size: 40px; font-family: 'Noto Serif', serif; line-height: 50px; font-weight: 600; text-align: center; vertical-align: middle; }
header .contact-tel dt img { width: 30px; margin: 10px 5px; }
header .contact-tel dt span { display: inline-block; line-height:1; }
header .contact-mail { display: inline-block; width: 150px; }
header .btn-mail a { display: block; background: #7C70A4; color: #fff; font-size: 16px; line-height: 30px; padding: 10px; text-align: center; }
header .btn-harry a { display: block; background: #AD4B86; color: #fff; font-size: 16px; line-height: 30px; padding: 10px; text-align: center; }
.nav-list-inr { display: none; }
.menu-box { display: none; }
#nav-close { display: none; } 
.nav-unshown { display:none; }
#global-nav {  }
#global-nav.m-fixed { position: fixed; top: 0; left: 0; height: 80px; width: 100%; }
#global-nav.m-fixed .header-nav { background: rgba(0,0,0,0.5); }
.g-nav { text-align: center; padding: 15px 0; }
.g-nav li { display: inline-block; padding: 10px 1vw; }
.g-nav li a { position: relative; color: #3f3e42; font-size: 16px; line-height: 30px; font-weight: 600; padding: 10px 0; }
#global-nav.m-fixed .g-nav li a { color: #fff; }
.g-nav li a::before,
.g-nav li a::after { border-bottom: solid 1px #3f3e42; bottom: 0; content: ""; display: block; position: absolute; transition: all 0.3s ease; -webkit-transition: all 0.3s ease; width: 0; }
#global-nav.m-fixed .g-nav li a::before,
#global-nav.m-fixed .g-nav li a::after { border-bottom: solid 1px #fff; }
.g-nav li a::before { left: 50%; }
.g-nav li a::after { right: 50%; }
.g-nav li a:hover::before,
.g-nav li a:hover::after { width: 50%; }
.sp-contact { display: none; }

footer { background: url(../images/common/bg_footer.jpg) no-repeat center bottom; background-size: cover; }
footer .bg-foot { background: linear-gradient(rgba(55,54,58,1), rgba(55,54,58,0.7)); }
footer .foot-inr { max-width: 1200px; padding: 5vw 0; margin: 0 auto; }
footer .left-cont { float: left; width: calc( 100% / 3 ); }
footer .left-cont .logo { width: 160px; filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg) brightness(107%) contrast(101%); }
footer .right-cont { float: right; width: calc( 200% / 3 ); }
footer .contact-mail { border-bottom: 1px solid rgba(255,255,255,0.3); padding: 20px 10px; }
footer .contact-mail li { float: left; width: 50%; padding: 20px; }
footer .contact-mail li a { display: block; font-size: 16px; line-height: 20px; color: #fff; border: 1px solid rgba(255,255,255,0.3); padding: 20px; text-align: center; transition: all 0.3s; }
footer .contact-mail li a:hover { opacity: 0.8; }
footer .foot-nav { border-bottom: 1px solid rgba(255,255,255,0.3); padding: 20px 10px; text-align: center; }
footer .foot-nav li { display: inline-block; padding: 20px; }
footer .foot-nav li a { display: inline-block; font-size: 16px; line-height: 20px; color: #fff; transition: all 0.3s; }
footer .foot-nav li a:hover { opacity: 0.8; }
footer .prof-cont { border-bottom: 1px solid rgba(255,255,255,0.3); padding: 20px 10px; }
footer .prof-cont dl { padding: 20px; }
footer .prof-cont dt { float: left; width: 8em; }
footer .prof-cont dt span { display: inline-block; font-size: 16px; line-height: 30px; color: #fff; width: 5em; border: 1px solid rgba(255,255,255,0.3); text-align: center; }
footer .prof-cont dd { float: right; width: calc( 100% - 8em ); font-size: 16px; line-height: 30px; color: #fff; }
footer .prof-cont dd a { color: #fff; }
footer .copy-cont { padding: 30px; }
footer .copy-cont .foot-sub-nav { float: left; }
footer .copy-cont .foot-sub-nav li { display: inline-block; padding: 0 20px; border-left: 1px solid rgba(255,255,255,0.3); }
footer .copy-cont .foot-sub-nav li:first-child { border-left: none; }
footer .copy-cont .foot-sub-nav li a { display: block; color: #fff; font-size: 16px; line-height: 30px; }
footer .copy-cont .copyright { float: right; display: inline-block; color: #fff; font-size: 12px; line-height: 30px }

.contact-info { background: #ad4b86; padding: 5vw; position: relative; overflow: hidden; z-index: -1; }
.contact-info:after { position: absolute; left: -30px; top: -30px; content: ''; display: block; width: 300px; height: 300px; background: url(../images/common/logo_mark.svg) no-repeat center center; opacity: 0.2; filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg) brightness(107%) contrast(101%); }
.contact-info p { font-size: 24px; text-align: center; color: #fff; text-shadow: 0px 2px 5px rgba(0,0,0,0.2); padding: 0 0 20px; }
.contact-info .tel-cont dl { text-align: center; padding: 0; line-height: 70px; }
.contact-info .tel-cont dd { display: inline-block; font-size: 22px; line-height: 25px; padding: 10px; color: #fff; text-shadow: 0px 2px 5px rgba(0,0,0,0.2); }
.contact-info .tel-cont dt { display: inline-block; line-height: 70px; vertical-align: middle; }
.contact-info .tel-cont dt a { pointer-events: none; color: #fff; font-size: 60px; font-family: 'Noto Serif', serif; line-height: 70px; font-weight: 400; text-align: center; vertical-align: middle; text-shadow: 0px 2px 5px rgba(0,0,0,0.2); }
.contact-info .tel-cont dt img { width: 70px; line-height: 70px; margin: 0 5px; vertical-align: middle; }
.contact-info .mail-cont {  }
.contact-info .mail-cont .btn { max-width: 300px; margin: 0 auto; }
.contact-info .mail-cont .btn a { display: block; border: 1px solid #fff; color: #fff; font-size: 16px; line-height: 30px; padding: 15px; text-align: center; transition: all 0.3s; }
.contact-info .mail-cont .btn span { display: block; border: 1px solid #fff; color: #fff; font-size: 16px; line-height: 30px; padding: 15px; text-align: center; transition: all 0.3s; }
.contact-info .mail-cont .btn svg { fill: #fff; width: 20px; height: 20px; line-height: 20px; margin: 0 5px; vertical-align: middle; transition: all 0.3s; }
.contact-info .mail-cont .btn a:hover { background: #fff; color: #ad4b86; }
.contact-info .mail-cont .btn a:hover svg { fill: #ad4b86; }
.contact-info .mail-cont .btn span:hover { background: #fff; color: #ad4b86; }
.contact-info .mail-cont .btn span:hover svg { fill: #ad4b86; }

.top-link { padding: 5vw; }
.top-link ul { max-width: 1200px; margin: 0 auto; }
.top-link ul li { float: left; width: 50%; padding: 0 20px; }
.top-link ul li.company a { display: block; background: url(../images/top/bg_company.jpg) no-repeat center top; background-size: cover; font-size: 24px; line-height: 40px; padding: 60px; color: #fff; text-align: center; }
.top-link ul li.faq a { display: block; background: url(../images/top/bg_faq.jpg) no-repeat center center; background-size: cover; font-size: 24px; line-height: 40px; padding: 60px; color: #7c70a4; text-align: center; }

.bnr-list { padding: 3vw; background: #7c70a4; }
.bnr-list ul { display: flex; justify-content: center; flex-wrap: wrap; }
.bnr-list ul li { width: 25%; padding: 10px; }
.bnr-list ul li img { width: 100%; }
.bnr-list ul li a { display: block; transition: all 0.3s; }
.bnr-list ul li a:hover { opacity: 0.8; }
.show-sp { display: none; }

.page-cont { width: 100%; margin: 0 auto; position: relative; }
.page-title { width: 100%; margin: 0 auto; background: #7C70A4; text-align: center; }
.aboutus .page-title { background: url(../images/common/catch_aboutus.jpg) no-repeat center center; background-size: cover; }
.company .page-title { background: url(../images/common/catch_company.jpg) no-repeat center center; background-size: cover; }
.privacy .page-title { background: url(../images/common/catch_privacy.jpg) no-repeat center center; background-size: cover; }
.page-title h1 { background: rgba(21, 54, 86, 0.5); padding: 5vw 0; }
.page-title h1 span { display: block; max-width: 1080px; margin: 0 auto; font-size: 32px; text-align: left; color: #fff; text-shadow: 0px 2px 5px rgba(0,0,0,0.2); }
.content { padding: 50px 0; max-width: 1080px; margin: 0 auto; }

/*会社概要*/
.company-cont {  }
.company-cont table { width: 100%; border-collapse: collapse; }
.company-cont table tbody { width: 100%; }
.company-cont table tr { border-bottom: 1px solid #D5D7DC; }
.company-cont table th { position: relative; width: 180px; padding: 20px 10px; font-weight: 700; color: #341f7c; }
.company-cont table th:after { position: absolute; left: 0; bottom: -1px; content: ''; display: block; width: 180px; height: 1px; background: #7c70a4; z-index: 0; }
.company-cont table td { padding: 20px 10px; }
.company-cont table dl { padding: 0 0 10px; }
.company-cont table dt { font-weight: bold; }

.about-cont {}
.about-cont h2 { font-size: 26px; text-align: center; padding: 50px 0; }
.about-cont img { width: 100%; }
.about-cont p { font-size: 16px; line-height: 2; text-align: left; padding: 0 0 20px; }
.about-cont .cont-inr-left { float: left; width: 50%; }
.about-cont .cont-inr-right { float: right; width: 50%; }
.about-cont .greeting .cont-inr-left { padding: 0 7vw; }
.about-cont .greeting .cont-inr-right p.sign { text-align: right; }
.about-cont .hope { background: #e5e3ee; }
.about-cont .hope .cont-inr-right { padding: 0 0 0 7vw; }
.about-cont .promise .promise-inr { padding: 0 0 7vw; }
.about-cont .promise h2 { text-align: left; }
.about-cont .promise .number { font-size: 20px; text-decoration: underline; padding: 0 0 20px; }
.about-cont .promise h3 { font-size: 20px; padding: 0 0 40px; }
.about-cont .promise .promise-inr-img.cont-inr-left { padding: 2vw 7vw 0 0; }
.about-cont .promise .promise-inr-img.cont-inr-right { padding: 2vw 0 0 7vw; }
.about-cont .promise .promise-inr-txt { font-size: 16px; line-height: 2; }
.scrollline { display: block; height: 7vw; margin: 0 auto; position: relative; }
.about-cont .greeting .scrollline::after { content: ""; position: absolute; top: 0; left: 50%; width: 1px; height: 7vw; background: #3F3E42; }
.about-cont .promise .scrollline::after { content: ""; position: absolute; top: 0; left: 0; width: 1px; height: 7vw; background: #3F3E42; }

.privacy-cont {}
.privacy-cont h2 { font-size: 26px; text-align: center; padding: 30px 0; }
.privacy-inr { padding: 0 0 50px; }
.privacy-cont ul { padding: 10px 0 10px 2rem; }
.privacy-cont ul li { list-style-type: decimal; padding: 0 0 5px; }
.privacy-cont .txt-right { width: 15rem; margin: 0 0 0 auto; }
.privacy-cont dl { padding: 0 0 30px; }
.privacy-cont dt { font-size: 20px; font-weight: bold; color: #341f7c; border-bottom: 1px solid #7c70a4; margin: 0 auto 10px; padding: 10px; }
.privacy-cont .inr-box { background: #ededed; margin: 0 auto 30px; padding: 20px; }
.privacy-cont .inr-box h3 { padding: 0; }
.privacy-cont .inr-box p { padding: 10px 0 0; }
.privacy-cont h3 { font-weight: bold; padding: 10px 0 0; }
.privacy-cont ol { padding: 10px 0 10px 2rem; }
.privacy-cont ol li { list-style-type: disc; padding: 0 0 5px; }
.privacy-cont .privacy-inr-inr { padding: 10px 0 0; }


/* ───────────────────────────────────────────────────────────────────────────
 1300px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:1300px){
	header { padding: 0 100px 0 0; min-height: 100px; }
	.menu-box { display: block; width: 100px; height: 100px; float: right; position: relative; z-index: 100; background: #7c70a4; }
	.menu-box:hover { cursor: pointer; }
	.menu-btn { display: block; position: absolute; top: 49px; right: 30px; width: 36px; height: 2px; background: #fff; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; -moz-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
	.menu-btn:before { content: ''; position: absolute; width: 36px; height: 2px; background: #fff; top: -12px; right: 0; -moz-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
	.menu-btn:after { content: ''; position: absolute; width: 36px; height: 2px; background: #fff; bottom: -12px; right: 0; -moz-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }
	.menu-btn.active { background: transparent; }
	.menu-btn.active:before { -moz-transform: rotate(-135deg); -webkit-transform: rotate(-135deg); transform: rotate(-135deg); top: 0; right: 0; }
	.menu-btn.active:after { -moz-transform: rotate(135deg); -webkit-transform: rotate(135deg); transform: rotate(135deg); bottom: 0; right: 0; }
	#nav-drawer { display: block; padding: 0; position: fixed; top: 0; right: 0; }
	#nav-content { display: block; position: absolute; width: 300px; height: 100vh; top: 0; right: 0; z-index: 90; padding: 80px 0 0; -webkit-overflow-scrolling: touch; transition: .3s ease-in-out; -webkit-transform: translateX(120%); transform: translateX(120%); background: #7c70a4; }
	#nav-content .global-nav ul { text-align: center; margin: 0 auto; }
	#nav-content .global-nav > ul > li { display: block; padding: 0; text-align: center; border-bottom: 1px solid rgba(227,195,105,0.5); }
	#nav-content .global-nav ul li .main-nav { display: block; color: #7c70a4; text-align: left; font-weight: bold; padding: 5px 0; line-height: 40px; }
	#nav-content .global-nav ul li .main-nav:after { display: none; }
	#nav-input:checked ~ #nav-content { -webkit-transform: translateX(0); transform: translateX(0); }
	.g-nav { text-align: center; padding: 10px; }
	.g-nav li { display: block; padding: 0; }
	.g-nav li a { display: block; width: 100%; padding: 10px; color: #fff; }
	.g-nav li a:before,
	.g-nav li a:after { width: 50%; border-bottom: solid 1px rgba(255,255,255,0.5); }
	.sp-contact { display: block; }
	.sp-contact .contact-tel { padding: 10px; background: transparent; width: 100%; }
	.sp-contact .contact-tel a { pointer-events: none; color: #fff; display: block; text-align: center; }
	.sp-contact .contact-tel dl { padding: 10px; border: 1px solid rgba(255,255,255,0.5); }
	.sp-contact .contact-tel dd { color: #fff; font-size: 14px; line-height: 20px; font-weight: 500; text-align: center; }
	.sp-contact .contact-tel dt { color: #fff; font-size: 24px; line-height: 30px;font-family: 'Noto Serif', serif; font-weight: 600; text-align: center; vertical-align: middle; }
	.sp-contact .contact-tel dt img { width: 20px; margin: 5px; }
	.sp-contact .contact-mail { display: block; padding: 10px; }
	.sp-contact .btn-mail { margin: 0 auto 10px; }
	.sp-contact .btn-mail a { display: block; background: #fff; color: #7C70A4; font-size: 16px; line-height: 30px; padding: 10px; text-align: center; }
	.sp-contact .btn-harry a { display: block; background: #AD4B86; color: #fff; font-size: 16px; line-height: 30px; padding: 10px; text-align: center; }
	.funeral-cont { padding: 8vw 0; }
	.funeral-cont .txt { top: 30px; right: 30px; padding: 40px; }
	.funeral-cont .txt p { padding: 20px 10px 0; }
	footer .foot-inr { padding: 5vw; }
  .content { padding: 5vw; }
}

/* ───────────────────────────────────────────────────────────────────────────
 1023px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:1023px){
	#container { padding: 0; }
	.menu-box { width: 80px; height: 80px; }
	.menu-btn { top: 39px; right: 20px; }
	header { min-height: 80px; }
	header .header-logo p { font-size: 13px; }
	header .header-logo .logo { width: 150px; }
	header .header-contact { position: fixed; bottom: 0; left: 0; float: none; width: 100%; z-index: 1; }
	header .contact-tel { display: block; float: left; width: 50%; background: rgba(0,0,0,0.5); }
	header .contact-tel a { text-align: center; }
	header .contact-tel dl { padding: 5px 10px; }
	header .contact-tel dd { color: #fff; }
	header .contact-tel dt a { color: #fff; }
	header .contact-mail { display: block; float: left; width: 50%; }
	header .btn-mail { float: left; width: 50%; }
	header .btn-harry { float: left; width: 50%; }
	header .btn-mail a { padding: 25px; }
	header .btn-harry a { padding: 25px; }
	footer .left-cont { width: 140px; }
	footer .left-cont .logo { width: 120px; }
	footer .right-cont { width: calc( 100% - 140px ); }
	footer .contact-mail li { padding: 10px; }
	footer .contact-mail li a { font-size: 14px; padding: 20px; }
	footer .contact-mail li a:hover { opacity: 0.8; }
	footer .foot-nav li { padding: 10px; }
	footer .foot-nav li a { font-size: 14px; }
	footer .prof-cont dl { padding: 10px; }
	footer .prof-cont dt { width: 120px; }
	footer .prof-cont dt span { font-size: 14px; line-height: 30px; }
	footer .prof-cont dd { width: calc( 100% - 120px ); font-size: 14px; line-height: 30px; }
	footer .copy-cont { padding: 20px 20px 100px; }
	footer .copy-cont .foot-sub-nav li { padding: 0 20px; }
	footer .copy-cont .foot-sub-nav li a { font-size: 14px; line-height: 30px; }
	.contact-info p { font-size: 20px; }
	.contact-info .tel-cont dd { font-size: 18px; }
	.contact-info .tel-cont dt a { font-size: 48px; }
	.contact-info:after { left: -20px; top: -20px; width: 220px; height: 220px; }
  .page-title { font-size: 28px; padding: 7vw 0; }
	.page-top { right: 20px; bottom: 20px; }
	.bnr-list ul li { width: 50%; padding: 20px; }
	.show-sp { display: block; }
	.entry-header { margin: 0 auto; }
  .about-cont h2 { font-size: 24px; padding: 5vw 0; }
  .about-cont p { font-size: 14px; }
  .about-cont .greeting .cont-inr-left { padding: 0 5vw; }
  .about-cont .hope .cont-inr-right { padding: 0 0 0 5vw; }
  .about-cont .promise .promise-inr { padding: 0 0 5vw; }
  .about-cont .promise .number { font-size: 18px; padding: 0 0 1vw; }
  .about-cont .promise h3 { font-size: 18px; padding: 0 0 3vw; }
  .about-cont .promise .promise-inr-img.cont-inr-left { padding: 2vw 5vw 0 0; }
  .about-cont .promise .promise-inr-img.cont-inr-right { padding: 2vw 0 0 5vw; }
  .about-cont .promise .promise-inr-txt { font-size: 14px; }
  .scrollline { height: 7vw; }
  .about-cont .greeting .scrollline::after { height: 7vw; }
  .about-cont .promise .scrollline::after { height: 7vw; }

}

/* ───────────────────────────────────────────────────────────────────────────
 767px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:767px){
	.menu-box { width: 60px; height: 60px; }
	.menu-btn { top: 29px; right: 15px; width: 30px; height: 1px; }
	.menu-btn:before { width: 30px; height: 1px; top: -11px; }
	.menu-btn:after { width: 30px; height: 1px; bottom: -11px; }
	#nav-content { width: 100%; padding: 60px 0 0; }
	header { min-height: auto; }
	header .header-logo { padding: 10px; }
	header .contact-tel { width: 62%; }
	header .contact-tel a { pointer-events: auto; }
	header .contact-tel dl { padding: 15px 5px; }
	header .contact-tel dd { font-size: 12px; }
	header .contact-tel dt { font-size: 24px; line-height: 30px; }
	header .contact-tel dt img { width: 20px; margin: 5px;}
	header .contact-mail { width: 38%; }
	header .btn-mail { float: none; width: 100%; }
	header .btn-harry { float: none; width: 100%; }
	header .btn-mail a { padding: 5px; font-size: 16px; line-height: 30px; }
	header .btn-harry a { padding: 5px; font-size: 16px; line-height: 30px; }
	.contact-info { padding: 10vw 5vw; }
	.contact-info:after { left: -15px; top: -15px; width: 180px; height: 180px; }
	.contact-info p { font-size: 16px; }
	.contact-info .tel-cont dl { line-height: 40px; }
	.contact-info .tel-cont dd { display: block; font-size: 14px; line-height: 18px; padding: 2px 5px; text-align: center; }
	.contact-info .tel-cont dd br { display: none; }
	.contact-info .tel-cont dt { line-height: 40px; }
	.contact-info .tel-cont dt a { pointer-events: auto; font-size: 36px; line-height: 40px; }
	.contact-info .tel-cont dt img { width: 28px; line-height: 30px; margin: 5px; }
	.top-link ul li { float: none; width: 100%; padding: 10px; }
	.top-link ul li.company a { font-size: 18px; line-height: 24px; padding: 30px; }
	.top-link ul li.faq a { font-size: 18px; line-height: 24px; padding: 30px; }
	.bnr-list { padding: 5vw 0; }
	.bnr-list ul li { padding: 10px; }
	footer .left-cont { float: none; width: 100%; }
	footer .left-cont .logo { margin: 0 auto; }
	footer .right-cont { float: none; width: 100%; }
	footer .contact-mail { padding: 10px 0; }
	footer .contact-mail li { padding: 10px 5px; }
	footer .contact-mail li a { padding: 20px 0; }
	footer .foot-nav { display: none; }
	footer .prof-cont { padding: 10px 5px; }
	footer .prof-cont dl { padding: 10px 0; }
	footer .prof-cont dt { float: none; width: 100%; }
	footer .prof-cont dd { float: none; width: 100%; }
	footer .copy-cont { padding: 0 5vw 120px; }
	footer .copy-cont .foot-sub-nav { float: none; }
	footer .copy-cont .foot-sub-nav li { display: block; float: left; width: 50%; padding: 0; }
	footer .copy-cont .foot-sub-nav li a { padding: 10px 0; font-size: 14px; line-height: 20px; text-align: center; }
	footer .copy-cont .copyright { float: none; display: block; text-align: center; padding: 20px 0; }
  .page-title { font-size: 26px; padding: 10vw 0; }

	.companyCont table { display: block; }
	.companyCont table tbody { display: block; }
	.companyCont table tr { display: block; width: 100%; border-bottom: none; }
	.companyCont table th { display: block; width: 100%; padding: 10px 0 0; }
	.companyCont table th:after { width: 100%; bottom: auto; top: 0; }
	.companyCont table td { display: block; width: 100%; padding: 10px 0; }
	.company-cont table { display: block; }
	.company-cont table tbody { display: block; }
	.company-cont table tr { display: block; width: 100%; border-bottom: none; }
	.company-cont table th { display: block; width: 100%; padding: 10px 0 0; }
	.company-cont table th:after { width: 100%; bottom: auto; top: 0; }
	.company-cont table td { display: block; width: 100%; padding: 10px 0; }

  .about-cont h2 { font-size: 22px; }
  .about-cont .cont-inr-left { float: none; width: 100%; }
  .about-cont .cont-inr-right { float: none; width: 100%; }
  .about-cont .greeting .cont-inr-left { padding: 0 10vw 5vw; }
  .about-cont .hope .cont-inr-right { padding: 0 0 5vw; }
  .about-cont .promise .promise-inr { padding: 0 0 5vw; }
  .about-cont .promise .promise-inr-img.cont-inr-left { padding: 5vw 0; }
  .about-cont .promise .promise-inr-img.cont-inr-right { padding: 5vw 0; }
  .scrollline { height: 10vw; }
  .about-cont .greeting .scrollline::after { height: 10vw; }
  .about-cont .promise .scrollline::after { height: 10vw; }

}





