@charset "utf-8";

@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('/data/common/c2101a080001/css/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'), url('/data/common/c2101a080001/css/fontawesome/webfonts/fa-solid-900.ttf') format('truetype') }

:root { --basecolor: 50, 186, 180 }
:root { --textcolor: 0, 0, 0 }
:root { --bordercolor: 221, 221, 221 }
:root { --blogcolor: 50, 186, 180 }

.cmshtml { scroll-behavior: smooth }
.cmshtml * { box-sizing: border-box }
.cmshtml body { margin: 0; background-color: #fff; color: rgb(var(--textcolor)); line-height: 1.732; font-size: clamp(15px, calc(0.065vw + 14.76px), 16px); font-family: 'Noto Sans JP', sans-serif }
.cmshtml p { margin: 0 }
.cmshtml a { color: rgba(0, 51, 204, 1) }
.cmshtml a:hover { color: rgba(0, 51, 204, .64) }
.cmshtml :is(ul, ol, dl, dt, dd) { margin: 0; padding: 0 }
.cmshtml :is(h1, h2, h3, h4, h5, h6) { margin: 0 }
.cmshtml img { border: none; vertical-align: top }
.cmshtml a img { transition: .3s }
.cmshtml a:hover img { opacity: .72 }
.cmshtml #wrapper img { height: auto }
.cmshtml mark { background: linear-gradient(transparent 64%, #ffdfef 64%); color: #000; padding: 0 1px 1px }
.cmshtml label { display: block; caret-color: transparent }
.cmshtml :is(input[type='text'], input[type='file'], input[type='email'], input[type='tel'], input[type='number'], input[type='date'], input[type='password'], textarea, select) { border: 2px solid #ddd !important; transition: .3s !important; outline: none }
.cmshtml :is(input[type='text'], input[type='file'], input[type='email'], input[type='tel'], input[type='number'], input[type='date'], input[type='password'], textarea, select):focus { border-color: #1b95e0 !important; box-shadow: none !important }
.cmshtml :is(button, input[type='submit'], input[type='button']) { transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Sans JP', sans-serif; border: 2px solid rgb(var(--basecolor)) !important; color: #fff; background: rgb(var(--basecolor)) !important }
.cmshtml :is(button[type='submit'], input[type='submit'], input[type='button']):hover { color: rgb(var(--basecolor)) !important; background: #fff !important; box-shadow: none !important }
.cmshtml button[type='reset'], .rdcontact_btn_back { border: 3px solid #ccc !important; background: #fff !important; margin-right: 8px; transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Sans JP', sans-serif; font-weight: 500; color: #999 !important }
.cmshtml button[type='reset']:hover, .rdcontact_btn_back:hover { opacity: .64; box-shadow: none !important }
.cmshtml form dl { background-color: rgb(250, 249, 244); border: 1px solid rgb(239, 237, 222); border-radius: 8px; padding: 8px 16px !important }
.cmshtml form dt { margin-bottom: 4px !important; font-size: 92% }
.cmshtml .contact_item_title::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\00a0' }
.cmshtml form dt span { color: #fff; font-weight: 400; font-size: 75%; line-height: 1.1; padding: 1px 4px 3px; border-radius: 4px; border: none; background-color: #f90; display: inline-block; margin-left: 8px }
.cmshtml form dd { margin-top: 12px }
.cmshtml textarea { width: calc(100% - 14px) }
.cmshtml .contact_item_title:not(:first-child) { margin-top: 16px !important }
.cmshtml caption { caption-side: bottom; font-size: 88%; margin-top: 8px; color: #777 }
.cmshtml figure img { max-width: 100% }
.cmshtml figcaption { text-align: center; font-size: 88%; margin-top: 8px }
.cmshtml table { border-collapse: collapse }
.cmshtml iframe { border: none }

.cmshtml #mydrawer { position: fixed; width: 100%; height: 100vh; left: 0; background-color: #383844; color: #fff; overflow-y: auto; display: flex; justify-content: center }
.cmshtml .mydrawer-hide { top: -100vh; transition: .4s }
.cmshtml .mydrawer-show { top: 0 !important; transition: .4s }
.cmshtml .noscroll { overflow: hidden }
.cmshtml #mydrawerinner { width: 100%; max-width: 560px; padding-top: clamp(64px, calc(4.545vw + 46.95px), 96px) !important }
.cmshtml #mydrawercontact { padding: 16px }
.cmshtml #mydrawercontact > div:not(:first-child) { margin-top: 16px }
.cmshtml #mydrawercontact a { display: flex; align-items: center; color: #fff; text-decoration: none; border: none; background: linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); border-radius: 4px; padding: 4px 16px; width: 100%; font-weight: 600 }
.cmshtml .mydrawercontactphone a::before { display: inline-block; font-family: 'Font Awesome 6 Free'; content: '\f3cd'; width: 26px; font-size: 120%; text-align: center }
.cmshtml .mydrawercontactmail a::before { display: inline-block; font-family: 'Font Awesome 6 Free'; content: '\f0e0'; width: 26px; font-size: 120%; text-align: center; padding-top: 3px }
.cmshtml #mydrawernav { margin-top: 8px }
.cmshtml #mydrawernav a { display: flex; align-items: center; padding: 8px 16px; color: #fff; text-decoration: none; border-bottom: 1px solid #555; width: 100% }
.cmshtml .mydrawernavparent a::before { font-family: 'Font Awesome 6 Free'; content: '\f054\2002'; font-size: 64%; padding-top: 3px; display: inline-block }
.cmshtml .mydrawernavchild a::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\2002'; font-size: 64%; padding: 3px 0 0 16px; display: inline-block }

@media (max-width: 1079px) {
.cmsbody { font-feature-settings: 'palt'; -webkit-text-size-adjust: 100% }
.cmshtml :is(h1, .largeonly, #globalnavouter) { display: none }
.cmshtml #wrapper { position: relative }
.cmshtml header { display: flex; justify-content: space-between; align-items: center; position: sticky; top: 0; z-index: 2; padding: 8px 16px; background-color: #fff }
.cmshtml #headerlogo { max-width: 213px; width: 40% }
.cmshtml #headerlogo img { width: 100% }
.cmshtml #containermainvisual { position: relative; padding-bottom: clamp(24px, calc(3.409vw + 11.22px), 48px) }
.cmshtml #mainvisual img { max-width: 100% }
.cmshtml #mainvisualmask { position: absolute; right: 0; bottom: 0; left: 0 }
.cmshtml #mainvisualmask img { max-width: 100% }
.cmshtml #mainvisualtext { position: absolute; right: 0; bottom: clamp(48px, calc(14.205vw + -5.27px), 148px); left: 8%; font-size: clamp(22px, calc(1.705vw + 15.61px), 34px); font-weight: 700; color: #fff; line-height: 1.52 }
.cmshtml #containerpagetitle { position: relative }
.cmshtml #pagetitleimg img { width: 100%; height: clamp(200px, calc(11.364vw + 157.39px), 280px) !important; object-fit: cover }
.cmshtml #pagetitlemask { position: absolute; right: 0; bottom: 0; left: 0 }
.cmshtml #pagetitlemask img { max-width: 100% }
.cmshtml #pagetitleouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0 }
.cmshtml #pagetitle { margin-top: 56px; color: #fff; text-shadow: 1px 1px 1px #000; padding: 0 16px }
.cmshtml .pagetitleen { font-weight: 500; font-size: clamp(15px, calc(0.426vw + 13.4px), 18px) }
.cmshtml .pagetitleja { font-weight: 600; font-size: clamp(28px, calc(1.705vw + 21.61px), 40px); line-height: 1.2 }
.cmshtml #maincontents { margin: 24px 0 40px }
.cmshtml .containermysection01 { margin-top: 40px; background: url(../img/common/back01.png) center bottom / 100% no-repeat; padding: 0 16px 40px }
.cmshtml .containermysection01 > div:nth-child(1) { }
.cmshtml .containermysection01 > div:nth-child(2) { }
.cmshtml .mytitle01 h3 { font-weight: 600; font-size: clamp(15px, calc(0.142vw + 14.47px), 16px); color: #0e6623; text-align: center }
.cmshtml .mytitle01 h3::before { content: '/ ' }
.cmshtml .mytitle01 h2 { font-weight: 700; font-size: clamp(24px, calc(0.284vw + 22.93px), 26px); color: #0e6623; text-align: center }
.cmshtml .mysection01title { font-size: clamp(28px, calc(2.273vw + 19.48px), 44px); line-height: 1.4; margin-top: 16px; text-align: center }
.cmshtml .mysection01text { margin: 24px 0 32px }
.cmshtml .mysection01btn { margin-bottom: 8px; text-align: center }
.cmshtml .mysection01btn a { display: inline-block; width: 216px; text-decoration: none; color: #fff; font-weight: 600; font-size: 16px; border: none; border-radius: 4px; background: url(../img/common/back02.png) calc(100% - 16px) center no-repeat, linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: 10px 16px; box-shadow: 0 0 3px #ccc; margin: 3px }
.cmshtml .mysection01img { margin-top: 32px; text-align: center }
.cmshtml .mysection01img img { max-width: 100%; border: none; border-radius: 8px }
.cmshtml .containermysection02 { margin-top: 56px; background-color: #00845f; padding: 48px 16px }
.cmshtml .mysection02 { }
.cmshtml .mytitle02 h3 { font-weight: 600; font-size: clamp(15px, calc(0.142vw + 14.47px), 16px); color: #fff; text-align: center }
.cmshtml .mytitle02 h3::before { content: '/ ' }
.cmshtml .mytitle02 h2 { font-weight: 700; font-size: clamp(24px, calc(0.284vw + 22.93px), 26px); color: #fff; text-align: center }
.cmshtml .mysection02cards { margin-top: 32px }
.cmshtml .mysection02cards > div { margin-bottom: 40px }
.cmshtml .mysection02cardimg { text-align: center }
.cmshtml .mysection02cardimg img { max-width: 100%; border: none; border-radius: 8px }
.cmshtml .mysection02cards dl { margin-top: 12px }
.cmshtml .mysection02cards dt { font-size: clamp(20px, calc(0.568vw + 17.87px), 24px); color: #fff; font-weight: 600 !important; text-align: center }
.cmshtml .mysection02cards dd { color: #fff; margin-top: 8px }
.cmshtml .mysection02btn { text-align: center; margin-top: 40px }
.cmshtml .mysection02btn a { display: inline-block; width: 216px; text-decoration: none; color: #000; font-weight: 600; font-size: 16px; border: none; border-radius: 4px; background: #fff url(../img/common/back03.png) calc(100% - 16px) center no-repeat; padding: 10px 16px; box-shadow: 0 0 3px #006247; margin: 3px }
.cmshtml .containermysection03 { background: url(../img/common/back04.png) center bottom / cover no-repeat; padding: 64px 16px }
.cmshtml .mysection03 { }
.cmshtml .mytitle03 :is(h3, dt) { font-weight: 600; font-size: clamp(15px, calc(0.142vw + 14.47px), 16px); color: #0e6623; text-align: center }
.cmshtml .mytitle03 :is(h3, dt p)::before { content: '/ ' }
.cmshtml .mytitle03 :is(h2, dd) { font-weight: 700; font-size: clamp(24px, calc(0.284vw + 22.93px), 26px); color: #0e6623; line-height: 1.6; text-align: center }
.cmshtml .mysection03text { font-size: 16px; margin-top: 24px }
.cmshtml .mysection03text br { display: none }
.cmshtml .mysection03images { margin-top: 32px; display: flex; justify-content: center }
.cmshtml .mysection03images > div { width: 33.333% }
.cmshtml .mysection03images img { max-width: 100% }
.cmshtml .mysection03images > div:first-child img { border: none; border-top-left-radius: 8px; border-bottom-left-radius: 8px }
.cmshtml .mysection03images > div:last-child img { border: none; border-top-right-radius: 8px; border-bottom-right-radius: 8px }
.cmshtml .mysection03btn { margin-top: 32px; text-align: center }
.cmshtml .mysection03btn a { display: inline-block; width: 216px; text-decoration: none; color: #fff; font-weight: 600; font-size: 16px; border: none; border-radius: 4px; background: url(../img/common/back02.png) calc(100% - 16px) center no-repeat, linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: 10px 16px; box-shadow: 0 0 3px #ccc; margin: 3px }
.cmshtml .mysection03btn a:hover { opacity: .72; color: #fff; background-position: calc(100% - 24px) center, 100% }
.cmshtml .containermysection04 { background-color: #eaf3f2; padding: 40px 16px }
.cmshtml .mysection04 { }
.cmshtml .mysection04 > div:nth-child(1) { }
.cmshtml .mysection04 > div:nth-child(2) { margin-top: 24px }
.cmshtml .mysection04btn { margin-top: 24px; text-align: center }
.cmshtml .mysection04btn a { display: inline-block; width: 240px; text-decoration: none; color: #fff; font-weight: 600; font-size: 15px; border: none; border-radius: 4px; background: url(../img/common/back02.png) calc(100% - 16px) center no-repeat, linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: 10px 16px; box-shadow: 0 0 3px #ccc; margin: 3px }
.cmshtml .mysection04btn01 { display: none }
.cmshtml .mysection04banners { margin-top: 40px; display: flex; justify-content: space-around }
.cmshtml .mysection04banners > div { max-width: 580px; width: 46%; margin: 8px; text-align: center; background-color: #fff; border: none; border-radius: 8px; box-shadow: 0 0 8px #c2e6e2; padding: 24px 16px 56px; position: relative }
.cmshtml .mysection04banneren { font-size: clamp(22px, calc(1.42vw + 16.67px), 32px); font-weight: 700; background: linear-gradient(to right, #008f25 32%, #00c372 80%); -webkit-background-clip: text; background-clip: text; color: transparent; line-height: 1.3 }
.cmshtml .mysection04bannerja { font-size: clamp(16px, calc(0.568vw + 13.87px), 20px); font-weight: 600 }
.cmshtml .mysection04banners a { display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: url(../img/common/back05.png) center 80% no-repeat; transition: .3s }
.cmshtml .mysection04banners a:hover { background-position: calc(100% - 40px) center }
.cmshtml #containerfooter { background-color: #383844; padding: 48px 16px 24px }
.cmshtml footer { }
.cmshtml #footerinfo { color: #fff; text-align: center }
.cmshtml .footercompanyname { margin: 16px 0 }
.cmshtml .footeraddress { font-size: 92% }
.cmshtml .footeraddress a { color: #fff; text-decoration: underline }
.cmshtml #containerfooternav { margin-top: 24px }
.cmshtml #footernav { display: none }
.cmshtml #footernav > div:not(:first-child) { margin-left: 43px }
.cmshtml #footernav a { color: #fff; text-decoration: none; line-height: 2; transition: .3s }
.cmshtml #footernav a:hover { opacity: .72 }
.cmshtml #footernav .footernavsub a { color: #bbb; font-size: 94% }
.cmshtml #footernav .footernavsub a::before { content: '- '; padding-left: 8px }
.cmshtml #footercopy { text-align: center; color: #bbb; font-size: 13px }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 8px 16px }
.cmshtml .smalltac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 8px; right: 8px; display: none; width: 48px; height: 48px; opacity: 0; transition: opacity 0.5s ease }
.cmshtml #pt img { width: 48px; height: 48px }
.cmshtml #mydrawerhambergerouter { position: relative; z-index: 9999; width: 24px; transform: translateY(-4px) }
.cmshtml #mydrawertoggle { display: none }
.cmshtml #mydrawerhamberger { display: block; cursor: pointer }
.cmshtml #mydrawerhamberger span { display: block; background-color: #000; transition: .4s; transform-origin: 0; width: 28px; height: 2px; margin-top: 8px }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(1) { transform: translate(4px, 0) rotate(45deg) }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(2) { opacity: 0 }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(3) { transform: translate(4px, 0) rotate(-45deg) }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: block !important; padding: 8px 16px !important; background-color: #fff !important; border: none !important; border-radius: 4px !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { width: 100% !important; height: 104px !important; object-fit: cover !important; border-radius: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { display: block !important }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: 14px !important; color: #777 }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { margin: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none !important; color: #000 !important; transition: .3s }
.cmshtml .mynewarticles .rdnewArticle-ContTitle a:hover { color: #666 !important }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 16px !important; border: none !important }

/* ブログ */
.cmshtml #myblogframe { margin: 0 16px }
.cmshtml #myblogmain { }
.cmshtml #myblogcommon { margin-top: 40px }
.cmshtml #myblogcommon h4 { background-color: #bbb; color: #fff; font-weight: 400 !important; font-size: 14px !important; padding: 0 4px; border: none !important }
.cmshtml .rdListItem a { text-decoration: none }
.cmshtml .rdListImage { height: 220px; overflow: hidden; text-align: center }
.cmshtml .rdListImageItem { width: 100%; height: 220px !important; object-fit: cover }
.cmshtml .rdListImageEmpty { background-color: #f8f8f8 }
.cmshtml .rdListImageItemDummy { border: none !important }
.cmshtml .rdpublishDate { font-size: 88% !important }
.cmshtml :is(.rdarticleTitleText, .rdRelatedArticles-title) { overflow: hidden; white-space: nowrap; text-overflow: ellipsis }
.cmshtml .rdarticleTitleText a { font-size: 88% !important; color: rgb(var(--textcolor)) }
.cmshtml .rdarticleTitle h3 { border-bottom: 3px solid rgb(var(--basecolor)) !important; font-size: 18px !important }
.cmshtml .rdListCategoryItem { background-color: rgba(0, 0, 0, .64) !important; padding: 0 4px !important }
.cmshtml .ItemrdListTagListItem { padding: 0 4px !important; margin-right: 4px !important }
.cmshtml .rdnewArticle { border: none !important; padding: 0 !important }
.cmshtml #myblogframe .rdnewArticle-item { padding: 6px 2px !important }
.cmshtml #myblogframe :is(.rdnewArticle-item + .rdnewArticle-item, .rdCategorylist-item + .rdCategorylist-item, .rdMonthlyArchive-item + .rdMonthlyArchive-item) { border-top: 1px solid rgb(var(--bordercolor)) !important }
.cmshtml .rdCategorylist-link { padding: 4px !important }
.cmshtml .rdarticlecalendar { font-size: 92%; width: 100%; max-width: 338px; margin: 0 auto }
.cmshtml .rdCalendarBody { line-height: 1.3 }
.cmshtml .rdCalendarTable-link { color: #fff !important }
.cmshtml .rdMonthlyArchive-item { padding: 4px 4px 4px 14px !important; margin: 0 4px }
.cmshtml .rdTaglist-link { padding: 2px 4px !important; font-size: 88%; color: #0061c9 !important }
.cmshtml .rdTaglist-link:hover { color: #fff !important }
.cmshtml .rdBlogSearch-btn { padding: 0 8px !important; margin-left: 8px; color: #fff !important }
.cmshtml .rdRelatedArticles { width: calc(100% + 16px); transform: translateX(-8px) }
.cmshtml .rdRelatedArticles-item { border: 1px solid rgb(var(--bordercolor)); margin: 0 8px 24px; width: calc(50% - 16px) !important; padding: 8px !important }
.cmshtml .rdRelatedArticles-imageWrapper { border: none !important; height: 96px !important; margin-bottom: 4px !important }
.cmshtml .rdRelatedArticles-image { width: 100%; height: 96px !important; object-fit: cover }
.cmshtml .rdRelatedArticles-title a { color: rgb(var(--textcolor)); text-decoration: none }
.cmshtml .rdRelatedArticles-title a:hover { opacity: .8 }
.cmshtml :is(.rdRelatedArticles-catlink, .rdRelatedArticles-taglink) { padding: 3px 4px !important }
.cmshtml .rdReadMore { font-size: 88% }

.cmshtml .mycommonareatop { margin-bottom: 16px }
.cmshtml .mycommonareabottom { margin-top: 32px }
}

@media (max-width: 767px) {
.cmshtml #mydrawerhamberger { transform: scale(.8) }
.cmshtml #mydrawerinner { padding-top: 40px }
}

@media (min-width: 1080px) {
.cmsbody { }
.cmshtml :is(h1, #mydrawerhambergerouter, #mydrawer, .smallonly) { display: none }
.cmshtml #wrapper { position: relative; max-width: 1920px; margin: 0 auto }
.cmshtml header { display: flex; justify-content: space-between; align-items: flex-start; height: 128px; position: sticky; top: 0; z-index: 2; padding: 12px 21px 0 20px }
.cmshtml #headerlogo { margin-top: 10px; width: 213px }
.cmshtml #headerlogo img { width: 100%; transition: .3s }
.cmshtml .thinheader #headerlogo img { width: 80% }
.cmshtml #globalnavouter { background-color: #fff; border: none; border-radius: 8px; display: flex; align-items: center; padding: 9px clamp(13px, calc(.476vw + 7.86px), 17px) 9px clamp(24px, calc(2.381vw + -1.71px), 44px); margin: 3px; box-shadow: 0 0 3px rgba(170, 170, 170, .4) }
.cmshtml #globalnav { display: flex; column-gap: clamp(16px, calc(2.381vw + -9.71px), 36px) }
.cmshtml .thinheader #globalnav { column-gap: 16px }
.cmshtml #globalnav a { text-decoration: none; color: #000; display: inline-block; position: relative; padding: 8px 0 7px; transition: .3s; font-size: clamp(16px, calc(.238vw + 13.43px), 18px) }
.cmshtml .thinheader #globalnav a { font-size: 16px }
.cmshtml #globalnav a:hover { color: #666 }
.cmshtml #globalnav a::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background-color: #f90; transform: scale(0, 1); transition: .2s }
.cmshtml #globalnav a:hover::after { transform: scale(1, 1) }
.cmshtml #headerbtn { margin-left: clamp(24px, calc(3.929vw + -18.43px), 57px) }
.cmshtml .thinheader #headerbtn { margin-left: 24px }
.cmshtml #headerbtn a { display: inline-block; text-decoration: none; color: #fff; font-weight: 500; font-size: clamp(17px, calc(.238vw + 14.43px), 19px); border: none; border-radius: 4px; background: linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: clamp(12px, calc(.476vw + 6.86px), 16px) clamp(24px, calc(2.024vw + 2.14px), 41px); letter-spacing: 1px; box-shadow: 0 0 3px #ccc; margin: 3px; transition: .3s }
.cmshtml #headerbtn a:hover { opacity: .72 }
.cmshtml .thinheader #headerbtn a { padding: 6px 24px; font-size: 17px }
.cmshtml #containermainvisual { position: relative; padding-bottom: clamp(49px, calc(4.524vw + .14px), 87px); margin-top: -128px }
.cmshtml #mainvisual img { max-width: 100% }
.cmshtml #mainvisualmask { position: absolute; right: 0; bottom: 0; left: 0 }
.cmshtml #mainvisualmask img { max-width: 100% }
.cmshtml #mainvisualtext { position: absolute; right: 0; bottom: clamp(148px, calc(13.333vw + 4px), 260px); left: 9.583%; font-size: clamp(34px, calc(3.095vw + .57px), 60px); font-weight: 700; color: #fff; line-height: 1.52; letter-spacing: 1.8px }
.cmshtml #containerpagetitle { position: relative; margin-top: -128px }
.cmshtml #pagetitleimg img { max-width: 100% }
.cmshtml #pagetitlemask { position: absolute; top: 0; right: 0; bottom: 0; left: 0 }
.cmshtml #pagetitlemask img { max-width: 100% }
.cmshtml #pagetitleouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0 }
.cmshtml #pagetitle { max-width: 1248px; margin: clamp(112px, calc(5.714vw + 50.29px), 160px) auto 0; color: #fff; text-shadow: 1px 1px 1px #000; padding: 0 24px }
.cmshtml .pagetitleen { font-weight: 500; font-size: clamp(18px, calc(0.714vw + 10.29px), 24px); letter-spacing: 1px }
.cmshtml .pagetitleja { font-weight: 600; font-size: clamp(46px, calc(1.667vw + 28px), 60px); line-height: 1.2 }
.cmshtml #maincontents { margin: 40px 0 120px }
.cmshtml .containermysection01 { display: flex; margin-top: clamp(64px, calc(4.286vw + 17.71px), 100px); background: url(../img/common/back01.png) center bottom / 100% no-repeat; padding-bottom: clamp(80px, calc(4.762vw + 28.57px), 120px); align-items: flex-end }
.cmshtml .containermysection01 > div:nth-child(1) { width: 46.667%; padding: 0 clamp(32px, calc(4.524vw + -16.86px), 70px) 0 clamp(24px, calc(40vw + -408px), 360px) }
.cmshtml .containermysection01 > div:nth-child(2) { width: 53.333% }
.cmshtml .mytitle01 h3 { font-weight: 600; font-size: clamp(16px, calc(0.238vw + 13.43px), 18px); color: #0e6623 }
.cmshtml .mytitle01 h3::before { content: '/ ' }
.cmshtml .mytitle01 h2 { font-weight: 600; font-size: clamp(26px, calc(0.476vw + 20.86px), 30px); color: #0e6623; letter-spacing: 1.3px; margin-top: clamp(8px, calc(0.476vw + 2.86px), 12px) }
.cmshtml .mysection01title { font-size: clamp(48px, calc(1.19vw + 35.14px), 58px); line-height: 1.4; letter-spacing: 1.5px; margin-top: clamp(20px, calc(0.833vw + 11px), 27px) }
.cmshtml .mysection01text { margin: clamp(20px, calc(0.714vw + 12.29px), 26px) 0 56px; line-height: 2.4 }
.cmshtml .mysection01btn { margin-bottom: 8px }
.cmshtml .mysection01btn a { display: inline-block; width: clamp(216px, calc(6.429vw + 146.57px), 270px); text-decoration: none; color: #fff; font-weight: 600; font-size: clamp(17px, calc(.238vw + 14.43px), 19px); border: none; border-radius: 4px; background: url(../img/common/back02.png) calc(100% - 32px) center no-repeat, linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: clamp(12px, calc(.476vw + 6.86px), 16px) clamp(24px, calc(2.024vw + 2.14px), 41px); letter-spacing: 1px; box-shadow: 0 0 3px #ccc; margin: 3px; transition: .3s }
.cmshtml .mysection01btn a:hover { opacity: .72; color: #fff; background-position: calc(100% - 24px) center, 100% }
.cmshtml .mysection01img img { max-width: 100%; border: none; border-top-left-radius: 12px; border-bottom-left-radius: 12px }
.cmshtml .containermysection02 { margin-top: 81px; background-color: #00845f; padding: 86px 24px 106px }
.cmshtml .mysection02 { max-width: 1200px; margin: 0 auto }
.cmshtml .mytitle02 h3 { font-weight: 600; font-size: clamp(16px, calc(0.238vw + 13.43px), 18px); color: #fff }
.cmshtml .mytitle02 h3::before { content: '/ ' }
.cmshtml .mytitle02 h2 { font-weight: 700; font-size: clamp(38px, calc(0.714vw + 30.29px), 44px); color: #fff; letter-spacing: 1.3px; margin-top: 1px }
.cmshtml .mysection02cards { display: flex; justify-content: space-between; margin-top: 37px }
.cmshtml .mysection02cards > div { width: 48.333% }
.cmshtml .mysection02cards img { max-width: 100%; border: none; border-radius: 10px }
.cmshtml .mysection02cards dl { margin-top: 26px }
.cmshtml .mysection02cards dt { font-size: clamp(24px, calc(0.476vw + 18.86px), 28px); color: #fff; font-weight: 600 !important }
.cmshtml .mysection02cards dd { color: #fff; margin-top: 16px }
.cmshtml .mysection02btn { text-align: center; margin-top: 55px }
.cmshtml .mysection02btn a { display: inline-block; width: clamp(216px, calc(6.429vw + 146.57px), 270px); text-decoration: none; color: #000; font-weight: 600; font-size: clamp(17px, calc(.238vw + 14.43px), 19px); border: none; border-radius: 4px; background: #fff url(../img/common/back03.png) calc(100% - 32px) center no-repeat; padding: clamp(12px, calc(.476vw + 6.86px), 16px) clamp(24px, calc(2.024vw + 2.14px), 41px); letter-spacing: 1px; box-shadow: 0 0 3px #006247; margin: 3px; transition: .3s; text-align: left }
.cmshtml .mysection02btn a:hover { opacity: .88; color: #00845f; background-position: calc(100% - 24px) center, 100% }
.cmshtml .containermysection03 { background: url(../img/common/back04.png) center bottom / cover no-repeat; padding: clamp(64px, calc(5.476vw + 4.86px), 110px) 24px 114px }
.cmshtml .mysection03 { max-width: 1200px; margin: 0 auto }
.cmshtml .mytitle03 :is(h3, dt) { font-weight: 600; font-size: clamp(16px, calc(0.238vw + 13.43px), 18px); color: #0e6623 }
.cmshtml .mytitle03 :is(h3, dt p)::before { content: '/ ' }
.cmshtml .mytitle03 :is(h2, dd) { font-weight: 700; font-size: clamp(38px, calc(0.714vw + 30.29px), 44px); color: #0e6623; letter-spacing: 1.3px; line-height: 1.6 }
.cmshtml .mysection03text { text-align: center; font-size: clamp(17px, calc(0.357vw + 13.14px), 20px); margin-top: clamp(40px, calc(2.857vw + 9.14px), 64px) }
.cmshtml .mysection03images { margin-top: 62px; display: flex; justify-content: center }
.cmshtml .mysection03images > div { width: 25% }
.cmshtml .mysection03images img { max-width: 100% }
.cmshtml .mysection03images > div:first-child img { border: none; border-top-left-radius: 10px; border-bottom-left-radius: 10px }
.cmshtml .mysection03images > div:last-child img { border: none; border-top-right-radius: 10px; border-bottom-right-radius: 10px }
.cmshtml .mysection03btn { margin-top: 71px; text-align: center }
.cmshtml .mysection03btn a { display: inline-block; width: clamp(216px, calc(6.429vw + 146.57px), 270px); text-decoration: none; color: #fff; font-weight: 600; font-size: clamp(17px, calc(.238vw + 14.43px), 19px); border: none; border-radius: 4px; background: url(../img/common/back02.png) calc(100% - 32px) center no-repeat, linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: clamp(12px, calc(.476vw + 6.86px), 16px) clamp(24px, calc(2.024vw + 2.14px), 41px); letter-spacing: 1px; box-shadow: 0 0 3px #ccc; margin: 3px; transition: .3s; text-align: left }
.cmshtml .mysection03btn a:hover { opacity: .72; color: #fff; background-position: calc(100% - 24px) center, 100% }
.cmshtml .containermysection04 { background-color: #eaf3f2; padding: 115px 24px 131px }
.cmshtml .mysection04 { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between }
.cmshtml .mysection04 > div:nth-child(1) { width: 40%; display: flex; flex-direction: column; justify-content: space-between }
.cmshtml .mysection04 > div:nth-child(2) { width: 60% }
.cmshtml .mysection04btn a { display: inline-block; text-decoration: none; color: #fff; font-weight: 600; font-size: clamp(15px, calc(0.119vw + 13.71px), 16px); border: none; border-radius: 4px; background: url(../img/common/back02.png) calc(100% - 30px) center no-repeat, linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: clamp(14px, calc(0.476vw + 8.86px), 18px) 62px clamp(14px, calc(0.476vw + 8.86px), 18px) clamp(24px, calc(1.667vw + 6px), 38px); letter-spacing: 1px; box-shadow: 0 0 3px #ccc; margin: 3px; transition: .3s }
.cmshtml .mysection04btn02 { display: none }
.cmshtml .mysection04btn a:hover { opacity: .72; color: #fff; background-position: calc(100% - 22px) center, 100% }
.cmshtml .mysection04btnunder { display: none }
.cmshtml .mysection04banners { max-width: 1216px; margin: 80px auto 0; display: flex; justify-content: space-between }
.cmshtml .mysection04banners > div { max-width: 580px; width: 47.697%; margin: 8px; text-align: center; background-color: #fff; border: none; border-radius: 12px; box-shadow: 0 0 8px #c2e6e2; padding: 64px; position: relative; ; border: 4px solid #fff; transition: .4s }
.cmshtml .mysection04banners > div:hover { ; border-color: #008f25 }
.cmshtml .mysection04banneren { font-size: clamp(32px, calc(0.952vw + 21.71px), 40px); font-weight: 700; background: linear-gradient(to right, #008f25 32%, #00c372 80%); -webkit-background-clip: text; background-clip: text; color: transparent; letter-spacing: 1.6px }
.cmshtml .mysection04bannerja { font-size: clamp(20px, calc(0.714vw + 12.29px), 26px); font-weight: 600 }
.cmshtml .mysection04banners a { display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: url(../img/common/back05.png) calc(100% - 56px) center no-repeat; transition: .3s }
.cmshtml .mysection04banners a:hover { background-position: calc(100% - 40px) center }
.cmshtml #containerfooter { background-color: #383844; padding: 70px 24px 96px }
.cmshtml footer { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between }
.cmshtml #footerinfo { color: #fff }
.cmshtml .footercompanyname { margin: 29px 0 35px }
.cmshtml .footeraddress { line-height: 2 }
.cmshtml .footeraddress a { color: #fff; text-decoration: underline; transition: .3s }
.cmshtml .footeraddress a:hover { opacity: .72 }
.cmshtml #containerfooternav { display: flex; flex-direction: column; justify-content: space-between }
.cmshtml #footernav { display: flex; justify-content: flex-end }
.cmshtml #footernav > div:not(:first-child) { margin-left: 43px }
.cmshtml #footernav a { color: #fff; text-decoration: none; line-height: 2; transition: .3s }
.cmshtml #footernav a:hover { opacity: .72 }
.cmshtml #footernav .footernavsub a { color: #bbb; font-size: 94% }
.cmshtml #footernav .footernavsub a::before { content: '- '; padding-left: 8px }
.cmshtml #footercopy { text-align: right; color: #bbb; font-size: 94% }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 12px 24px }
.cmshtml .largetac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 16px; right: 16px; display: none; width: 80px; height: 80px; opacity: 0; transition: opacity 0.5s ease }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: block !important; padding: 16px 42px !important; background-color: #fff !important; border: none !important; border-radius: 4px !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { width: 100% !important; height: 104px !important; object-fit: cover !important; border-radius: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { display: flex !important }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: clamp(15px, calc(0.065vw + 14.76px), 16px) !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { margin-left: 32px !important }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none !important; color: #000 !important; transition: .3s }
.cmshtml .mynewarticles .rdnewArticle-ContTitle a:hover { color: #666 !important }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 16px !important; border: none !important }

/* ブログ */
.cmshtml #myblogframe { width: 1080px; margin: 0 auto; display: flex; padding: 0 24px }
.cmshtml #myblogmain { width: 712px }
.cmshtml #myblogcommon { width: 272px; margin-left: 48px; font-size: 92% }
.cmshtml #myblogcommon a:hover { opacity: .8 }
.cmshtml #myblogcommon h4 { background-color: #bbb; color: #fff; font-weight: 400 !important; font-size: 92% !important; padding: 2px 8px; border: none !important }
.cmshtml .rdListItem a { text-decoration: none }
.cmshtml .rdListImage { height: 220px; overflow: hidden }
.cmshtml .rdListImageItem { width: 100%; height: 220px !important; object-fit: cover }
.cmshtml .rdListImageEmpty { background-color: #f8f8f8 }
.cmshtml .rdListImageItemDummy { border: none !important }
.cmshtml .rdpublishDate { font-size: 88% !important }
.cmshtml :is(.rdarticleTitleText, .rdRelatedArticles-title) { overflow: hidden; white-space: nowrap; text-overflow: ellipsis }
.cmshtml .rdarticleTitleText a { font-size: 88% !important; color: rgb(var(--textcolor)) }
.cmshtml .rdarticleTitle h3 { border-bottom: 3px solid rgb(var(--basecolor)) !important; font-size: 26px !important }
.cmshtml .rdListItem .rdarticleTitle h3 { font-size: 20px !important }
.cmshtml .rdListCategoryItem { background-color: rgba(0, 0, 0, .64) !important; padding: 2px 8px !important }
.cmshtml .ItemrdListTagListItem { padding: 2px 4px !important; margin-right: 4px !important }
.cmshtml .rdnewArticle { border: none !important; padding: 0 !important }
.cmshtml #myblogframe .rdnewArticle-item { padding: 8px 4px !important }
.cmshtml #myblogframe :is(.rdnewArticle-item + .rdnewArticle-item, .rdCategorylist-item + .rdCategorylist-item, .rdMonthlyArchive-item + .rdMonthlyArchive-item) { border-top: 1px solid rgb(var(--bordercolor)) !important }
.cmshtml .rdCategorylist-link { padding: 4px !important }
.cmshtml .rdarticlecalendar { font-size: 92%; width: 100% }
.cmshtml .rdCalendarBody { line-height: 1.3 }
.cmshtml .rdCalendarTable-link { color: #fff !important }
.cmshtml .rdMonthlyArchive-item { padding: 4px 4px 4px 14px !important; margin: 0 4px }
.cmshtml .rdTaglist-link { padding: 2px 4px !important; font-size: 88%; color: #0061c9 !important }
.cmshtml .rdTaglist-link:hover { color: #fff !important }
.cmshtml .rdBlogSearch-btn { padding: 0 8px !important; margin-left: 8px; color: #fff !important }
.cmshtml .rdRelatedArticles { width: calc(100% + 16px); transform: translateX(-8px) }
.cmshtml .rdRelatedArticles-item { border: 1px solid rgb(var(--bordercolor)); margin: 0 8px 24px; width: calc(33.3333% - 16px) !important }
.cmshtml .rdRelatedArticles-imageWrapper { border: none !important }
.cmshtml .rdRelatedArticles-image { width: 100%; height: 150px !important; object-fit: cover }
.cmshtml .rdRelatedArticles-title a { color: rgb(var(--textcolor)); text-decoration: none }
.cmshtml .rdRelatedArticles-title a:hover { opacity: .8 }
.cmshtml .rdReadMore { font-size: 88% }

.cmshtml .mycommonareatop { margin-bottom: 40px }
.cmshtml .mycommonareabottom { margin-top: 56px }
}

@media (min-width: 1080px) and (max-width: 1440px) {
.cmshtml .mysection01text { line-height: 1.732 }
.cmshtml .containermysection01 { align-items: center }
}

/* ブログ配色 */
.cmshtml .ItemrdListTagListItem { border: none !important; background: rgb(var(--blogcolor)) !important; border-radius: 4px !important }
.cmshtml :is(.rdCategorylist-item + .rdCategorylist-item, .rdMonthlyArchive-item + .rdMonthlyArchive-item) { margin-top: 4px !important; padding-top: 4px !important }
.cmshtml .rdCategorylist-link:after { border-color: transparent transparent transparent rgb(var(--blogcolor)) !important }
.cmshtml .rdCategorylist-link:hover { background: rgba(var(--blogcolor), .16) !important }
.cmshtml :is(.rdTaglist-link, .rdTaglist-link::before, .rdTaglist-link::after) { background: none !important }
.cmshtml .rdTaglist-link { border: 2px solid rgba(var(--blogcolor), .4) !important; border-radius: 4px !important; color: rgb(var(--blogcolor)) !important; padding: 2px 4px !important; font-size: 84% !important }
.cmshtml .rdTaglist-link:hover { color: #fff !important; background-color: rgb(var(--blogcolor)) !important }
.cmshtml .rdMonthlyArchive-item::before { border-color: rgb(var(--blogcolor)) !important }
.cmshtml .rdTaglist .rdTaglist-link::before { content: none !important }
.cmshtml .rdTaglist .rdTaglist-link::after { content: none !important }
.cmshtml #myblogcommon a { text-decoration: none; color: rgb(var(--textcolor)) }
.cmshtml .rdYearlyArchive { list-style: none }
.cmshtml #myblogcommon .rdYearlyArchive a { color: #09f }
.cmshtml #myblogcommon .rdYearlyArchive a:hover { color: #fff }
.cmshtml #myblogcommon .rdYearlyArchive-link { padding: 6px 16px }

/* パンくずリスト */
.cmshtml .rdBreadcrumb { }
.cmshtml .rdBreadcrumbItem { word-spacing: 4px; font-size: 88% }
.cmshtml .rdBreadcrumbItem:first-child::before { font-family: 'Font Awesome 6 Free'; content: '\f0da'; font-weight: 700 }
.cmshtml .rdBreadcrumbArrow { color: #999 }
.cmshtml .rdBreadcrumbLink { text-decoration: none; color: #333 }
.cmshtml .rdBreadcrumbLink:hover { color: #777 }

/* U01スライドショー */
.cmshtml .rdsp-buttons { display: none }

/* U01編集画面用 */
#editView .cmsbody { margin: 0; background-color: #fff; color: rgb(var(--textcolor)); line-height: 1.732; font-size: clamp(15px, calc(0.284vw + 13.94px), 17px); font-family: 'Noto Sans JP', sans-serif }
#editView :is(#globalnav, #footernav, #mydrawernav) edit { padding: 16px }
#editView #mydrawerhambergerouter { display: none }
#editView #mydrawer { display: block; position: static; height: auto }
#editView #pt { position: static }
#editView :is(h3, h5) edit { display: inline-block !important }
#editView header { position: static; height: auto }
#editView #mainvisualtext { position: static !important; color: #000; padding: 40px 80px 0 }
#editView #mainvisualmask { display: none }
#editView #pagetitlemask { display: none }
#editView #pagetitleouter { position: static; background-color: #ddd }
#editView #pagetitle { margin: 0 auto }
#editView :is(#containermainvisual, #containerpagetitle) { margin-top: 0 }
#editView #globalnav { flex-wrap: wrap }
#editView :is(#globalnav, #headerbtn) a { white-space: nowrap }
#editView .containermysection01 > div:nth-child(1) { padding: 0 clamp(32px, calc(4.524vw + -16.86px), 70px) 0 0 }
#editView .mysection04btn02 { display: block }
#editView .mysection04banners > div { padding: 64px !important }
#editView .mysection04banneren { color: #008f25 }
#editView #containerfooter { margin-top: 80px }
#editView :is(.mydrawernavparent, .mydrawernavchild) a::before { font-weight: bold }



/* 共通装飾 */
/* 見出し */
.cmshtml .rdplanetitle h2 { font-size: clamp(22px, calc(1.418vw + 16.68px), 32px) !important; font-weight: 700 !important; border-bottom-width: 4px; border-bottom-style: solid; border-image: linear-gradient(90deg, rgb(var(--basecolor)) 0%, rgb(255, 255, 255) 64%) 1; padding-bottom: clamp(10px, calc(0.851vw + 6.81px), 16px); line-height: 1.1 }
.cmshtml .rdplanetitle h3 { font-size: clamp(20px, calc(1.135vw + 15.74px), 28px) !important; font-weight: 600 !important; border-bottom: 4px solid #eee; position: relative; padding-bottom: 8px }
.cmshtml .rdplanetitle h3::after { border-bottom: 4px solid rgb(var(--basecolor)); content: ''; position: absolute; bottom: -4px; left: 0; width: 8%; height: 4px }
.cmshtml .rdplanetitle h4 { font-size: clamp(18px, calc(0.851vw + 14.81px), 24px) !important; font-weight: 600 !important; border-bottom: 2px solid rgba(var(--basecolor), .32); padding-bottom: 8px; color: rgb(var(--basecolor)) }
.cmshtml .rdplanetitle h5 { font-size: clamp(17px, calc(0.426vw + 15.4px), 20px) !important; font-weight: 600 !important }
.cmshtml .rdplanetitle h5::before { font-family: 'Font Awesome 6 Free'; content: '\f0c8\00a0'; font-weight: bold; color: rgba(var(--basecolor)) }
.cmshtml .rdplanetitle h6 { font-size: clamp(16px, calc(0.284vw + 14.94px), 18px) !important; font-weight: 600 !important; background-color: #eee; padding: 2px clamp(4px, calc(0.567vw + 1.87px), 8px); border: 1px solid #e8e8e8 }
@media (max-width: 767px) {
.cmshtml .rdplanetitle h2 { border-bottom-width: 3px; line-height: 1.3 }
.cmshtml .rdplanetitle h3 { border-bottom-width: 3px }
.cmshtml .rdplanetitle h3::after { border-bottom-width: 3px; bottom: -3px; height: 3px }
.cmshtml .rdplanetitle :is(h3, h4, h5, h6) { line-height: 1.5 }
}
@media (min-width: 768px) and (max-width: 1079px) {
.cmshtml .rdplanetitle h3 { border-bottom-width: 3px }
.cmshtml .rdplanetitle h3::after { border-bottom-width: 3px; bottom: -3px; height: 3px }
.cmshtml .rdplanetitle :is(h3, h4, h5, h6) { line-height: 1.5 }
}

/* 単体エリア・横並びエリア */
@media (max-width: 1079px) {
.cmshtml .box01 { max-width: 100% !important; padding: 0 3% !important }
.cmshtml .flex50 { flex: 0 1 50% !important }
}

/* リンク */
.cmshtml .link01 a { display: inline-block }
.cmshtml .link02 a { display: block; text-align: center }
.cmshtml :is(.link01, .link02) a { text-decoration: none; color: #fff; font-weight: 600; border: none; border-radius: 4px; background: url(../img/common/back02.png) calc(100% - 32px) center no-repeat, linear-gradient(90deg, rgb(230, 174, 1) 0%, rgb(250, 157, 53) 100%); padding: clamp(12px, calc(.476vw + 6.86px), 16px) clamp(64px, calc(1.135vw + 59.74px), 72px) clamp(12px, calc(.476vw + 6.86px), 16px) clamp(24px, calc(2.024vw + 2.14px), 41px); letter-spacing: 1px; box-shadow: 0 0 3px #ccc; margin: 3px; transition: .3s }
.cmshtml :is(.link01, .link02) a:hover { opacity: .72; color: #fff; background-position: calc(100% - 24px) center, 100% }
.cmshtml .link03 a { display: inline-block }
.cmshtml .link04 a { display: block; text-align: center }
.cmshtml :is(.link03, .link04) a { padding: clamp(5px, calc(1.135vw + 0.74px), 13px) clamp(21px, calc(2.27vw + 12.49px), 37px); background-color: #fff; border: clamp(2px, calc(0.142vw + 1.47px), 3px) solid rgb(var(--basecolor)); font-weight: 600; color: rgb(var(--basecolor)); text-decoration: none; transition: .3s }
.cmshtml :is(.link03, .link04) a:hover { opacity: .8; background-color: rgb(var(--basecolor)); color: #fff }
.cmshtml :is(.link03, .link04) a::after { font-family: 'Font Awesome 6 Free'; content: '\f105'; font-weight: bold; display: inline-block; margin-left: clamp(16px, calc(1.135vw + 11.74px), 24px) }

/* ボーダーありテーブル */
.cmshtml .tbl01 :is(th, td) { padding: 10px !important; border: 1px solid #ddd !important }
.cmshtml .tbl01 th { background-color: #f1f1f1 !important }
.cmshtml .tbl01 td { background-color: #fff; background-clip: padding-box }

/* force.cssの「PC/SPでは非表示」のviewportサイズを上書き */
@media (max-width: 1079px) {
.cmshtml [data-rdhide="sp"] { display: none !important }
}
@media (min-width: 576px) and (max-width: 1079px) {
.cmshtml [data-rdhide="pc"] { display: block !important }
}
@media (min-width: 1080px) {
.cmshtml [data-rdhide="pc"] { display: none !important }
}