@charset "utf-8";

@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('/data/common/c2101a089101/css/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'), url('/data/common/c2101a089101/css/fontawesome/webfonts/fa-solid-900.ttf') format('truetype') }

:root { --basecolor: 31, 192, 240 }
:root { --textcolor: 0, 0, 0 }
:root { --linkcolor: 29, 57, 148 }
:root { --bordercolor: 221, 221, 221 }
:root { --blogcolor: 31, 192, 240 }
:root { --subcolor: 255, 102, 102 }

.cmshtml { scroll-behavior: smooth }
.cmshtml * { box-sizing: border-box; -webkit-tap-highlight-color: transparent }
.cmshtml body { margin: 0; background-color: #fff; color: rgb(var(--textcolor)); line-height: 1.732; font-size: clamp(16px, calc(0.129vw + 15.51px), 18px); font-family: 'Noto Sans JP', sans-serif; font-feature-settings: 'palt' }
.cmshtml section, div, dl { display: flow-root }
.cmshtml p { margin: 0 }
.cmshtml a { color: rgb(var(--linkcolor)); text-decoration: none }
.cmshtml a:hover { color: rgba(var(--linkcolor), .72) }
.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'; font-weight: 900 }
.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 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 }

@-moz-document url-prefix() {
:root { --mypadding: 0px }
}
@supports (-webkit-appearance: none) and (not (-moz-appearance: none)) {
:root { --mypadding: 15px }
}

.cmshtml #mymodalhambergerouter { position: fixed; z-index: 9999 }
.cmshtml #mymodaltoggle { display: none }
.cmshtml #mymodalhamberger { display: block; cursor: pointer }
.cmshtml #mymodalhamberger span { display: block; background-color: #000; transition: .4s; transform-origin: 0; width: 28px; height: 2px; margin-top: 8px }
.cmshtml #mymodaltoggle:checked + #mymodalhamberger span:nth-child(1) { transform: translate(4px, 0) rotate(45deg) }
.cmshtml #mymodaltoggle:checked + #mymodalhamberger span:nth-child(2) { opacity: 0 }
.cmshtml #mymodaltoggle:checked + #mymodalhamberger span:nth-child(3) { transform: translate(4px, 0) rotate(-45deg) }
.cmshtml #mymodal { position: fixed; top: 0; right: 0; bottom: 0; left: 0; overflow-y: auto; transition: opacity .5s; z-index: -999; background-color: #fff; display: flex; justify-content: center; align-items: center }
.cmshtml .mymodal-hide { opacity: 0 }
.cmshtml .mymodal-show { opacity: 1 !important }

@media (max-width: 767px) {
.cmshtml #mymodalhamberger { transform: scale(.9) }
}

@media (max-width: 1079px) {
.cmshtml .noscroll { overflow: hidden }
}

@media (min-width: 1080px) {
.cmshtml #mymodalhamberger { transform: scale(1.2) }
.cmshtml .noscroll { overflow: hidden; padding-right: var(--mypadding) }
.cmshtml .noscroll #mymodalhambergerouter { right: calc(clamp(24px, calc(2.857vw + -6.86px), 48px) + var(--mypadding)) }
}

@media (max-width: 1079px) {
.cmsbody { -webkit-text-size-adjust: 100% }
.cmshtml :is(h1, .largeonly) { display: none }
.cmshtml #wrapper { position: relative }
.cmshtml .myback01 { }
.cmshtml header { border-top: 6px solid rgb(var(--basecolor)); padding: 8px 16px }
.cmshtml #headerlogo { width: clamp(240px, calc(11.348vw + 197.45px), 320px) }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #globalnav { display: none }
.cmshtml #containermainvisual { position: relative; background: url(../img/common/back01.png) center top / cover no-repeat }
.cmshtml #mainvisual .rdslideItem { width: 50% !important }
.cmshtml #mainvisual img { width: 100% !important }
.cmshtml #mainvisulatext { line-height: 1.4; padding: 0 clamp(16px, calc(1.135vw + 11.74px), 24px); margin-top: -24px; position: relative; z-index: 1 }
.cmshtml #mainvisulatext01 { font-size: clamp(22px, calc(0.851vw + 18.81px), 28px); font-weight: 600 }
.cmshtml #mainvisulatext02 { font-size: clamp(26px, calc(3.121vw + 14.3px), 48px); font-weight: 700 }
.cmshtml #mainvisulatext02 strong { color: #448aca }
.cmshtml #containerpagetitle { }
.cmshtml #pagetitleimg { }
.cmshtml #pagetitleimg img { width: 100%; height: 200px !important; object-fit: cover }
.cmshtml #pagetitleouter { }
.cmshtml #pagetitleinner { background-color: rgb(var(--basecolor)); padding: 0 16px 8px }
.cmshtml #pagetitle { color: #fff; text-align: center }
.cmshtml #pagetitleen { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(36px, calc(1.702vw + 29.62px), 48px); line-height: 1.5; font-weight: 600; border-bottom: 1px solid rgba(255, 255, 255, .64) }
.cmshtml #pagetitleja { font-size: clamp(22px, calc(1.418vw + 16.68px), 32px); font-weight: 600 }
.cmshtml #maincontents { margin: 24px 0 40px }
.cmshtml .mysection01 { margin-top: clamp(48px, calc(6.809vw + 22.47px), 96px); padding: 0 clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .mysection01 > div:nth-of-type(1) { }
.cmshtml .mysection01 > div:nth-of-type(2) { margin-top: 40px; text-align: center }
.cmshtml .mysection01inner { }
.cmshtml .mysection01title h2 { font-size: clamp(22px, calc(1.986vw + 14.55px), 36px); letter-spacing: 1px; line-height: clamp(32px, calc(3.404vw + 19.23px), 56px); font-weight: 700; text-align: center }
.cmshtml .mysection01text { margin-top: clamp(16px, calc(1.135vw + 11.74px), 24px); font-size: clamp(16px, calc(0.284vw + 14.94px), 18px); font-weight: 500 }
.cmshtml .mysection01btn { margin-top: 32px; text-align: center }
.cmshtml .mybtn01 a { display: inline-block; color: #fff; font-size: clamp(16px, calc(0.284vw + 14.94px), 18px); font-weight: 500; padding: clamp(12px, calc(0.567vw + 9.87px), 16px) clamp(80px, calc(5.532vw + 59.26px), 119px) clamp(12px, calc(0.567vw + 9.87px), 16px) clamp(64px, calc(5.106vw + 44.85px), 100px); border-radius: 80px; letter-spacing: 1px; background: url(../img/common/back02.png) calc(100% - 32px) center / 20px 12px no-repeat #000 }
.cmshtml .mysection01 img { max-width: 100% }
.cmshtml .containermysection02 { position: relative; margin-top: clamp(56px, calc(5.674vw + 34.72px), 96px); padding: 0 clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .mysection02header { position: sticky; top: 0 }
.cmshtml .mytitle01 { text-align: center }
.cmshtml .mytitle01 strong { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(56px, calc(3.404vw + 43.23px), 80px); color: rgb(var(--basecolor)); line-height: 1 }
.cmshtml .mytitle01 h2 { font-size: clamp(24px, calc(1.135vw + 19.74px), 32px); line-height: 1; letter-spacing: 2px; font-weight: 700; margin-top: 4px }
.cmshtml .mytitle02 { text-align: center }
.cmshtml .mytitle02 strong { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(36px, calc(1.135vw + 31.74px), 44px); color: rgb(var(--basecolor)); line-height: 1 }
.cmshtml .mytitle02 :is(em, i) { display: inline-block; font-size: clamp(20px, calc(0.567vw + 17.87px), 24px); line-height: 1; letter-spacing: 2px; font-weight: 700; margin-top: 6px; font-style: normal }
.cmshtml .mysection02text { margin-top: clamp(16px, calc(2.27vw + 7.49px), 32px); font-size: clamp(16px, calc(0.284vw + 14.94px), 18px); font-weight: 600 }
.cmshtml .mysection02outer { margin-top: clamp(32px, calc(4.539vw + 14.98px), 64px) }
.cmshtml .mysection02outer > div:nth-of-type(1) { top: 0; background-color: #ecf7fd }
.cmshtml .mysection02outer > div:nth-of-type(2) { top: 0; background-color: #fff; margin-top: 32px }
.cmshtml .mysection02outer > div:nth-of-type(3) { margin-top: 32px; background-color: #ecf7fd }
.cmshtml .mysection02 { position: sticky; border-radius: 20px; padding: 0 clamp(24px, calc(3.404vw + 11.23px), 48px) clamp(40px, calc(5.674vw + 18.72px), 80px) }
.cmshtml .mysection02 > div:nth-of-type(1) { }
.cmshtml .mysection02 > div:nth-of-type(2) { margin-top: 32px }
.cmshtml .mysection02title { display: flex; column-gap: 16px }
.cmshtml .mysection02title > div:nth-of-type(1) { width: clamp(64px, calc(3.404vw + 51.23px), 88px); height: clamp(117px, calc(6.099vw + 94.13px), 160px); display: flex; justify-content: center; align-items: flex-end; font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(44px, calc(2.837vw + 33.36px), 64px); color: #fff; background: url(../img/common/back03.png) center top / contain no-repeat; line-height: 1; font-weight: 700; padding-bottom: 28px }
.cmshtml .mysection02title > div:nth-of-type(2) { display: flex; align-items: flex-end; padding-bottom: 16px }
.cmshtml .mysection02titleinner dt { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(32px, calc(1.135vw + 27.74px), 40px); font-weight: 700; line-height: 1 }
.cmshtml .mysection02titleinner dd { font-size: clamp(20px, calc(0.284vw + 18.94px), 22px); font-weight: 700; letter-spacing: 1px }
.cmshtml .mysection02innertext { margin-top: 12px; font-weight: 500 }
.cmshtml .mysection02innerbtn { margin-top: 24px; text-align: center }
.cmshtml .mysection02 img { max-width: 100%; border-radius: 16px }
.cmshtml .mysection03 { margin-top: clamp(56px, calc(5.674vw + 34.72px), 96px); padding: 0 clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .mysection03 > div:nth-of-type(1) { }
.cmshtml .mysection03 > div:nth-of-type(2) { margin-top: 24px }
.cmshtml .mysection03btn { margin-top: 16px; text-align: right }
.cmshtml .mysection03btn a { display: inline-block; color: #000; padding-right: 40px; background: url(../img/common/back05.png) calc(100% - 13px) center no-repeat; letter-spacing: 1px }
.cmshtml .containermysection04 { margin-top: clamp(64px, calc(5.674vw + 42.72px), 104px); background: url(../img/common/back06.png) center bottom / 100% no-repeat; padding-bottom: 80px }
.cmshtml .mysection04slide .rdslideItem { width: 20% }
.cmshtml .mysection04slide img { max-width: 100%; border-radius: 16px }
.cmshtml .mysection04 { margin-top: clamp(56px, calc(4.539vw + 38.98px), 88px); padding: 0 clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .mysection04 > div:nth-of-type(1) { }
.cmshtml .mysection04 > div:nth-of-type(2) { margin-top: 32px; text-align: center }
.cmshtml .mysection04text { margin-top: 24px; font-size: clamp(16px, calc(0.284vw + 14.94px), 18px); font-weight: 600 }
.cmshtml .mysection04btn { margin-top: 32px; text-align: center }
.cmshtml .mysection04 img { max-width: 100% }
.cmshtml #containerfootercontact { padding: 40px clamp(16px, calc(1.135vw + 11.74px), 24px); background: url(../img/common/back07.jpg) center center repeat-y }
.cmshtml #footercontact { color: #fff; text-align: center }
.cmshtml #footercontacttitle dt { font-size: clamp(28px, calc(1.135vw + 23.74px), 36px); font-weight: 700 !important; letter-spacing: 2px }
.cmshtml #footercontacttitle dd { font-size: clamp(16px, calc(0.284vw + 14.94px), 18px); font-weight: 400 !important; margin-top: 16px }
.cmshtml #footercontactinner { margin-top: 32px }
.cmshtml #footercontactinner > div { padding: 24px 24px 20px; border: 2px solid #fff; border-radius: 16px; margin-bottom: 24px }
.cmshtml .footercontacttext { letter-spacing: 2px; margin-top: 3px }
.cmshtml .footercontactphone { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(20px, calc(0.567vw + 17.87px), 24px); line-height: 1; margin-top: 17px }
.cmshtml .footercontactphone strong { font-size: clamp(36px, calc(0.851vw + 32.81px), 42px) }
.cmshtml .footercontactnotice { }
.cmshtml .footercontactmail { margin-top: 16px }
.cmshtml .footercontactmail a { display: inline-block; color: #fff; background-color: #000; border-radius: 16px; padding: 12px 32px; font-weight: 600; font-size: 17px; letter-spacing: 1px }
.cmshtml footer { margin-top: 40px }
.cmshtml #footer { padding: 0 clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml #footerinfo { text-align: center }
.cmshtml #footeraddress a { display: inline-block; font-size: 14px; color: #6ac875; border: 1px solid #6ac875; background: url(../img/common/icon03.png) 8px center no-repeat #e8fcf1; padding: 2px 12px 2px 26px; margin: 8px 0 0 8px; border-radius: 4px }
.cmshtml #footerphone strong { font-size: clamp(24px, calc(0.851vw + 20.81px), 30px); font-weight: 700 }
.cmshtml #footerlabel { margin-top: 16px }
.cmshtml #footernav { display: none }
.cmshtml #footercopy { font-size: 13px; text-align: center; margin-top: 16px }
.cmshtml #footerimg { margin-top: 24px }
.cmshtml #footerimg img { max-width: 100% }
.cmshtml #mymodalhambergerouter { top: 20px; right: 16px }
.cmshtml #mymodalnav { margin-top: 8px; display: flex; justify-content: center }
.cmshtml #mymodalnav a { color: #000 }
.cmshtml #mymodalnavinner > div + div { margin-top: 6px }
.cmshtml .mymodalnavchild a { padding-left: 24px; background: url(../img/common/back08.png) 8px center / 10px 1px no-repeat }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 8px 16px }
.cmshtml .smalltac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 0; right: 16px; display: none; width: 40px; height: 40px; background-color: rgb(var(--basecolor)); text-align: center; padding-top: 8px; opacity: 0; transition: opacity 0.5s ease; z-index: 2 }
.cmshtml #pt a { color: #fff; text-decoration: none }
.cmshtml #pt span { font-size: 26px; display: block }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: block !important; padding: 12px 16px !important; background-color: #f7f5f6 !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: .88em !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none; color: rgb(var(--textcolor)) }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 10px !important; border: none !important }
.cmshtml .mynewarticles .rdnewArticle-ContEx { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-catlink { background-color: rgb(var(--basecolor)) !important; color: #fff !important }
.cmshtml .mynewarticles a.rdnewArticle-taglink { color: rgb(var(--linkcolor)); font-size: 0.75rem }
.cmshtml .mynewarticles a { display: block }

/* ブログ */
.cmshtml #myblogframe { margin: 0 16px }
.cmshtml #myblogmain { }
.cmshtml #myblogcommon { margin-top: 40px }
.cmshtml #myblogcommon a { text-decoration: none; color: rgb(var(--textcolor)) }
.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 .rdarticleTitle h3 { border-bottom: 3px solid rgb(var(--blogcolor)) !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 #myblogframe .rdnewArticle-item { padding: 6px 2px !important }
.cmshtml .rdarticlecalendar { font-size: 92%; width: 100%; max-width: 338px; margin: 0 auto }
.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 :is(.rdRelatedArticles-catlink, .rdRelatedArticles-taglink) { padding: 3px 4px !important }
}

@media (min-width: 1080px) {
.cmsbody { font-weight: 500 }
.cmshtml :is(h1, .smallonly) { display: none }
.cmshtml #wrapper { position: relative; max-width: 1920px; margin: 0 auto }
.cmshtml .myback01 { background: url(../img/common/back01.png) center 78px / 100% no-repeat }
.cmshtml .myback02 { background: url(../img/common/back09.png) center 78px / 100% no-repeat }
.cmshtml header { display: flex; justify-content: space-between; align-items: center; padding: clamp(24px, calc(0.714vw + 16.29px), 30px) clamp(88px, calc(10vw + -20px), 172px) 0 clamp(24px, calc(0.714vw + 16.29px), 30px) }
.cmshtml #headerlogo { width: clamp(336px, calc(3.929vw + 293.57px), 369px) }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #globalnav { display: flex; justify-content: flex-end; column-gap: clamp(24px, calc(2.857vw + -6.86px), 48px); transform: translateY(-1px) }
.cmshtml #globalnav a { display: inline-block; position: relative; color: #000; font-size: 16px; font-weight: 800; letter-spacing: 0; padding-top: 6px; transition: .3s }
.cmshtml #globalnav a:hover { color: #666 }
.cmshtml #globalnav a::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background-color: #00b7f0; transform: scale(0, 1); transition: .2s }
.cmshtml #globalnav a:hover::after { transform: scale(1, 1) }
.cmshtml #containermainvisual { position: relative; margin-top: 29px; min-height: clamp(528px, calc(49.167vw + -3px), 941px) }
.cmshtml #mainvisual .rdslideItem { width: 50% !important }
.cmshtml #mainvisual img { width: 100% !important }
.cmshtml #mainvisulatext { position: absolute; bottom: clamp(0px, calc(6.905vw + -74.57px), 58px); left: clamp(40px, calc(3.571vw + 1.43px), 70px); line-height: 1.4 }
.cmshtml #mainvisulatext01 { font-size: clamp(28px, calc(0.952vw + 17.71px), 36px); font-weight: 600 }
.cmshtml #mainvisulatext02 { font-size: clamp(48px, calc(2.857vw + 17.14px), 72px); font-weight: 700; margin-top: 2px }
.cmshtml #mainvisulatext02 strong { color: #448aca }
.cmshtml #containerpagetitle { position: relative; margin-top: 16px; padding: 0 24px }
.cmshtml #pagetitleimg { max-width: 1400px; margin: 0 auto; position: relative; text-align: right; z-index: 1 }
.cmshtml #pagetitleimg img { width: clamp(440px, calc(50vw + -100px), 600px); border-radius: clamp(24px, calc(5vw + -30px), 40px) }
.cmshtml #pagetitleouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; align-items: center }
.cmshtml #pagetitleinner { width: 100%; background-color: rgba(var(--basecolor), .88); padding: 24px }
.cmshtml #pagetitle { max-width: 1400px; margin: 0 auto; color: #fff }
.cmshtml #pagetitleen { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(68px, calc(6.25vw + 0.5px), 88px); line-height: 1; font-weight: 700; border-bottom: 2px solid rgba(255, 255, 255, .48) }
.cmshtml #pagetitleja { font-size: clamp(32px, calc(3.125vw + -1.75px), 42px); font-weight: 600 }
.cmshtml #maincontents { margin: clamp(56px, calc(7.5vw + -25px), 80px) 0 }
.cmshtml .mysection01 { max-width: 1596px; margin: clamp(96px, calc(3.81vw + 54.86px), 128px) auto 0; padding: 0 24px; display: flex; justify-content: space-between }
.cmshtml .mysection01 > div:nth-of-type(1) { width: 62.597%; display: flex; justify-content: flex-end; padding-right: 32px }
.cmshtml .mysection01 > div:nth-of-type(2) { width: 37.403%; margin-top: 30px }
.cmshtml .mysection01inner { max-width: 862px }
.cmshtml .mysection01title h2 { font-size: clamp(36px, calc(1.429vw + 20.57px), 48px); letter-spacing: clamp(2px, calc(0.31vw + -1.34px), 4.6px); line-height: clamp(56px, calc(3.391vw + 19.38px), 84.4833px); font-weight: 800 }
.cmshtml .mysection01text { margin: clamp(24px, calc(2.619vw + -4.29px), 46px) clamp(40px, calc(1.905vw + 19.43px), 56px) 0 0; font-size: clamp(18px, calc(0.238vw + 15.43px), 20px); font-weight: 700; line-height: clamp(34px, calc(0.952vw + 23.71px), 42px); letter-spacing: clamp(1px, calc(0.095vw + -0.03px), 1.8px) }
.cmshtml .mysection01btn { margin-top: clamp(32px, calc(0.952vw + 21.71px), 40px) }
.cmshtml .mybtn01 a { display: inline-block; color: #fff; font-size: clamp(18px, calc(0.238vw + 15.43px), 20px); font-weight: 600; padding: clamp(16px, calc(0.714vw + 8.29px), 22px) 119px clamp(16px, calc(0.714vw + 8.29px), 22px) 100px; border-radius: 80px; letter-spacing: 2px; background: url(../img/common/back02.png) calc(100% - 80px) center no-repeat #000; transition: .3s }
.cmshtml .mybtn01 a:hover { opacity: .8; background-position: calc(100% - 72px) center }
.cmshtml .mysection01 img { max-width: 100% }
.cmshtml .containermysection02 { position: relative; max-width: 1448px; margin: clamp(96px, calc(7.857vw + 11.14px), 162px) auto 0; padding: 0 24px }
.cmshtml .mysection02header { position: sticky; top: 0 }
.cmshtml .mytitle01 strong { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(80px, calc(4.762vw + 28.57px), 120px); color: rgb(var(--basecolor)); line-height: 1 }
.cmshtml .mytitle01 h2 { font-size: clamp(32px, calc(0.952vw + 21.71px), 40px); line-height: 1; letter-spacing: 4px; margin-top: clamp(-4px, calc(-0.476vw + 5.14px), 0px); font-weight: 800 }
.cmshtml .mytitle02 strong { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: 80px; color: rgb(var(--basecolor)); line-height: 1 }
.cmshtml .mytitle02 :is(em, i) { font-size: 32px; font-style: normal; line-height: 1.4; letter-spacing: 4px; font-weight: 800 }
.cmshtml .mysection02text { margin-top: clamp(32px, calc(3.214vw + -2.71px), 59px); font-size: clamp(18px, calc(0.238vw + 15.43px), 20px); font-weight: 900; letter-spacing: clamp(1px, calc(0.119vw + -0.29px), 2px); line-height: clamp(32px, calc(1.19vw + 19.14px), 42px) }
.cmshtml .mysection02outer { margin-top: clamp(64px, calc(1.905vw + 43.43px), 80px) }
.cmshtml .mysection02outer > div:nth-of-type(1) { top: 0; background-color: #ecf7fd }
.cmshtml .mysection02outer > div:nth-of-type(2) { top: 0; background-color: #fff }
.cmshtml .mysection02outer > div:nth-of-type(3) { background-color: #ecf7fd }
.cmshtml .mysection02 { position: sticky; display: flex; justify-content: space-between; border-radius: 50px 50px 0 0; padding: 0 clamp(48px, calc(5.595vw + -12.43px), 95px) clamp(80px, calc(2.143vw + 56.86px), 98px) }
.cmshtml .mysection02 > div:nth-of-type(1) { width: 47.355% }
.cmshtml .mysection02 > div:nth-of-type(2) { width: 49.586%; margin-top: 100px }
.cmshtml .mysection02title { display: flex; column-gap: 24px }
.cmshtml .mysection02title > div:nth-of-type(1) { width: clamp(88px, calc(2.619vw + 59.71px), 110px); height: clamp(160px, calc(4.881vw + 107.29px), 201px); display: flex; justify-content: center; align-items: flex-end; font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(64px, calc(1.905vw + 43.43px), 80px); color: #fff; background: url(../img/common/back03.png) center top / contain no-repeat; line-height: 1; font-weight: 700; padding-bottom: 22px }
.cmshtml .mysection02title > div:nth-of-type(2) { display: flex; align-items: flex-end; padding-bottom: clamp(16px, calc(0.952vw + 5.71px), 24px) }
.cmshtml .mysection02titleinner dt { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: clamp(40px, calc(0.952vw + 29.71px), 48px); font-weight: 700; line-height: 1 }
.cmshtml .mysection02titleinner dd { font-size: clamp(22px, calc(0.476vw + 16.86px), 26px); font-weight: 700; letter-spacing: 2px; line-height: 35px }
.cmshtml .mysection02innertext { margin-top: 10px; font-size: clamp(17px, calc(0.119vw + 15.71px), 18px); font-weight: 700; letter-spacing: clamp(1px, calc(0.095vw + -0.03px), 1.8px); line-height: clamp(32px, calc(1.19vw + 19.14px), 42px); padding-left: 5px }
.cmshtml .mysection02innerbtn { margin-top: clamp(32px, calc(0.714vw + 24.29px), 38px); padding-left: 5px }
.cmshtml .mysection02 img { max-width: 100%; border-radius: 30px }
.cmshtml .mysection03 { max-width: 1448px; display: flex; justify-content: space-between; margin: clamp(96px, calc(5vw + 42px), 138px) auto 0; padding: 0 24px }
.cmshtml .mysection03 > div:nth-of-type(1) { width: 36.428% }
.cmshtml .mysection03 > div:nth-of-type(2) { width: 63.572%; margin-top: 24px }
.cmshtml .mysection03btn { margin-top: 24px; text-align: right }
.cmshtml .mysection03btn a { display: inline-block; color: #000; padding-right: 40px; background: url(../img/common/back05.png) calc(100% - 13px) center no-repeat; transition: .3s; letter-spacing: 1.6px }
.cmshtml .mysection03btn a:hover { background-position: right center; opacity: .72 }
.cmshtml .containermysection04 { margin-top: clamp(104px, calc(6.667vw + 32px), 160px); background: url(../img/common/back06.png) center bottom / 100% no-repeat }
.cmshtml .mysection04slide .rdslideItem { width: 19.791% }
.cmshtml .mysection04slide img { max-width: 100%; border-radius: 30px }
.cmshtml .mysection04 { display: flex; justify-content: space-between; max-width: 1400px; margin: clamp(88px, calc(5.714vw + 26.29px), 136px) auto 0; padding: 0 24px clamp(104px, calc(5.714vw + 42.29px), 152px) }
.cmshtml .mysection04 > div:nth-of-type(1) { width: 57.142% }
.cmshtml .mysection04 > div:nth-of-type(2) { width: 35.428% }
.cmshtml .mysection04text { margin-top: clamp(32px, calc(3.214vw + -2.71px), 59px); font-size: clamp(18px, calc(0.238vw + 15.43px), 20px); font-weight: 900; letter-spacing: clamp(1px, calc(0.119vw + -0.29px), 2px); line-height: clamp(32px, calc(1.19vw + 19.14px), 42px) }
.cmshtml .mysection04btn { margin-top: clamp(40px, calc(2.381vw + 14.29px), 60px) }
.cmshtml .mysection04 img { max-width: 100% }
.cmshtml #containerfootercontact { padding: clamp(56px, calc(3.214vw + 21.29px), 83px) 24px clamp(72px, calc(3.333vw + 36px), 100px); background: url(../img/common/back07.jpg) center center repeat-y }
.cmshtml #footercontact { max-width: 952px; margin: 0 auto; color: #fff; text-align: center }
.cmshtml #footercontacttitle dt { font-size: clamp(36px, calc(0.476vw + 30.86px), 40px); font-weight: 700 !important; letter-spacing: 4px }
.cmshtml #footercontacttitle dd { font-size: 18px; font-weight: 400 !important; letter-spacing: 2px; margin-top: clamp(16px, calc(1.548vw + -0.71px), 29px) }
.cmshtml #footercontactinner { display: flex; justify-content: space-between; margin-top: 40px }
.cmshtml #footercontactinner > div { width: 44.747%; padding: 24px 24px 20px; border: 2px solid #fff; border-radius: 20px; font-weight: 400 }
.cmshtml .footercontacttext { letter-spacing: 2px; margin-top: 3px }
.cmshtml .footercontactphone { font-family: 'Google Sans', 'Noto Sans JP', sans-serif; font-size: 24px; line-height: 1; margin-top: 17px }
.cmshtml .footercontactphone strong { font-size: 42px }
.cmshtml .footercontactnotice { font-size: 16px; letter-spacing: 2px }
.cmshtml .footercontactmail { margin-top: 17px }
.cmshtml .footercontactmail a { display: inline-block; color: #fff; background-color: #000; border-radius: 20px; padding: 16px 76px; font-weight: 600; font-size: 20px; letter-spacing: 2px; transition: .3s }
.cmshtml .footercontactmail a:hover { opacity: .64 }
.cmshtml footer { margin-top: clamp(64px, calc(4.286vw + 17.71px), 100px) }
.cmshtml #footer { max-width: 1448px; display: flex; justify-content: space-between; margin: 0 auto; padding: 0 24px }
.cmshtml #footeraddress { font-size: 16px; margin-top: 10px }
.cmshtml #footeraddress a { display: inline-block; font-size: 14px; color: #6ac875; border: 1px solid #6ac875; background: url(../img/common/icon03.png) 8px center no-repeat #e8fcf1; padding: 2px 12px 2px 26px; margin-left: 8px; border-radius: 4px; transition: .3s }
.cmshtml #footeraddress a:hover { opacity: .72 }
.cmshtml #footerphone { font-size: 16px }
.cmshtml #footerphone strong { font-size: 30px; font-weight: 800 }
.cmshtml #footerlabel { margin-top: 24px }
.cmshtml #footernav { display: flex; justify-content: flex-end }
.cmshtml #footernav a { color: #000; font-size: 16px; letter-spacing: 2px }
.cmshtml #footernav > div { padding-right: clamp(64px, calc(5.476vw + 4.86px), 110px) }
.cmshtml .footernav div + div { margin-top: 9px }
.cmshtml .footernavparent a { font-weight: 800; background: url(../img/common/back08.png) left center / 15px 3px no-repeat; padding-left: 32px }
.cmshtml .footernavchild a { background: url(../img/common/back08.png) 30px center / 10px 1px no-repeat; padding-left: 54px }
.cmshtml #footercopy { max-width: 1448px; margin: 0 auto; padding: 0 24px; font-size: 13px; text-align: right; font-weight: 400; letter-spacing: 1px }
.cmshtml #footerimg { margin-top: 59px }
.cmshtml #footerimg img { max-width: 100% }
.cmshtml #mymodalhambergerouter { top: clamp(44px, calc(0.952vw + 33.71px), 52px); right: clamp(24px, calc(2.857vw + -6.86px), 48px) }
.cmshtml #mymodalnav { margin-top: 16px; display: flex; justify-content: center }
.cmshtml #mymodalnav a { color: #000 }
.cmshtml #mymodalnavinner > div + div { margin-top: 6px }
.cmshtml .mymodalnavchild a { padding-left: 24px; background: url(../img/common/back08.png) 8px center / 10px 1px no-repeat }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 12px 24px }
.cmshtml .largetac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 16px; right: 40px; display: none; width: 48px; height: 48px; background-color: rgb(var(--basecolor)); border-radius: 2px; border: none; padding: 8px; opacity: 0; transition: opacity 0.5s ease; z-index: 2 }
.cmshtml #pt a { color: #fff; text-decoration: none }
.cmshtml #pt span { font-size: 32px; display: block }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: block !important; padding: 20px 28px 16px !important; background: url(../img/common/back04.png) calc(100% - 40px) center no-repeat #f7f5f6 !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: 1em !important; width: 120px }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none; color: rgb(var(--textcolor)) }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 10px !important; border: none !important }
.cmshtml .mynewarticles .rdnewArticle-ContEx { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-catlink { background-color: rgb(var(--basecolor)) !important; color: #fff !important }
.cmshtml .mynewarticles a.rdnewArticle-taglink { color: rgb(var(--linkcolor)); font-size: 0.75rem }
.cmshtml .mynewarticles a { display: block }

/* ブログ */
.cmshtml #myblogframe { max-width: 1448px; margin: 0 auto; display: flex; padding: 0 24px }
.cmshtml #myblogmain { width: calc(100% - 320px) }
.cmshtml #myblogcommon { width: 272px; margin-left: 48px; font-size: 92% }
.cmshtml #myblogcommon a { text-decoration: none; color: rgb(var(--textcolor)) }
.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 .rdarticleTitle h3 { border-bottom: 3px solid rgb(var(--blogcolor)) !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 #myblogframe .rdnewArticle-item { padding: 8px 4px !important }
.cmshtml .rdarticlecalendar { font-size: 92%; width: 100% }
.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:hover { opacity: .8 }
}

@media (min-width: 1921px) {
.cmshtml #mymodalhambergerouter { right: calc(50% - 912px) }
.cmshtml .noscroll #mymodalhambergerouter { right: calc(calc(50% - 912px) + var(--mypadding)) }
.cmshtml #pt { right: calc(50% - 920px) }
}

/* ブログ配色 */
.cmshtml #myblogcommon a { text-decoration: none; color: rgb(var(--textcolor)); transition: .3s }
.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 .rdYearlyArchive { list-style: none }
.cmshtml #myblogcommon .rdYearlyArchive a { color: #fff }
.cmshtml #myblogcommon .rdYearlyArchive-link { padding: 6px 16px; background-color: rgb(var(--blogcolor)) }
.cmshtml #myblogcommon .rdCalendarTable-link { background-color: rgb(var(--blogcolor)) }
.cmshtml .rdBlogSearch-formInner input { border-radius: 2px }
.cmshtml .rdReadMore { font-size: 88% }
.cmshtml .rdpublishDate { font-size: 88% !important }
.cmshtml :is(.rdarticleTitleText, .rdRelatedArticles-title) { overflow: hidden; white-space: nowrap; text-overflow: ellipsis }
.cmshtml .rdCalendarBody { line-height: 1.3 }
.cmshtml .rdCalendarTable-link { color: #fff !important }
.cmshtml .rdListImageItem { width: 100%; height: 220px !important; object-fit: cover }
.cmshtml .rdListImageEmpty { background-color: #f8f8f8 }
.cmshtml .rdListImageItemDummy { border: none !important }
.cmshtml .rdarticleTitleText a { font-size: 88% !important; color: rgb(var(--textcolor)) }
.cmshtml .rdnewArticle { border: none !important; padding: 0 !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 .rdMonthlyArchive-item { padding: 4px 4px 4px 14px !important; margin: 0 4px }
.cmshtml .rdTaglist-link { padding: 2px 4px !important; font-size: 88%; color: rgb(var(--blogcolor)) !important }
.cmshtml .rdTaglist-link:hover { color: #fff !important }
.cmshtml .rdBlogSearch-btn { padding: 0 8px !important; margin-left: 8px; color: #fff !important }
.cmshtml .rdRelatedArticles-title a { color: rgb(var(--textcolor)); text-decoration: none }
.cmshtml .rdRelatedArticles { width: calc(100% + 16px); transform: translateX(-8px) }

/* パンくずリスト */
.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: 900 }
.cmshtml .rdBreadcrumbArrow { color: #999 }
.cmshtml .rdBreadcrumbLink { text-decoration: none; color: #333 }
.cmshtml .rdBreadcrumbLink:hover { color: #777 }

/* U01スライドショー */
.cmshtml .rdsp-buttons { display: none }

/* 共通装飾 */
/* 見出し */
.cmshtml .rdplanetitle h2 { font-size: clamp(22px, calc(1.418vw + 16.68px), 32px) !important; font-weight: 700 !important; border-bottom: 1px solid rgb(var(--basecolor)) }
.cmshtml .rdplanetitle h2::after { display: block; content: ''; height: 3px; background-color: rgb(var(--basecolor)); margin: 6px 0 2px }
.cmshtml .rdplanetitle h3 { font-size: clamp(20px, calc(1.135vw + 15.74px), 28px) !important; font-weight: 600 !important; border-bottom-width: 4px; border-bottom-style: solid; border-image: linear-gradient(90deg, rgb(var(--basecolor)) 0%, rgb(255, 255, 255) 88%) 1; padding-bottom: clamp(10px, calc(0.851vw + 6.81px), 16px); line-height: 1.1 }
.cmshtml .rdplanetitle h3::after { border-bottom: 4px solid rgb(var(--basecolor)); content: ''; position: absolute; bottom: -4px; left: 0; width: 38.2%; 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: '\f101\00a0'; font-weight: 900; 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 (min-width: 768px) and (max-width: 1079px) {
.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 :is(.link01, .link02, .link03, .link04) a { text-decoration: none; transition: .3s; border-radius: 80px }
.cmshtml :is(.link01, .link03) a { display: inline-block; padding: clamp(5px, calc(1.135vw + 0.74px), 13px) clamp(21px, calc(2.27vw + 12.49px), 37px) }
.cmshtml :is(.link02, .link04) a { display: block; text-align: center; padding: clamp(5px, calc(1.135vw + 0.74px), 13px) 16px }
.cmshtml :is(.link01, .link02) a { background-color: #000; border: clamp(2px, calc(0.142vw + 1.47px), 3px) solid #000; font-weight: 500; color: #fff }
.cmshtml :is(.link03, .link04) a { background-color: #fff; border: clamp(2px, calc(0.142vw + 1.47px), 3px) solid #000; font-weight: 500; color: #000 }
.cmshtml :is(.link01, .link02) a:hover { opacity: .8; background-color: #fff; color: #000 }
.cmshtml :is(.link03, .link04) a:hover { opacity: .8; background-color: #000; color: #fff }
.cmshtml :is(.link01, .link02, .link03, .link04) a::after { font-family: 'Font Awesome 6 Free'; content: '\f105'; font-weight: 900; display: inline-block; margin-left: clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .pdflink01 a { display: inline-block }
.cmshtml .pdflink02 a { display: block; text-align: center }
.cmshtml :is(.pdflink01, .pdflink02) a { padding: 0 16px; color: rgb(var(--subcolor)); text-decoration: none; border: 2px solid rgb(var(--subcolor)); border-radius: 4px; font-weight: 500; background-color: #fff; transition: .3s }
.cmshtml :is(.pdflink01, .pdflink02) a:hover { opacity: .72; color: #fff; background-color: rgb(var(--subcolor)) }
.cmshtml :is(.pdflink01, .pdflink02) a::before { font-family: 'Font Awesome 6 Free'; content: '\f1c1\2002'; font-weight: 900; font-size: 128% }
.cmshtml :is(.pdflink01, .pdflink02) a::after { font-family: 'Font Awesome 6 Free'; content: '\2003\f105'; font-weight: 900 }

/* ボーダーありテーブル */
.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 }
}

/* ショッピングシステムのfooter装飾 */
.cmshtml main footer { background-color: initial; padding: 0 }

.cmshtml .myfaq { display: grid; grid-template-columns: 1fr; grid-template-rows: auto 0fr; transition: .4s; border: 6px solid #eee; padding: 16px clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .myfaq.myfaqopen { grid-template-rows: auto 1fr }
.cmshtml .myfaqq { position: relative; cursor: pointer }
.cmshtml :is(.myfaqq, .myfaqa)::before { position: absolute; font-size: clamp(20px, calc(0.567vw + 17.87px), 24px); font-family: 'Font Awesome 6 Free' }
.cmshtml .myfaqq::before { top: 0; left: 0; content: '\51.'; color: #777 }
.cmshtml .myfaqqinner { padding: 4px clamp(24px, calc(1.135vw + 19.74px), 32px) 0 32px }
.cmshtml .myfaqa { margin-top: 8px; position: relative; overflow-y: hidden; opacity: 0; transition: 2s }
.cmshtml .myfaqa::before { top: 1px; left: 2px; content: '\41.'; color: rgb(var(--basecolor)) }
.cmshtml .myfaqainner { padding: 4px 0 0 32px; color: rgb(var(--basecolor)) }
.cmshtml .myfaq.myfaqopen .myfaqa { opacity: 1 }
.cmshtml .myfaqq span { display: inline-block; position: absolute; top: 4px; right: 0; font-family: 'Font Awesome 6 Free'; font-size: 20px; color: rgb(var(--basecolor)); width: 20px; height: 20px }
.cmshtml .myfaqq span::before, .cmshtml .myfaqq span::after { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center; transition: .3s }
.cmshtml .myfaqq span::before { content: '\2b'; opacity: 1 }
.cmshtml .myfaqq span::after { content: '\f068'; opacity: 0 }
.cmshtml .myfaq.myfaqopen .myfaqq span::before { opacity: 0 }
.cmshtml .myfaq.myfaqopen .myfaqq span::after { opacity: 1 }
.cmshtml .myfaqopened { display: grid; grid-template-columns: 1fr; grid-template-rows: auto 1fr; border: 6px solid #eee; padding: 16px clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .myfaqqopened { position: relative }
.cmshtml :is(.myfaqqopened, .myfaqaopened)::before { position: absolute; font-size: clamp(20px, calc(0.567vw + 17.87px), 24px); font-family: 'Font Awesome 6 Free' }
.cmshtml .myfaqqopened::before { top: 0; left: 0; content: '\51.'; color: #777 }
.cmshtml .myfaqqinneropened { padding: 4px clamp(24px, calc(1.135vw + 19.74px), 32px) 0 32px }
.cmshtml #wrapper .myfaqaopened { margin-top: 8px; padding: 4px 0 0 32px !important; position: relative; color: rgb(var(--basecolor)) }
.cmshtml .myfaqaopened::before { top: 1px; left: 2px; content: '\41.'; color: rgb(var(--basecolor)) }

/* U01編集画面用 */
#editView .cmsbody { margin: 0; background-color: #fff; color: rgb(var(--textcolor)); line-height: 1.732; font-size: clamp(16px, calc(0.129vw + 15.51px), 18px); font-family: 'Noto Sans JP', sans-serif; font-feature-settings: 'palt' }
#editView :is(#globalnav, #footernav, #mymodalnav) edit { padding: 8px !important }
#editView #mymodalhambergerouter { position: static !important; display: none !important }
#editView #mymodal { position: static !important; overflow-y: visible !important; z-index: 0 !important }
#editView .mymodal-hide { opacity: 1 !important }
#editView h5 edit { display: inline-block !important }
#editView #mainvisulatext { position: static !important }
#editView #pagetitleouter { position: static !important }
#editView :is(.mysection02header, .mysection02, .mysection02outer > div) { position: static !important }
#editView .myfaq { grid-template-rows: auto 1fr }
#editView .myfaqa { overflow-y: visible; opacity: 1 }