@charset "utf-8";

@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('/data/common/c2101a085401/css/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'), url('/data/common/c2101a085401/css/fontawesome/webfonts/fa-solid-900.ttf') format('truetype') }

:root { --basecolor: 32, 89, 170 }
:root { --textcolor: 71, 71, 71 }
:root { --bordercolor: 221, 221, 221 }
:root { --blogcolor: 26, 115, 232 }

.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.284vw + 14.94px), 18px); font-family: 'Noto Sans JP', sans-serif }
.cmshtml section, div, dl { display: flow-root }
.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; color: #000 }
.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 .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 #mydrawerhambergerouter { position: fixed; top: 8px; right: 8px; z-index: 9999; background-color: #21c6f4; padding: 3px 6px 8px; border-radius: 4px }
.cmshtml #mydrawertoggle { display: none }
.cmshtml #mydrawerhamberger { display: block; cursor: pointer }
.cmshtml #mydrawerhamberger span { display: block; background-color: #fff; transition: 0.4s; transform-origin: 0; width: 22px; height: 2px; margin-top: 5px }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(1) { transform: translate(3px, -1px) rotate(45deg) }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(2) { opacity: 0 }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(3) { transform: translate(3px, 1px) rotate(-45deg) }
.cmshtml #mydrawer { position: fixed; top: 0; bottom: 0; left: 0; width: 100%; background-color: rgba(0, 0, 0, 0); opacity: 0; color: rgb(var(--textcolor)); display: flex; justify-content: flex-end; transition: background-color 0.4s ease, opacity 0.4s ease; z-index: 999 }
.cmshtml #mydrawer.mydrawer-show { background-color: rgba(0, 0, 0, .72); opacity: 1; pointer-events: auto }
.cmshtml #mydrawerinner { width: 320px; background-color: #fff; transform: translateX(320px); transition: transform 0.6s ease; padding: 40px 0 32px; overflow-y: scroll }
.cmshtml #mydrawer.mydrawer-show #mydrawerinner { transform: translateX(0) }
.cmshtml .noscroll { overflow: hidden }
.cmshtml #mydrawernav a { display: block; text-decoration: none; color: #005faa; padding: 7px 16px; border-bottom: 1px solid #d4d4d4 }
.cmshtml .mydrawernavparent a::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\00a0'; font-weight: bold; font-size: 88% }
.cmshtml .mydrawernavchild a { padding-left: 40px !important; font-size: 92% }
.cmshtml #mydrawerinfo { padding: 32px 16px 0; text-align: center }
.cmshtml .mydraweraddress dl { }
.cmshtml .mydraweraddress dt { font-family: 'Ubuntu', sans-serif; color: #00489e; font-weight: 700 !important; font-size: 24px; line-height: 1 }
.cmshtml .mydraweraddress dd { font-size: 14px; margin-top: 8px; font-weight: 300; line-height: 1.5 }
.cmshtml .mydrawerbtn { margin-top: 16px }
.cmshtml .mydrawerbtn a { display: inline-block; text-decoration: none; color: #fff; font-weight: 500; font-size: 16px; padding: 10px 32px; background: linear-gradient(90deg, rgba(33, 199, 244, 1) 0%, rgba(65, 167, 246, 1) 100%); border-radius: 4px }
.cmshtml .mydrawerbanner { width: 56%; margin: 24px auto 0 }
.cmshtml .mydrawerbanner img { max-width: 100% }


@media (max-width: 1079px) {
.cmsbody { font-feature-settings: 'palt'; -webkit-text-size-adjust: 100% }
.cmshtml :is(h1, .largeonly) { display: none }
.cmshtml #wrapper { position: relative }
.cmshtml #mydrawer { pointer-events: none }
.cmshtml #containerheader { padding: 12px 16px }
.cmshtml header { display: flex; justify-content: space-between; align-items: center }
.cmshtml #headerlogo { width: 168px }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #headerinfo { display: none }
.cmshtml #globalnav { display: none }
.cmshtml #smallonlyheader { background-color: #ef9702; padding: 8px 16px 10px; text-align: center; font-size: 88%; line-height: 1.5 }
.cmshtml #smallonlyheader a { color: #fff; text-decoration: none }
.cmshtml #containermainvisual { position: relative }
.cmshtml #mainvisual img { width: 100%; height: clamp(240px, calc(22.695vw + 154.89px), 400px) !important; object-fit: cover }
.cmshtml #mainvisualtext { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml #mainvisualtext dl { text-align: center; color: #fff; font-family: 'Shippori Mincho', sans-serif; line-height: 1.5; text-shadow: 0 0 24px #000, 0 0 24px #000, 0 0 24px #000 }
.cmshtml #mainvisualtext dt { font-weight: 400 !important; font-size: clamp(32px, calc(3.404vw + 19.23px), 56px) }
.cmshtml #mainvisualtext dd { font-size: clamp(20px, calc(1.135vw + 15.74px), 28px) }
.cmshtml #containerpagetitle { position: relative }
.cmshtml #pagetitleimg img { width: 100%; height: 136px !important; object-fit: cover }
.cmshtml #pagetitleouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml #pagetitle { font-weight: 600; color: #fff; text-shadow: 1px 1px 1px #003d64; font-size: 26px }
.cmshtml #maincontents { margin: 16px 0 40px }
.cmshtml .containermysection01 { }
.cmshtml .mysection01 { }
.cmshtml .mysection01 > div:nth-of-type(1) { text-align: center; color: #fff; background-color: #41a8f7; padding: 8px }
.cmshtml .mysection01 > div:nth-of-type(2) { background-color: #f5f5f5; padding: 8px 16px 16px }
.cmshtml .mysection01right > div:nth-of-type(2) { margin-top: 16px; text-align: center }
.cmshtml .mysection01btn a { display: inline-block; text-decoration: none; color: #fff; background-color: #37278a; padding: 6px 16px; border-radius: 4px; text-align: center; font-size: 88% }
.cmshtml .mysection02 { margin-top: 24px; display: flex; padding: 0 16px; flex-wrap: wrap; justify-content: center; gap: 8px }
.cmshtml .mysection02 > div { width: calc(50% - 4px) !important; max-width: 278px; position: relative }
.cmshtml .mysection02bannerimg img { max-width: 100% }
.cmshtml .mysection02bannerouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .4); text-align: center; padding: clamp(8px, calc(2.27vw + -0.51px), 24px); color: #fff }
.cmshtml .mysection02bannertitle { font-size: clamp(17px, calc(0.709vw + 14.34px), 22px); font-weight: 500; height: 3em; display: flex; justify-content: center; align-items: center; line-height: 1.4 }
.cmshtml .mysection02bannericon img { max-width: 64% }
.cmshtml .mysection02bannertext { font-size: clamp(15px, calc(0.284vw + 13.94px), 17px); font-weight: 450; text-align: left; line-height: 1.6 }
.cmshtml .mysection02bannertext br { display: none }
.cmshtml .containermysection03 { margin-top: 48px; background-color: #edf6ff }
.cmshtml .mysection03img { text-align: center }
.cmshtml .mysection03img img { max-width: 100% }
.cmshtml .mysection03outer { padding: 32px 16px }
.cmshtml .mysection03 { }
.cmshtml .mysection03inner { }
.cmshtml .mysection03logo { text-align: center }
.cmshtml .mysection03logo img { max-width: 56% }
.cmshtml .mysection03title { text-align: center; margin-top: clamp(16px, calc(1.135vw + 11.74px), 24px) }
.cmshtml .mysection03title h2 { font-family: 'Shippori Mincho', sans-serif; font-size: clamp(21px, calc(-0.426vw + 22.6px), 18px); font-weight: 500; padding-bottom: 16px; border-bottom: 3px solid #2059aa }
.cmshtml .mysection03title strong { color: #00489e; font-weight: 600 }
.cmshtml .mysection03text { margin-top: 20px; font-size: clamp(17px, calc(0.284vw + 15.94px), 19px) }
.cmshtml .mysection04 { margin-top: 40px; display: flex; flex-wrap: wrap }
.cmshtml .mysection04 > div { width: 100% }
.cmshtml .mysection04 img { max-width: 100% }
.cmshtml .mysection0401 { padding: 16px 16px 0 }
.cmshtml .mysection0402 { padding: 16px 16px 0 }
.cmshtml .mysection04title h2 { font-family: 'Shippori Mincho', sans-serif; font-size: clamp(22px, calc(0.284vw + 20.94px), 24px); font-weight: 500; line-height: 1.4; color: #00489e; padding-bottom: 16px; border-bottom: 3px solid #2059aa; text-align: center }
.cmshtml .mysection04title h2 i { font-style: normal; font-size: 18px }
.cmshtml .mysection04text { margin-top: 16px }
.cmshtml .mysection04btn { text-align: center; margin-top: 16px }
.cmshtml .mysection04btn a { display: inline-block; text-decoration: none; color: #474747; padding: 10px 40px; border: 1px solid #dbdbdb; background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(230, 230, 230, 1) 100%); line-height: 1.5 }
.cmshtml .mysection5 { margin: 48px 0; padding: 0 16px }
.cmshtml .mysection5 > div { width: 100%; margin-top: 24px }
.cmshtml .mysection05sns { display: flex; column-gap: 16px; justify-content: center }
.cmshtml .mysection05sns > div { width: 40px !important }
.cmshtml .mysection05sns img { max-width: 100% }
.cmshtml .mysection05banner img { max-width: 100% }
.cmshtml #containerfootercontact { background-color: #edf6ff; padding: 40px 16px }
.cmshtml #footercontact { }
.cmshtml #footercontacttitle { text-align: center }
.cmshtml #footercontacttitle dt { font-size: clamp(24px, calc(0.709vw + 21.34px), 29px); font-weight: 600 !important; color: #000; letter-spacing: 2px; line-height: 1.3 }
.cmshtml #footercontacttitle dd { font-family: 'Ubuntu', sans-serif; font-size: 18px; font-weight: 700; color: #00489e }
.cmshtml .footercontacttitletext { font-weight: 550; margin-top: 16px }
.cmshtml #footercontactright { text-align: center }
.cmshtml .footercontactphone { font-family: 'Ubuntu', sans-serif; font-size: clamp(36px, calc(2.27vw + 27.49px), 52px); font-weight: 700; color: #00489e; line-height: 1.5 }
.cmshtml .footercontactphone i { font-style: normal; font-size: clamp(28px, calc(1.844vw + 21.09px), 41px) }
.cmshtml .footercontactaddress { font-size: 15px; color: #474747; font-weight: 350 }
.cmshtml .footercontactbtn { margin-top: 24px; display: flex; justify-content: center; column-gap: 8px }
.cmshtml .footercontactbtn a { display: inline-block; text-decoration: none; color: #474747; padding: 12px; border: 1px solid #dbdbdb; background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(230, 230, 230, 1) 100%); line-height: 1.5; font-size: 16px; color: #00489e; width: clamp(160px, calc(5.674vw + 138.72px), 200px) }
.cmshtml #footergmap iframe { width: 100%; height: clamp(280px, calc(17.021vw + 216.17px), 400px) }
.cmshtml #containerfooter footer { padding: 24px 16px }
.cmshtml .footerlogo { text-align: center }
.cmshtml .footerlogo img { max-width: 64% !important }
.cmshtml .footerphone { font-family: 'Ubuntu', sans-serif; font-size: 32px; font-weight: 700; color: #005faa; line-height: 1.2; margin-top: 16px; text-align: center }
.cmshtml .footerphone i { font-style: normal; font-size: 22px }
.cmshtml .footeraddress { font-size: 14px; color: #474747; font-weight: 350; text-align: center }
.cmshtml #footernav { display: none }
.cmshtml #containerfootercopy { border-top: 3px solid #ededed; margin: 0 16px 56px; padding-top: 16px; text-align: center }
.cmshtml #footercopy { color: #005faa }
.cmshtml #footercopy > div:nth-of-type(1) { font-size: 14px }
.cmshtml #footercopy > div:nth-of-type(2) { font-size: 20px; font-family: 'Shippori Mincho', sans-serif; font-weight: 500; margin-top: 8px }
.cmshtml #floatbanner { display: none !important }
.cmshtml #sidefixedbtn { position: fixed; right: 0; bottom: 0; left: 0; display: flex }
.cmshtml #sidefixedbtn > div { width: 50% !important; position: relative; background-color: #37278a; display: flex; align-items: center; justify-content: center; padding: 5px; column-gap: 8px }
.cmshtml .sidefixedbtn {  }
.cmshtml .sidefixedbtn > div:nth-of-type(1) { width: 20px !important; display: flex; align-items: center }
.cmshtml .sidefixedbtntext { color: #fff; font-weight: 500; font-size: 15px }
.cmshtml .sidefixedbtn:not(:first-of-type) { border-left: 1px solid #fff }
.cmshtml .sidefixedbtnicon { padding-top: 8px }
.cmshtml .sidefixedbtnicon img { max-width: 100% }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 8px 16px }
.cmshtml .smalltac { text-align: center }

.cmshtml .mysteps { }
.cmshtml .mysteps > :is(div:nth-of-type(1), div:nth-of-type(3), div:nth-of-type(5), div:nth-of-type(6), div:nth-of-type(8), div:nth-of-type(10), div:nth-of-type(11), div:nth-of-type(13), div:nth-of-type(15)) { border: 3px solid rgb(var(--basecolor)); border-radius: 8px; padding: 16px }
.cmshtml .mysteps > :is(div:nth-of-type(2), div:nth-of-type(4), div:nth-of-type(7), div:nth-of-type(9), div:nth-of-type(12), div:nth-of-type(14)) { display: flex; justify-content: center; align-items: center; height: 48px }
.cmshtml .mysteps > :is(div:nth-of-type(2), div:nth-of-type(4), div:nth-of-type(7), div:nth-of-type(9), div:nth-of-type(12), div:nth-of-type(14)) img { transform: rotate(90deg) }
.cmshtml .mystepbox img { max-width: 100%; border-radius: 8px }
.cmshtml .mystepbox > div:nth-of-type(2) { margin-top: 8px }


/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: block !important; padding: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: 1em !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none; color: rgb(var(--textcolor)) }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 16px; padding-top: 16px !important; border-top: 1px solid #ddd !important }

/* ブログ */
.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 { }
.cmshtml :is(h1, .smallonly, #mydrawerhambergerouter, #mydrawer, #smallonlyheader) { display: none }
.cmshtml #wrapper { position: relative; max-width: 1920px; margin: 0 auto }
.cmshtml #containerheader { padding: 15px 24px 16px; position: sticky; top: 0; background-color: #fff; z-index: 998 }
.cmshtml #headerinner { max-width: 1200px; margin: 0 auto }
.cmshtml header { display: flex; justify-content: space-between; align-items: center }
.cmshtml #headerlogo { width: 21.166%; margin-top: 2px }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #headerinfo { width: 78.834%; display: flex; justify-content: flex-end; align-items: center }
.cmshtml #headeraddress dl { text-align: right }
.cmshtml #headeraddress dt { font-family: 'Ubuntu', sans-serif; color: #00489e; font-weight: 700 !important; font-size: clamp(24px, calc(2.5vw + -3px), 27px); line-height: 1 }
.cmshtml #headeraddress dd { font-size: 14px; margin-top: clamp(2px, calc(3.333vw + -34px), 6px); font-weight: 300 }
.cmshtml #headerbtn { margin-left: 24px }
.cmshtml #headerbtn a { display: inline-block; text-decoration: none; color: #fff; font-weight: 500; font-size: 17px; letter-spacing: 2px; padding: clamp(13px, calc(2.5vw + -14px), 16px) clamp(32px, calc(4.167vw + -13px), 37px); background: linear-gradient(90deg, rgba(33, 199, 244, 1) 0%, rgba(65, 167, 246, 1) 100%); transition: .3s; border-radius: 4px }
.cmshtml #headerbtn a:hover { opacity: .72 }
.cmshtml #headerbanner { width: 19.661%; margin-left: 22px }
.cmshtml #headerbanner img { max-width: 100% }
.cmshtml #globalnav { display: flex; justify-content: center; margin-top: 24px }
.cmshtml #globalnav > div { padding: 0 clamp(24px, calc(3.333vw + -12px), 28px); line-height: 1.2 }
.cmshtml #globalnav > div:not(:first-of-type) { border-left: 1px solid #005faa }
.cmshtml #globalnav a { text-decoration: none; color: #005faa; letter-spacing: clamp(0px, calc(0.833vw + -9px), 1px); line-height: 1.2; transition: .3s; font-size: clamp(17px, calc(0.833vw + 8px), 18px); white-space: nowrap }
.cmshtml #globalnav a:hover { color: #3098ea }
.cmshtml .dropnav { position: relative }
.cmshtml .dropnav-child { visibility: hidden; opacity: 0; z-index: 999; position: absolute; top: 30px; left: 0; transition: .3s; min-width: 100% }
.cmshtml .dropnav-child a { display: block; background-color: #fff; padding: 8px 20px; white-space: nowrap; font-size: 88% !important }
.cmshtml .dropnav-child a::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\00a0'; font-weight: bold; font-size: 88% }
.cmshtml .dropnav-child a:hover { background-color: #ededed }
.cmshtml .dropnav:hover .dropnav-child { visibility: visible; opacity: 1 }
.cmshtml #containermainvisual { position: relative; margin-top: 8px }
.cmshtml #mainvisual img { max-width: 100% }
.cmshtml #mainvisualtext { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml #mainvisualtext dl { text-align: center; color: #fff; font-family: 'Shippori Mincho', sans-serif; line-height: 1.5; text-shadow: 0 0 24px #000, 0 0 24px #000, 0 0 24px #000; letter-spacing: clamp(2px, calc(0.357vw + -1.86px), 5px) }
.cmshtml #mainvisualtext dt { font-weight: 400 !important; font-size: clamp(56px, calc(2.619vw + 27.71px), 78px) }
.cmshtml #mainvisualtext dd { font-size: clamp(28px, calc(1.905vw + 7.43px), 44px); margin-top: 8px }
.cmshtml #containerpagetitle { position: relative }
.cmshtml #pagetitleimg img { width: 100%; height: clamp(120px, calc(11.348vw + 77.45px), 200px) !important; object-fit: cover }
.cmshtml #pagetitleouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml #pagetitle { font-weight: 600; color: #fff; text-shadow: 1px 1px 1px #003d64; font-size: clamp(28px, calc(2.837vw + 17.36px), 48px); letter-spacing: 2px }
.cmshtml #maincontents { margin: 40px 0 80px }
.cmshtml .containermysection01 { background: url(../img/common/back01.png) center top repeat-y; padding: 15px 24px }
.cmshtml .mysection01 { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center }
.cmshtml .mysection01 > div:nth-of-type(1) { width: 238px; text-align: center; color: #fff; letter-spacing: 1px }
.cmshtml .mysection01 > div:nth-of-type(2) { width: calc(100% - 238px); padding-left: 6.333% }
.cmshtml .mysection01right { display: flex; justify-content: space-between; align-items: center }
.cmshtml .mysection01right > div:nth-of-type(2) { width: 156px; margin-left: 24px; flex-shrink: 0 }
.cmshtml .mysection01btn a { display: block; text-decoration: none; color: #fff; background-color: #37278a; padding: 10px; border-radius: 4px; text-align: center; transition: .3s }
.cmshtml .mysection01btn a:hover { opacity: .72 }
.cmshtml .mysection02 { max-width: 1248px; margin: 40px auto 0; display: flex; justify-content: space-between; padding: 0 24px }
.cmshtml .mysection02 > div { width: 23.166%; max-width: 278px; position: relative; transition: .3s }
.cmshtml .mysection02 > div:hover { opacity: .72 }
.cmshtml .mysection02bannerimg img { max-width: 100% }
.cmshtml .mysection02bannerouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .4); text-align: center; padding: clamp(12px, calc(8.333vw + -78px), 22px) 4px 16px; color: #fff; line-height: 1.5 }
.cmshtml .mysection02bannertitle { font-size: clamp(22px, calc(2.5vw + -5px), 25px); font-weight: 700; height: 3em; display: flex; justify-content: center; align-items: center }
.cmshtml .mysection02bannericon img { max-width: 88.888% }
.cmshtml .mysection02bannertext { font-size: clamp(17px, calc(2.5vw + -10px), 20px); font-weight: 600; letter-spacing: 1px }
.cmshtml .containermysection03 { position: relative; margin-top: 40px; background-color: #edf6ff }
.cmshtml .mysection03outer { position: absolute; top: 0; right: 0; bottom: 0; left: 0 }
.cmshtml .mysection03 { max-width: 1248px; height: 100%; margin: 0 auto; display: flex; justify-content: flex-end; padding: 0 24px }
.cmshtml .mysection03inner { width: clamp(720px, calc(13.333vw + 576px), 832px); padding: clamp(48px, calc(1.786vw + 28.71px), 63px) 0 0 188px; background: url(../img/common/back02.png) repeat-y }
.cmshtml .mysection03logo { text-align: center }
.cmshtml .mysection03title { text-align: center; margin-top: clamp(24px, calc(10.833vw + -93px), 37px) }
.cmshtml .mysection03title h2 { font-family: 'Shippori Mincho', sans-serif; font-size: clamp(21px, calc(0.357vw + 17.14px), 24px); font-weight: 500; line-height: 1.8; padding-bottom: 19px; border-bottom: 3px solid #2059aa }
.cmshtml .mysection03title strong { color: #00489e; font-weight: 600 }
.cmshtml .mysection03text { margin-top: 26px; font-size: clamp(19px, calc(0.357vw + 15.14px), 22px); line-height: 1.43 }
.cmshtml .mysection04 { margin-top: 40px; display: flex; align-items: center }
.cmshtml .mysection04 > div { width: 50% }
.cmshtml .mysection04 img { max-width: 100% }
.cmshtml #wrapper .mysection0401 { max-width: 624px; padding: 0 24px 0 clamp(48px, calc(33.333vw + -312px), 88px) !important }
.cmshtml #wrapper .mysection0402 { max-width: 624px; padding: 0 clamp(48px, calc(33.333vw + -312px), 88px) 0 24px !important; float: right; clear: both }
.cmshtml .mysection04title h2 { font-family: 'Shippori Mincho', sans-serif; font-size: clamp(24px, calc(3.333vw + -12px), 28px); font-weight: 500; line-height: 1.4; color: #00489e; padding-bottom: clamp(18px, calc(5.833vw + -45px), 25px); border-bottom: 3px solid #2059aa; text-align: center; letter-spacing: 1px }
.cmshtml .mysection04title h2 i { font-style: normal; font-size: 24px }
.cmshtml .mysection04text { margin-top: clamp(20px, calc(5.833vw + -43px), 27px); font-size: clamp(18px, calc(1.667vw + 0px), 20px); line-height: 1.6 }
.cmshtml .mysection04btn { text-align: right; margin-top: 21px }
.cmshtml .mysection04btn a { display: inline-block; text-decoration: none; color: #474747; padding: 13px 55px; border: 1px solid #dbdbdb; transition: .3s; background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(230, 230, 230, 1) 100%); line-height: 1.5; font-size: 16px; letter-spacing: 1.5px }
.cmshtml .mysection04btn a:hover { opacity: .64 }
.cmshtml .myorder01 { order: 1 }
.cmshtml .myorder02 { order: 2 }
.cmshtml .mysection5 { max-width: 1248px; margin: 53px auto 48px; padding: 0 24px; display: flex; align-items: center }
.cmshtml .mysection5 > div { width: 50% }
.cmshtml .mysection05sns { display: flex; column-gap: 24px }
.cmshtml .mysection05banner img { max-width: 100% }
.cmshtml #containerfootercontact { background-color: #edf6ff; padding: clamp(56px, calc(13.333vw + -88px), 72px) 24px clamp(56px, calc(20vw + -160px), 80px) }
.cmshtml #footercontact { max-width: 1200px; margin: 0 auto; display: flex; justify-content: center; align-items: center }
.cmshtml #footercontacttitle { text-align: center; padding-right: 32px }
.cmshtml #footercontacttitle dt { font-size: 29px; font-weight: 600 !important; color: #000; letter-spacing: 4px; line-height: 1.3 }
.cmshtml #footercontacttitle dd { font-family: 'Ubuntu', sans-serif; font-size: 21px; font-weight: 700; color: #00489e }
.cmshtml .footercontacttitletext { font-weight: 550; margin-top: clamp(32px, calc(10.833vw + -85px), 45px); letter-spacing: 2px; line-height: 1.9 }
.cmshtml #footercontactright { border-left: 1px solid #e5e5e7; padding: 2px 0 2px 48px; text-align: center }
.cmshtml .footercontactphone { font-family: 'Ubuntu', sans-serif; font-size: clamp(52px, calc(7.5vw + -29px), 61px); font-weight: 700; color: #00489e; line-height: 1.5 }
.cmshtml .footercontactphone i { font-style: normal; font-size: 41px }
.cmshtml .footercontactaddress { font-size: 16px; color: #474747; font-weight: 350; margin-top: 3px }
.cmshtml .footercontactbtn { margin-top: 32px; display: flex; justify-content: center; column-gap: 11px }
.cmshtml .footercontactbtn a { display: inline-block; text-decoration: none; color: #474747; padding: 16px; border: 1px solid #dbdbdb; transition: .3s; background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(230, 230, 230, 1) 100%); line-height: 1.5; font-size: 16px; letter-spacing: 1.5px; color: #00489e; width: clamp(200px, calc(25vw + -70px), 230px) }
.cmshtml .footercontactbtn a:hover { opacity: .64 }
.cmshtml #footergmap iframe { width: 100%; height: clamp(400px, calc(136.667vw + -1076px), 564px) !important }
.cmshtml #containerfooter footer { max-width: 1248px; margin: 0 auto; padding: 35px 24px 23px; display: flex; justify-content: space-between; align-items: flex-start }
.cmshtml .footerphone { font-family: 'Ubuntu', sans-serif; font-size: 42px; font-weight: 700; color: #005faa; line-height: 1.2; margin-top: 34px }
.cmshtml .footerphone i { font-style: normal; font-size: 28px }
.cmshtml .footeraddress { font-size: 14px; color: #474747; font-weight: 350 }
.cmshtml #footernav { display: flex; justify-content: flex-end; column-gap: 24px; line-height: 1.3 }
.cmshtml #footernav > div:not(:first-child) { border-left: 1px solid #ccc; padding-left: 24px }
.cmshtml #footernav a { text-decoration: none; color: #474747; font-size: 14px; transition: .3s }
.cmshtml #footernav a:hover { opacity: .72 }
.cmshtml #footernav .footernavparent a { font-weight: 650 }
.cmshtml #footernav .footernavchild { padding-left: 15px; font-weight: 450 }
.cmshtml #footernav .footernavparent:not(:first-of-type) { margin-top: 20px }
.cmshtml #containerfootercopy { border-top: 3px solid #ededed; padding: 10px 24px 13px }
.cmshtml #footercopy { max-width: 1248px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; color: #005faa; padding: 0 24px }
.cmshtml #footercopy > div:nth-of-type(1) { font-size: 15px }
.cmshtml #footercopy > div:nth-of-type(2) { font-size: 23px; font-family: 'Shippori Mincho', sans-serif; font-weight: 500; letter-spacing: 2px }
.cmshtml #floatbanner { position: fixed; top: clamp(320px, calc(23.81vw + 62.86px), 520px); right: clamp(64px, calc(1.905vw + 43.43px), 80px); display: block; opacity: 1; transition: opacity 0.5s ease; width: clamp(216px, calc(10.595vw + 101.57px), 305px) }
.cmshtml #floatbanner img { max-width: 100% }
.cmshtml #floatbanner.hiding { opacity: 0 }
.cmshtml #floatbanner.hidden { display: none }
.cmshtml #sidefixedbtn { position: fixed; top: 152px; right: 0; z-index: 999 }
.cmshtml .sidefixedbtn { position: relative; background-color: #37278a; padding: clamp(8px, calc(0.476vw + 2.86px), 12px) clamp(12px, calc(0.357vw + 8.14px), 15px); border-radius: 4px 0 0 4px }
.cmshtml .sidefixedbtntext { color: #fff; writing-mode: vertical-rl; font-weight: 500; padding: clamp(8px, calc(1.429vw + -7.43px), 20px) 0 clamp(8px, calc(1.071vw + -3.57px), 17px) clamp(2px, calc(0.476vw + -3.14px), 6px); font-size: clamp(17px, calc(0.238vw + 14.43px), 19px) }
.cmshtml .sidefixedbtn a { transition: .3s }
.cmshtml .sidefixedbtn a:hover { background-color: rgba(255, 255, 255, .16) }
.cmshtml .sidefixedbtn:not(:first-of-type) { margin-top: clamp(16px, calc(0.714vw + 8.29px), 22px) }
.cmshtml .sidefixedbtnicon { width: clamp(24px, calc(0.952vw + 13.71px), 32px); margin: 0 auto }
.cmshtml .sidefixedbtnicon img { max-width: 100% }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 12px 24px }
.cmshtml .largetac { text-align: center }

.cmshtml .mysteps { display: flex; flex-wrap: wrap; row-gap: 42px }
.cmshtml .mysteps > :is(div:nth-of-type(1), div:nth-of-type(3), div:nth-of-type(5), div:nth-of-type(6), div:nth-of-type(8), div:nth-of-type(10), div:nth-of-type(11), div:nth-of-type(13), div:nth-of-type(15)) { width: calc(33.3333% - 28px); border: 3px solid rgb(var(--basecolor)) !important; border-radius: 8px; padding: 16px }
.cmshtml .mysteps > :is(div:nth-of-type(2), div:nth-of-type(4), div:nth-of-type(7), div:nth-of-type(9), div:nth-of-type(12), div:nth-of-type(14)) { width: 42px; display: flex; justify-content: center; align-items: center }
.cmshtml .mystepbox img { max-width: 100%; border-radius: 8px }
.cmshtml .mystepbox > div:nth-of-type(2) { margin-top: 8px }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: block !important; padding: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { display: flex }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: 1em !important; width: 128px !important; flex-shrink: 0 }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none; color: rgb(var(--textcolor)) }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 16px; padding-top: 16px !important; border-top: 1px solid #ddd !important }

/* ブログ */
.cmshtml #myblogframe { max-width: 1128px; 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: 1080px) and (max-width: 1200px) {
.cmshtml .mysection01 > div:nth-of-type(1) { width: 160px; text-align: left }
.cmshtml .mysection01 > div:nth-of-type(2) { width: calc(100% - 160px); padding-left: 6.333% }
}

/* ブログ配色 */
.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 }

/* 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 { position: static; display: none }
#editView #mydrawer { position: static; overflow-y: visible; opacity: 1; display: block }
#editView #mydrawerinner { width: 100%; transform: translateX(0); overflow-y: auto }
#editView h5 edit { display: inline-block !important }
#editView #containerheader { position: static }
#editView #globalnav a { white-space: normal }
#editView .dropnav-child { visibility: visible; opacity: 1; z-index: 999; position: static }
#editView #mainvisualtext { position: static; background-color: #ccc }
#editView .mysection02bannerouter { position: static }
#editView .mysection03outer { position: static }
#editView #floatbanner { position: static !important }
#editView #sidefixedbtn { position: static !important }
#editView .sidefixedbtn { display: inline-block }
#editView #pagetitleouter { position: static; background-color: #ccc }
#editView .mysection04 > div:has(.myorder01) { order: 1 }
#editView .mysection04 > div:has(.myorder02) { order: 2 }
#editView #smallonlyheader { display: block; background-color: #ef9702; padding: 8px 16px 10px; text-align: center; font-size: 88%; line-height: 1.5 }
#editView #smallonlyheader a { color: #fff; text-decoration: none }
#editView #headerinner { max-width: 1920px }

/* 共通装飾 */
/* 見出し */
.cmshtml .rdplanetitle :is(h2, h3, h4, h5, h6) { font-family: 'Shippori Mincho', sans-serif }
.cmshtml .rdplanetitle h2 { font-size: clamp(23px, calc(1.56vw + 17.15px), 34px) !important; font-weight: 600 !important; text-align: center; position: relative; padding-bottom: clamp(14px, calc(0.851vw + 10.81px), 20px) }
.cmshtml .rdplanetitle h2::after { display: block; position: absolute; bottom: 0; left: 34%; content: ''; width: 32%; border-bottom: 4px dotted rgb(var(--basecolor)) }
.cmshtml .rdplanetitle h3 { font-size: clamp(18px, calc(0.851vw + 14.81px), 24px) !important; font-weight: 600 !important; color: #fff; background-color: rgb(var(--basecolor)); border-radius: 4px; padding: 0 16px; text-align: center }
.cmshtml .rdplanetitle h4 { font-size: clamp(18px, calc(0.851vw + 14.81px), 24px) !important; font-weight: 600 !important; border-bottom: 4px solid #eee; position: relative; padding-bottom: 8px; color: rgb(var(--basecolor)) }
.cmshtml .rdplanetitle h4::after { border-bottom: 4px solid rgb(var(--basecolor)); content: ''; position: absolute; bottom: -4px; left: 0; width: 32%; height: 4px }
.cmshtml .rdplanetitle h5 { font-size: clamp(16px, calc(0.567vw + 13.87px), 20px) !important; font-weight: 600 !important; color: rgb(var(--basecolor)); background-color: #deebf7; border-radius: 4px; padding: 0 16px }
.cmshtml .rdplanetitle h6 { font-size: clamp(16px, calc(0.284vw + 14.94px), 18px) !important; font-weight: 600 !important; background-color: #eee; padding: 0 12px; border: 1px solid #e8e8e8; border-radius: 4px; color: rgb(var(--basecolor)); display: flex; align-items: center }
.cmshtml .rdplanetitle h6::before { content: '●\2002'; font-size: 56% }

@media (max-width: 767px) {
.cmshtml .rdplanetitle h4 { border-bottom-width: 3px }
.cmshtml .rdplanetitle h4::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 h4 { border-bottom-width: 3px }
.cmshtml .rdplanetitle h4::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 :is(.link01, .link02, .link03, .link04) a { text-decoration: none; transition: .3s; border-radius: 6px }
.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: rgb(var(--basecolor)); border: clamp(2px, calc(0.142vw + 1.47px), 3px) solid rgb(var(--basecolor)); font-weight: 500; color: #fff }
.cmshtml :is(.link03, .link04) a { background-color: #fff; border: clamp(2px, calc(0.142vw + 1.47px), 3px) solid rgb(var(--basecolor)); font-weight: 500; color: rgb(var(--basecolor)) }
.cmshtml :is(.link01, .link02) a:hover { opacity: .8; background-color: #fff; color: rgb(var(--basecolor)) }
.cmshtml :is(.link03, .link04) a:hover { opacity: .8; background-color: rgb(var(--basecolor)); 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 .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: 2px solid #59acff; border-radius: 6px }
.cmshtml .myfaq.myfaqopen { grid-template-rows: auto auto }
.cmshtml .myfaqq { position: relative; padding: 6px 32px 6px 40px; cursor: pointer; background-color: #59acff; color: #fff; font-weight: 500 }
.cmshtml .myfaqq::before, .cmshtml .myfaqa::before { position: absolute; font-size: 16px; font-family: 'Font Awesome 6 Free'; display: flex; justify-content: center; align-items: center; width: 24px; height: 24px; border-radius: 4px; border: none }
.cmshtml .myfaqq::before { top: 10px; left: 8px; content: '\51'; background-color: #fff; color: #59acff }
.cmshtml .myfaqq span { display: block; position: absolute; top: 5px; right: 16px; transition: .4s; color: #fff }
.cmshtml .myfaqa { position: relative; overflow-y: hidden; opacity: 0; transition: 1s }
.cmshtml #wrapper .myfaqa { padding: 2px 24px 0 56px !important }
.cmshtml .myfaqa::before { top: 14px; left: 24px; content: '\41'; background-color: #f69; color: #fff }
.cmshtml .myfaqainner { padding: 8px 0 16px !important }
.cmshtml .myfaq.myfaqopen .myfaqa { opacity: 1 }
.cmshtml .myfaqrotate { transform: rotate(180deg) }
.cmshtml .myfaqstatic { display: grid; grid-template-columns: 1fr; grid-template-rows: auto; transition: .4s; border: 2px solid #59acff; border-radius: 6px }
.cmshtml .myfaqqstatic { position: relative; padding: 6px 32px 6px 40px; background-color: #59acff; color: #fff; font-weight: 500 }
.cmshtml .myfaqqstatic::before, .cmshtml .myfaqastatic::before { position: absolute; font-size: 16px; font-family: 'Font Awesome 6 Free'; display: flex; justify-content: center; align-items: center; width: 24px; height: 24px; border-radius: 4px; border: none }
.cmshtml .myfaqqstatic::before { top: 10px; left: 8px; content: '\51'; background-color: #fff; color: #59acff }
.cmshtml #wrapper .myfaqastatic { position: relative; padding: 10px 24px 16px 56px !important }
.cmshtml .myfaqastatic::before { top: 14px; left: 24px; content: '\41'; background-color: #f69; color: #fff }
.cmshtml .myfaqastatic > div:has(img) { width: 40% !important; max-width: 400px; float: right; clear: both; margin: 8px 0 16px clamp(24px, calc(3.404vw + 11.23px), 48px) !important }
.cmshtml .myfaqastatic > div:has(img) + div { display: inline }
.cmshtml .myfaqastatic img { max-width: 100% }

@media (max-width: 1080px) {
.cmshtml #wrapper :is(.myfaqa, .myfaqastatic) { padding-left: 40px !important }
.cmshtml :is(.myfaqa, .myfaqastatic)::before { left: 8px }
}

#editView .myfaq { grid-template-rows: auto auto }
#editView .myfaqa { opacity: 1 }
#editView .myfaqastatic > div:has(img) + div { display: block }
#editView .myfaqastatic > div:has(img) { float: none }

.cmshtml .rdplanemap .rdiframewrapper { position: static; padding-top: 0; overflow: visible; height: auto }
.cmshtml .rdplanemap .rdiframewrapper iframe { position: static }
#editView .rdplanemap .rdiframewrapper iframe { position: absolute }
.cmshtml .mynewarticles .rdnewArticle-item:not(:first-child) { display: none !important }