@charset "utf-8";

@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('/data/common/c2101a083201/css/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'), url('/data/common/c2101a083201/css/fontawesome/webfonts/fa-solid-900.ttf') format('truetype') }

:root { --basecolor: 76, 148, 208 }
:root { --textcolor: 44, 44, 44 }
:root { --bordercolor: 221, 221, 221 }
:root { --blogcolor: 26, 115, 232 }

.cmshtml { scroll-behavior: smooth }
.cmshtml * { box-sizing: border-box }
.cmshtml body { margin: 0; background-color: #fff; color: rgb(var(--textcolor)); line-height: 1.8; font-family: 'M PLUS Rounded 1c', sans-serif }
.cmshtml section, div, dl { display: flow-root }
.cmshtml p { margin: 0 }
.cmshtml a { color: rgba(76, 148, 208, 1) }
.cmshtml a:hover { color: rgba(76, 148, 208, .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: 'M PLUS Rounded 1c', 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: 'M PLUS Rounded 1c', 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 }

@keyframes myFadein { 0% { opacity: 0 }
100% { opacity: 1 }
}
.cmshtml .myfadein { animation: myFadein 3s ease 0s }

@media (max-width: 1079px) {
.cmshtml body { font-size: 16px; font-feature-settings: 'palt'; -webkit-text-size-adjust: 100% }
.cmshtml :is(h1, .largeonly) { display: none }
.cmshtml #wrapper { position: relative }
.cmshtml #containerheader { position: relative }
.cmshtml #pagetitleimg { }
.cmshtml #pagetitleimg > div { background-color: #5a7993 }
.cmshtml #pagetitleimg img { max-width: 100%; opacity: .65 }
.cmshtml #containerpagetitle { position: absolute; right: 0; bottom: 0; left: 0; display: flex; justify-content: center }
.cmshtml #pagetitle { text-align: center; margin-bottom: clamp(16px, calc(20.426vw + -60.6px), 160px) }
.cmshtml .pagetitlej { font-size: clamp(28px, calc(0.567vw + 25.87px), 32px); color: #fff; letter-spacing: 0.06em; line-height: 1.5 }
.cmshtml .pagetitlee { color: rgba(255, 255, 255, .5); letter-spacing: 0.06em }
.cmshtml #contentsheader { position: absolute; top: 0; right: 0; left: 0 }
.cmshtml header { position: relative; z-index: 1; height: 48px; padding: 15px 0 0 15px }
.cmshtml #headerlogo { }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #globalnav { display: none }
.cmshtml #headerfacebook { display: none }
.cmshtml #containermainvisual { position: relative; margin-top: -48px; z-index: 0 }
.cmshtml #mainvisualouter { position: relative }
.cmshtml #mainvisual img { max-width: 100% }
.cmshtml #mainvisualcatch { position: absolute; top: 116px; left: 16px }
.cmshtml #mainvisualcatch img { max-width: 100% }
.cmshtml #containermainvisualinfo { background-color: #5a7993; padding: 13px 16px 16px }
.cmshtml #mainvisualinfo { color: #fff; text-align: center }
.cmshtml #mainvisualinfophone { font-weight: 700; font-size: 22px }
.cmshtml #mainvisualinfotext { margin-top: 13px }
.cmshtml #mainvisualinfobtn { margin-top: 8px }
.cmshtml #mainvisualinfobtn > div:nth-child(2) { margin-top: 8px }
.cmshtml #mainvisualinfobtn a { display: block; max-width: 320px; margin: 0 auto; text-decoration: none; color: #fff; border: 1px solid #fff; padding: 11px; background: url(../img/common/back04.png) 93% center / 6px 9px no-repeat; transition: .3s }
.cmshtml #mainvisualinfobtn a:hover { background-color: #4c94d0 }
.cmshtml #mainvisualinfobtn a strong { font-weight: 400; display: inline-block }
.cmshtml #mainvisualinfobtn > div:nth-child(1) a strong { background: url(../img/common/icon01.png) left center no-repeat; padding-left: 23px }
.cmshtml #mainvisualinfobtn > div:nth-child(2) a strong { background: url(../img/common/icon02.png) left center no-repeat; padding-left: 20px }
.cmshtml .ls006em { letter-spacing: 0.06em }
.cmshtml #mytoppage { margin-bottom: 43px }
.cmshtml #mycontentspage { margin: 48px 0 }
.cmshtml .mysection01 { max-width: 1248px; margin: 40px auto 0; padding: 0 24px; text-align: center; color: #5a7993; background: url(../img/common/back02.png) center bottom / 1px 37px no-repeat; padding-bottom: 70px }
.cmshtml .mysection02 { margin: 35px auto 0; padding: 0 16px }
.cmshtml .mytitle01 { text-align: center }
.cmshtml .mytitle01 h2 { color: #1a3e5c; letter-spacing: 0.14em; font-weight: 400; font-size: 30px }
.cmshtml .mytitle01 h3 { color: rgba(90, 121, 147, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-top: 1px }
.cmshtml .mysection02cards { margin-top: 22px }
.cmshtml .mysection02cards > div { max-width: 380px; margin: 0 auto }
.cmshtml .mysection02cards > div:not(:first-child) { margin-top: 24px }
.cmshtml .mysection02cardtitle { color: #4c94d0; font-size: 26px; font-weight: 400 }
.cmshtml .mysection02cardimg > div { position: relative; margin-top: 4px }
.cmshtml .mysection02cardimg img { max-width: 100% }
.cmshtml .mysection02cardimg > div::after { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: clamp(12px, calc(1.667vw + -6px), 14px) solid rgba(90, 121, 147, 0.25) }
.cmshtml .mysection02cardtext { margin-top: 24px; letter-spacing: 0.06em }
.cmshtml .mysection02btn { text-align: center; margin-top: 49px }
.cmshtml .containermysection03 { margin-top: 50px; padding-top: 32px; position: relative }
.cmshtml .mysection03outer { background: url(../img/common/back05.png) left top repeat-y }
.cmshtml .mysection03 { padding: 41px 16px 48px }
.cmshtml .mytitle02 { text-align: center }
.cmshtml .mytitle02 h2 { color: #fff; letter-spacing: 0.14em; font-weight: 400; font-size: 30px }
.cmshtml .mytitle02 h3 { color: rgba(255, 255, 255, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-top: 1px }
.cmshtml .mysection03cards { display: flex; flex-wrap: wrap; margin-top: 35px; gap: 24px 16px }
.cmshtml .mysection03cards > div { width: calc(50% - 8px) !important; max-width: 216px; text-align: center }
.cmshtml .mysection03cards img { max-width: 88% }
.cmshtml .mysection03cards dl { margin-top: 15px }
.cmshtml .mysection03cards dt { font-size: 19px; letter-spacing: 0.5px; color: #fff }
.cmshtml .mysection03cards dd { font-size: 14px; letter-spacing: 0.06em; color: rgba(255, 255, 255, 0.5); line-height: 1.5; margin-top: 7px }
.cmshtml .containermysection03::after { position: absolute; top: 0; right: 0; bottom: 32px; left: 0; content: ''; background: url(../img/common/back06.png) center top / 100% repeat-y; z-index: -1; height: calc(100% - 32px) }
.cmshtml .mysection04 { margin-top: 32px; padding: 0 16px }
.cmshtml .mysection04 > div { max-width: 585px; margin: 0 auto }
.cmshtml .mysection04 > div:not(:first-child) { margin-top: 46px }
.cmshtml .mysection04cardimg > div { position: relative }
.cmshtml .mysection04cardimg img { max-width: 100% }
.cmshtml .mysection04cardimg > div::after { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: clamp(12px, calc(1.667vw + -6px), 14px) solid rgba(90, 121, 147, 0.25) }
.cmshtml .mysection04 dl { margin-top: 14px }
.cmshtml .mysection04 dt { font-size: 24px; color: #193d5c }
.cmshtml .mysection04 dd { font-size: 14px; letter-spacing: 0.06em; color: #4c94d0; margin-top: 4px }
.cmshtml .mysection04 a { text-decoration: none }
.cmshtml .containermysection05 { margin-top: 78px }
.cmshtml .mysection05 { }
.cmshtml .mysection05 > div:nth-child(1) { }
.cmshtml .mysection05 > div:nth-child(2) { background-color: #ecf7fb; padding: 16px 16px 26px; margin-top: 24px }
.cmshtml .mytitle03 { }
.cmshtml .mytitle03 h2 { color: #1a3e5c; letter-spacing: 0.14em; font-weight: 400; font-size: 30px; display: flex; justify-content: center; align-items: center; column-gap: 8px }
.cmshtml .mytitle03 h2::before { content: ''; display: inline-block; background: url(../img/common/icon04.png) left center no-repeat; width: 26px; height: 26px }
.cmshtml .mytitle03 h3 { color: rgba(90, 121, 147, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-top: 5px; text-align: center }
.cmshtml .mysection05btn { margin-top: 22px; text-align: right; padding-right: 16px }
.cmshtml .mysection05btn a { text-decoration: none; display: inline-block; background: url(../img/common/back03.png) right center / 6px 9px no-repeat; padding-right: 32px }
.cmshtml footer { padding: 0 16px }
.cmshtml .mytitle04 { display: flex; align-items: center }
.cmshtml .mytitle04 h2 { color: #1a3e5c; letter-spacing: 0.1em; font-weight: 400; font-size: 24px; display: flex; justify-content: center; align-items: center; column-gap: 16px }
.cmshtml .mytitle04info h2::before { content: ''; display: inline-block; background: url(../img/common/icon05.png) left center no-repeat; width: 25px; height: 25px }
.cmshtml .mytitle04map h2::before { content: ''; display: inline-block; background: url(../img/common/icon07.png) left center no-repeat; width: 16px; height: 22px }
.cmshtml .mytitle04 h3 { color: rgba(90, 121, 147, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-left: 24px }
.cmshtml #footerhours { }
.cmshtml #footerhours table { width: 100% }
.cmshtml #footerhours th { font-weight: 400; text-align: left; width: 23%; border-bottom: 1px solid #d6e3ed; padding: 12px 0 11px; display: table-cell !important }
.cmshtml #footerhours td { text-align: center; color: #5a7993; border-bottom: 1px solid #d6e3ed; padding: 12px 0 11px; display: table-cell !important }
.cmshtml #footerhours td:not(:last-child) { width: 11% }
.cmshtml #footernotice { margin-top: 16px; letter-spacing: 0.06em }
.cmshtml #footercontact { margin-top: 32px; text-align: center }
.cmshtml #footercontactphone { background-color: #f8f8f8; padding: 15px 16px 17px }
.cmshtml #footercontactphone strong { color: #4c94d0; font-size: 22px; letter-spacing: 0.06em }
.cmshtml #footercontactphone i { font-style: normal; letter-spacing: 0.06em }
.cmshtml #footercontactphone a { display: block; padding: 10px; background-color: #fff; border: 1px solid rgb(var(--basecolor)); font-weight: 500; color: rgb(var(--basecolor)); text-decoration: none; transition: .3s; background: url(../img/common/back03.png) calc(100% - 17px) center / 6px 9px no-repeat }
.cmshtml #footercontactphone a:hover { opacity: .8; background-color: rgb(var(--basecolor)); color: #fff; background-image: url(../img/common/back04.png) }
.cmshtml #footercontactphone a u { display: inline-block; text-decoration: none; background: url(../img/common/icon06.png) left center no-repeat; padding-left: 23px }
.cmshtml #footercontactphone a:hover u { background: url(../img/common/icon01.png) left center no-repeat }
.cmshtml #footercontactqr { background-color: #ecf7fb; padding: 15px 16px 17px }
.cmshtml #footeraddress { letter-spacing: 0.06em; margin-top: 10px }
.cmshtml #footermap { margin-top: 11px }
.cmshtml #footergmap { margin-top: 15px }
.cmshtml #footergmap iframe { width: 100% !important; height: 270px !important; position: static !important }
.cmshtml #footercopy { margin-top: 24px; background-color: #5a7993; color: #fff; font-size: 14px; text-align: center; padding: 10px 0 }
.cmshtml #mydrawerhambergerouter { position: fixed; top: 8px; right: 8px; z-index: 9999; background-color: #5a7993; padding: 0 4px 6px; transition: .3s }
.cmshtml #mydrawerhambergerouter:has(#mydrawertoggle:checked) { background-color: #fff }
.cmshtml #mydrawertoggle { display: none }
.cmshtml #mydrawerhamberger { display: block; cursor: pointer }
.cmshtml #mydrawerhamberger span { display: block; background-color: #fff; transition: .4s; transform-origin: 0; width: 28px; height: 2px; margin-top: 8px }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(1) { transform: translate(4px, 0) rotate(45deg); background-color: #5a7993 }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(2) { opacity: 0 }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(3) { transform: translate(4px, 0) rotate(-45deg); background-color: #5a7993 }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 8px 16px }
.cmshtml .smalltac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 8px; right: 8px; display: none; background-color: rgb(var(--basecolor)); opacity: 0; transition: opacity 0.5s ease }
.cmshtml #pt a { color: #fff; text-decoration: none; display: block; padding: 14px }
.cmshtml #pt span { font-size: 20px; display: block }


/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { align-items: flex-start !important; padding: 10px 16px !important; background-color: #fff; width: 100% !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { width: 100% !important; height: 104px !important; object-fit: cover !important; border-radius: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { width: 100% !important; flex: none !important; display: block !important }
.cmshtml .mynewarticles .rdnewArticle-ContDate { width: 100% !important; font-size: 16px !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none !important; color: #2c2c2c !important }
.cmshtml .mynewarticles .rdnewArticle-ContLink:hover { opacity: .72 !important }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 12px !important; border-top: none !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 .rdListImageItem { width: 100%; height: 220px !important; object-fit: cover }
.cmshtml .rdListImageEmpty { background-color: #f8f8f8 }
.cmshtml .rdListImageItemDummy { border: none !important }
.cmshtml .rdpublishDate { font-size: 88% !important }
.cmshtml :is(.rdarticleTitleText, .rdRelatedArticles-title) { overflow: hidden; white-space: nowrap; text-overflow: ellipsis }
.cmshtml .rdarticleTitleText a { font-size: 88% !important; color: rgb(var(--textcolor)) }
.cmshtml .rdarticleTitle h3 { border-bottom: 3px solid rgb(var(--basecolor)) !important; font-size: 18px !important }
.cmshtml .rdListCategoryItem { background-color: rgba(0, 0, 0, .64) !important; padding: 0 4px !important }
.cmshtml .ItemrdListTagListItem { padding: 0 4px !important; margin-right: 4px !important }
.cmshtml .rdnewArticle { border: none !important; padding: 0 !important }
.cmshtml #myblogframe .rdnewArticle-item { padding: 6px 2px !important }
.cmshtml #myblogframe :is(.rdnewArticle-item + .rdnewArticle-item, .rdCategorylist-item + .rdCategorylist-item, .rdMonthlyArchive-item + .rdMonthlyArchive-item) { border-top: 1px solid rgb(var(--bordercolor)) !important }
.cmshtml .rdCategorylist-link { padding: 4px !important }
.cmshtml .rdarticlecalendar { font-size: 92%; width: 100%; max-width: 338px; margin: 0 auto }
.cmshtml .rdCalendarBody { line-height: 1.3 }
.cmshtml .rdCalendarTable-link { color: #fff !important }
.cmshtml .rdMonthlyArchive-item { padding: 4px 4px 4px 14px !important; margin: 0 4px }
.cmshtml .rdTaglist-link { padding: 2px 4px !important; font-size: 88%; color: #0061c9 !important }
.cmshtml .rdTaglist-link:hover { color: #fff !important }
.cmshtml .rdBlogSearch-btn { padding: 0 8px !important; margin-left: 8px; color: #fff !important }
.cmshtml .rdRelatedArticles { width: calc(100% + 16px); transform: translateX(-8px) }
.cmshtml .rdRelatedArticles-item { border: 1px solid rgb(var(--bordercolor)); margin: 0 8px 24px; width: calc(50% - 16px) !important; padding: 8px !important }
.cmshtml .rdRelatedArticles-imageWrapper { border: none !important; height: 96px !important; margin-bottom: 4px !important }
.cmshtml .rdRelatedArticles-image { width: 100%; height: 96px !important; object-fit: cover }
.cmshtml .rdRelatedArticles-title a { color: rgb(var(--textcolor)); text-decoration: none }
.cmshtml .rdRelatedArticles-title a:hover { opacity: .8 }
.cmshtml :is(.rdRelatedArticles-catlink, .rdRelatedArticles-taglink) { padding: 3px 4px !important }
.cmshtml .rdReadMore { font-size: 88% }
}

@media (max-width: 767px) {
.cmshtml #mydrawerhamberger { transform: scale(.8) }
.cmshtml #mydrawerinner { padding-top: 40px }
}

@media (min-width: 1080px) {
.cmshtml body { font-size: 16px }
.cmshtml :is(h1, #mydrawerhambergerouter, #mydrawer, .smallonly) { display: none }
.cmshtml #wrapper { position: relative; max-width: 1920px; margin: 0 auto }
.cmshtml #containerheader { position: relative }
.cmshtml .headertop { height: 785px; background: url(../img/common/back01.png) no-repeat; overflow: hidden; padding: 0 24px }
.cmshtml .contentstop { background: url(../img/common/back08.png) center top / 100% no-repeat }
.cmshtml #pagetitleimg { padding-left: 34.895% }
.cmshtml #pagetitleimg > div { background-color: #5a7993 }
.cmshtml #pagetitleimg img { max-width: 100%; opacity: .65 }
.cmshtml #containerpagetitle { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml #pagetitle { text-align: center }
.cmshtml .pagetitlej { font-size: 32px; color: #fff; letter-spacing: 0.06em }
.cmshtml .pagetitlee { color: rgba(255, 255, 255, .5); letter-spacing: 0.06em }
.cmshtml #contentsheader { position: absolute; top: 0; right: 24px; left: 24px }
.cmshtml header { position: relative; max-width: 1200px; margin: 48px auto 0; display: flex; justify-content: space-between; z-index: 1 }
.cmshtml #headerlogo { margin-top: 4px }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #globalnav { display: flex; column-gap: clamp(12px, calc(10.833vw + -105px), 25px); margin-left: clamp(8px, calc(1.071vw + -3.57px), 17px) }
.cmshtml #globalnav a { text-decoration: none; color: #fff; transition: .3s; text-align: center; letter-spacing: clamp(0px, calc(0.119vw + -1.29px), 1px) }
.cmshtml #globalnav a:hover { opacity: .64 }
.cmshtml #globalnav strong { display: block; font-weight: 400 }
.cmshtml #globalnav i { display: block; font-style: normal; font-size: 12px; margin-top: 1px }
.cmshtml #headerfacebook { width: 32px; margin-top: 4px }
.cmshtml #headerfacebook img { width: 32px; height: 32px; max-width: 32px !important }
.cmshtml #containermainvisual { position: absolute; top: 0; right: 24px; bottom: 0; left: 24px; z-index: 0 }
.cmshtml #mainvisualouter { position: relative; max-width: 1230px; margin: 0 auto; padding-left: 310px; overflow: visible }
.cmshtml #mainvisual { overflow: visible }
.cmshtml #mainvisual img { max-width: 1250px !important }
.cmshtml #mainvisualcatch { position: absolute; top: 195px; left: 0 }
.cmshtml #mainvisualcatch img { max-width: 100% }
.cmshtml #containermainvisualinfo { position: absolute; right: 24px; bottom: 127px; left: 24px }
.cmshtml #mainvisualinfo { position: relative; max-width: 1230px; margin: 0 auto; color: #fff; text-align: center }
.cmshtml #mainvisualinfophone { font-weight: 700; font-size: 22px; width: 246px }
.cmshtml #mainvisualinfotext { margin-top: 13px; width: 246px }
.cmshtml #mainvisualinfobtn { margin-top: 32px }
.cmshtml #mainvisualinfobtn > div:nth-child(2) { margin-top: 8px }
.cmshtml #mainvisualinfobtn a { display: block; width: 246px; text-decoration: none; color: #fff; border: 1px solid #fff; padding: 11px; background: url(../img/common/back04.png) 93% center / 6px 9px no-repeat; transition: .3s }
.cmshtml #mainvisualinfobtn a:hover { background-color: #4c94d0 }
.cmshtml #mainvisualinfobtn a strong { font-weight: 400; display: inline-block }
.cmshtml #mainvisualinfobtn > div:nth-child(1) a strong { background: url(../img/common/icon01.png) left center no-repeat; padding-left: 23px }
.cmshtml #mainvisualinfobtn > div:nth-child(2) a strong { background: url(../img/common/icon02.png) left center no-repeat; padding-left: 20px }
.cmshtml .ls006em { letter-spacing: 0.06em }
.cmshtml #mytoppage { margin-bottom: 43px }
.cmshtml #mycontentspage { margin: 72px auto 120px }
.cmshtml #wrapper .mysection01 { max-width: 1248px; margin: 40px auto 0; padding: 0 24px 70px !important; text-align: center; color: #5a7993; background: url(../img/common/back02.png) center bottom / 1px 37px no-repeat }
.cmshtml .mysection02 { max-width: 1248px; margin: 35px auto 0; padding: 0 24px }
.cmshtml .mytitle01 { text-align: center }
.cmshtml .mytitle01 h2 { color: #1a3e5c; letter-spacing: 0.14em; font-weight: 400; font-size: 30px }
.cmshtml .mytitle01 h3 { color: rgba(90, 121, 147, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-top: 1px }
.cmshtml .mysection02cards { display: flex; justify-content: space-between; margin-top: 22px }
.cmshtml .mysection02cards > div { width: 31.666%; max-width: 380px }
.cmshtml .mysection02cardtitle { color: #4c94d0; font-size: clamp(26px, calc(3.333vw + -10px), 30px); font-weight: 400 }
.cmshtml .mysection02cardimg > div { position: relative; margin-top: 4px }
.cmshtml .mysection02cardimg img { max-width: 100% }
.cmshtml .mysection02cardimg > div::after { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: clamp(12px, calc(1.667vw + -6px), 14px) solid rgba(90, 121, 147, 0.25) }
.cmshtml .mysection02cardtext { margin-top: 24px; letter-spacing: 0.06em }
.cmshtml .mysection02btn { text-align: center; margin-top: 49px }
.cmshtml .containermysection03 { margin-top: 50px; padding-top: 32px; position: relative }
.cmshtml .mysection03outer { background: url(../img/common/back05.png) left top / clamp(1310px, calc(51.311vw + 637.82px), 1623px) 40px repeat-y }
.cmshtml .mysection03 { max-width: 1248px; margin: 0 auto; padding: 41px 24px 48px }
.cmshtml .mytitle02 { text-align: center }
.cmshtml .mytitle02 h2 { color: #fff; letter-spacing: 0.14em; font-weight: 400; font-size: 30px }
.cmshtml .mytitle02 h3 { color: rgba(255, 255, 255, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-top: 1px }
.cmshtml .mysection03cards { display: flex; justify-content: space-between; margin-top: 35px }
.cmshtml .mysection03cards > div { width: 18%; max-width: 216px; text-align: center }
.cmshtml .mysection03cards img { max-width: 100% }
.cmshtml .mysection03cards dl { margin-top: 15px }
.cmshtml .mysection03cards dt { font-size: clamp(20px, calc(1.667vw + 2px), 22px); letter-spacing: clamp(1px, calc(1.033vw + -10.16px), 2.24px); color: #fff }
.cmshtml .mysection03cards dd { font-size: 14px; letter-spacing: 0.06em; color: rgba(255, 255, 255, 0.5); line-height: 1.5; margin-top: 7px }
.cmshtml .containermysection03::after { position: absolute; top: 0; right: 0; bottom: 32px; left: 0; content: ''; background: url(../img/common/back06.png) center top / 100% repeat-y; z-index: -1; height: calc(100% - 32px) }
.cmshtml .mysection04 { max-width: 1248px; margin: 48px auto 0; padding: 0 24px; display: flex; justify-content: space-between }
.cmshtml .mysection04 > div { width: 48.75%; max-width: 585px }
.cmshtml .mysection04cardimg > div { position: relative }
.cmshtml .mysection04cardimg img { max-width: 100% }
.cmshtml .mysection04cardimg > div::after { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: clamp(12px, calc(1.667vw + -6px), 14px) solid rgba(90, 121, 147, 0.25) }
.cmshtml .mysection04 dl { margin-top: 34px }
.cmshtml .mysection04 dt { font-size: 24px; color: #193d5c }
.cmshtml .mysection04 dd { font-size: 14px; letter-spacing: 0.06em; color: #4c94d0; margin-top: 13px }
.cmshtml .mysection04 a { text-decoration: none; transition: .3s }
.cmshtml .mysection04 a:hover { background-color: rgba(255, 255, 255, .32) }
.cmshtml .containermysection05 { margin-top: 78px; background: url(../img/common/back07.png) right top / clamp(480px, calc(57.143vw + -137.14px), 960px) 40px repeat-y; padding: 0 24px }
.cmshtml .mysection05 { max-width: 1200px; margin: 0 auto; display: flex; align-items: center }
.cmshtml .mysection05 > div:nth-child(1) { width: clamp(270px, calc(19.167vw + 63px), 293px); padding-right: 80px }
.cmshtml .mysection05 > div:nth-child(2) { background-color: #ecf7fb; padding: 48px 0 57px 110px }
.cmshtml .mytitle03 { }
.cmshtml .mytitle03 h2 { color: #1a3e5c; letter-spacing: 0.14em; font-weight: 400; font-size: 30px; display: flex; justify-content: center; align-items: center; column-gap: 8px }
.cmshtml .mytitle03 h2::before { content: ''; display: inline-block; background: url(../img/common/icon04.png) left center no-repeat; width: 26px; height: 26px }
.cmshtml .mytitle03 h3 { color: rgba(90, 121, 147, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-top: 5px; text-align: center }
.cmshtml .mysection05btn { margin-top: 42px; text-align: right; padding-right: 16px }
.cmshtml .mysection05btn a { text-decoration: none; display: inline-block; background: url(../img/common/back03.png) right center / 6px 9px no-repeat; padding-right: 32px }
.cmshtml footer { max-width: 1248px; margin: 0 auto; padding: 0 24px; display: flex; justify-content: space-between }
.cmshtml :is(#footerinfo, #footermap) { width: 48.75% }
.cmshtml .mytitle04 { display: flex; align-items: center }
.cmshtml .mytitle04 h2 { color: #1a3e5c; letter-spacing: 0.1em; font-weight: 400; font-size: 24px; display: flex; justify-content: center; align-items: center; column-gap: 16px }
.cmshtml .mytitle04info h2::before { content: ''; display: inline-block; background: url(../img/common/icon05.png) left center no-repeat; width: 25px; height: 25px }
.cmshtml .mytitle04map h2::before { content: ''; display: inline-block; background: url(../img/common/icon07.png) left center no-repeat; width: 16px; height: 22px }
.cmshtml .mytitle04 h3 { color: rgba(90, 121, 147, 0.5); letter-spacing: 0.06em; font-weight: 400; font-size: 16px; margin-left: 24px }
.cmshtml #footerhours { margin-top: 9px }
.cmshtml #footerhours table { width: 100% }
.cmshtml #footerhours th { font-weight: 400; text-align: left; width: 23%; border-bottom: 1px solid #d6e3ed; padding: 14px 0 13px }
.cmshtml #footerhours td { text-align: center; color: #5a7993; border-bottom: 1px solid #d6e3ed; padding: 14px 0 13px }
.cmshtml #footerhours td:not(:last-child) { width: 11% }
.cmshtml #footernotice { margin-top: 16px; letter-spacing: 0.06em }
.cmshtml #footercontact { margin-top: 32px; display: flex; text-align: center }
.cmshtml #footercontactphone { width: 50%; background-color: #f8f8f8; padding: 15px 16px 17px }
.cmshtml #footercontactphone strong { color: #4c94d0; font-size: 22px; letter-spacing: 0.06em }
.cmshtml #footercontactphone i { font-style: normal; letter-spacing: 0.06em }
.cmshtml #footercontactphone a { display: block; padding: 10px; background-color: #fff; border: 1px solid rgb(var(--basecolor)); font-weight: 500; color: rgb(var(--basecolor)); text-decoration: none; transition: .3s; background: url(../img/common/back03.png) calc(100% - 17px) center / 6px 9px no-repeat }
.cmshtml #footercontactphone a:hover { opacity: .8; background-color: rgb(var(--basecolor)); color: #fff; background-image: url(../img/common/back04.png) }
.cmshtml #footercontactphone a u { display: inline-block; text-decoration: none; background: url(../img/common/icon06.png) left center no-repeat; padding-left: 23px }
.cmshtml #footercontactphone a:hover u { background: url(../img/common/icon01.png) left center no-repeat }
.cmshtml #footercontactqr { width: 50%; background-color: #ecf7fb; padding: 15px 16px 17px }
.cmshtml #footeraddress { letter-spacing: 0.06em; margin-top: 10px }
.cmshtml #footergmap { margin-top: 15px }
.cmshtml #footergmap iframe { width: 100% !important; height: 443px !important }
.cmshtml #footercopy { margin-top: 32px; background-color: #5a7993; color: #fff; font-size: 14px; text-align: center; padding: 10px 0 }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 12px 24px }
.cmshtml .largetac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 16px; right: 16px; display: none; background-color: rgb(var(--basecolor)); opacity: 0; transition: opacity 0.5s ease }
.cmshtml #pt a { color: #fff; text-decoration: none; display: block; padding: 14px }
.cmshtml #pt span { font-size: 20px; display: block }


/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { align-items: flex-start !important; padding: 10px 16px !important; background-color: #fff; width: clamp(642px, calc(93.333vw + -366px), 754px) }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { width: 100% !important; height: 104px !important; object-fit: cover !important; border-radius: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { width: 100% !important; flex: none !important; display: flex }
.cmshtml .mynewarticles .rdnewArticle-ContDate { width: 100px !important; font-size: 16px !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none !important; color: #2c2c2c !important }
.cmshtml .mynewarticles .rdnewArticle-ContLink:hover { opacity: .72 !important }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 12px !important; border-top: none !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 .rdListImageItem { width: 100%; height: 220px !important; object-fit: cover }
.cmshtml .rdListImageEmpty { background-color: #f8f8f8 }
.cmshtml .rdListImageItemDummy { border: none !important }
.cmshtml .rdpublishDate { font-size: 88% !important }
.cmshtml :is(.rdarticleTitleText, .rdRelatedArticles-title) { overflow: hidden; white-space: nowrap; text-overflow: ellipsis }
.cmshtml .rdarticleTitleText a { font-size: 88% !important; color: rgb(var(--textcolor)) }
.cmshtml .rdarticleTitle h3 { border-bottom: 3px solid rgb(var(--basecolor)) !important; font-size: 26px !important }
.cmshtml .rdListItem .rdarticleTitle h3 { font-size: 20px !important }
.cmshtml .rdListCategoryItem { background-color: rgba(0, 0, 0, .64) !important; padding: 2px 8px !important }
.cmshtml .ItemrdListTagListItem { padding: 2px 4px !important; margin-right: 4px !important }
.cmshtml .rdnewArticle { border: none !important; padding: 0 !important }
.cmshtml #myblogframe .rdnewArticle-item { padding: 8px 4px !important }
.cmshtml #myblogframe :is(.rdnewArticle-item + .rdnewArticle-item, .rdCategorylist-item + .rdCategorylist-item, .rdMonthlyArchive-item + .rdMonthlyArchive-item) { border-top: 1px solid rgb(var(--bordercolor)) !important }
.cmshtml .rdCategorylist-link { padding: 4px !important }
.cmshtml .rdarticlecalendar { font-size: 92%; width: 100% }
.cmshtml .rdCalendarBody { line-height: 1.3 }
.cmshtml .rdCalendarTable-link { color: #fff !important }
.cmshtml .rdMonthlyArchive-item { padding: 4px 4px 4px 14px !important; margin: 0 4px }
.cmshtml .rdTaglist-link { padding: 2px 4px !important; font-size: 88%; color: #0061c9 !important }
.cmshtml .rdTaglist-link:hover { color: #fff !important }
.cmshtml .rdBlogSearch-btn { padding: 0 8px !important; margin-left: 8px; color: #fff !important }
.cmshtml .rdRelatedArticles { width: calc(100% + 16px); transform: translateX(-8px) }
.cmshtml .rdRelatedArticles-item { border: 1px solid rgb(var(--bordercolor)); margin: 0 8px 24px; width: calc(33.3333% - 16px) !important }
.cmshtml .rdRelatedArticles-imageWrapper { border: none !important }
.cmshtml .rdRelatedArticles-image { width: 100%; height: 150px !important; object-fit: cover }
.cmshtml .rdRelatedArticles-title a { color: rgb(var(--textcolor)); text-decoration: none }
.cmshtml .rdRelatedArticles-title a:hover { opacity: .8 }
.cmshtml .rdReadMore { font-size: 88% }
}

.cmshtml .myfaq { display: grid; grid-template-columns: 1fr; grid-template-rows: auto 0fr; transition: .4s }
.cmshtml .myfaqopen { grid-template-rows: auto 1fr }
.cmshtml .myfaqq { }
.cmshtml .myfaqq p { display: inline-block; background-color: #4c94d0; color: #fff; position: relative; cursor: pointer; padding: 8px 16px; border-radius: 4px; transition: .3s }
.cmshtml .myfaqopen .myfaqq p { background-color: #5a7993 }
.cmshtml .myfaqq span { display: inline-block; transition: .4s; margin-left: 16px }
.cmshtml .myfaqa { position: relative; overflow-y: hidden; opacity: 0; transition: .6s }
.cmshtml .myfaqopen .myfaqa { opacity: 1; margin-top: 24px }
.cmshtml .myfaqrotate { transform: rotate(180deg) }

.cmshtml #footerhours .rdTableResizer { display: none !important }
.cmshtml #mydrawer { position: fixed; top: 0; bottom: 0; left: 0; width: 100%; background-color: rgba(0, 0, 0, 0); opacity: 0; pointer-events: none; color: #fff; 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, 0.72); opacity: 1; pointer-events: auto }
.cmshtml #mydrawerinner { width: 80%; background-color: #5a7993; transform: translateX(72%); transition: transform 0.6s ease }
.cmshtml #mydrawer.mydrawer-show #mydrawerinner { transform: translateX(0) }
.cmshtml .noscroll { overflow: hidden }
.cmshtml #mydrawernav { margin-top: 8px }
.cmshtml #mydrawernav a { display: block; padding: 7px 16px; color: #fff; text-decoration: none; border-bottom: 1px solid #6a869e; width: 100% }
.cmshtml #mydrawernav a strong { display: inline-block; font-weight: 400 }
.cmshtml #mydrawernav a i { display: inline-block; font-style: normal; font-size: 12px; margin-left: 8px; letter-spacing: 1px }
.cmshtml #mydrawericons { margin: 16px 0 0 16px; display: flex; column-gap: 8px }

.cmshtml #footergmap .rdiframewrapper { padding-top: 0 !important; height: auto !important; overflow: visible !important }


/* ブログ配色 */
.cmshtml #myblogcommon a { text-decoration: none; color: rgb(var(--textcolor)) }
.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: #09f }
.cmshtml #myblogcommon .rdYearlyArchive a:hover { color: #fff }
.cmshtml #myblogcommon .rdYearlyArchive-link { padding: 6px 16px }

/* パンくずリスト */
.cmshtml .rdBreadcrumb { }
.cmshtml .rdBreadcrumbItem { word-spacing: 4px; font-size: 88% }
.cmshtml .rdBreadcrumbItem:first-child::before { font-family: 'Font Awesome 6 Free'; content: '\f0da'; font-weight: 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: 'M PLUS Rounded 1c', sans-serif }
#editView :is(#headerfacebook, #mydrawericons) edit { padding: 16px }
#editView header { max-width: 100%; background-color: #5a7a93 }
#editView #globalnav { flex-wrap: wrap }
#editView #headerfacebook { width: auto; background-color: rgba(255, 255, 255, .32) }
#editView #mydrawerhambergerouter { display: none }
#editView #mydrawer { position: static; display: block; opacity: 1; pointer-events: auto }
#editView #mydrawerinner { width: 100%; transform: translateX(0) }
#editView #pt { position: static }
#editView .headertop { height: auto }
#editView #containerheader { background-color: #5a7a93 }
#editView #containermainvisual { position: static; margin-top: 24px }
#editView #mainvisualouter { overflow: hidden; padding-left: 0 }
#editView #mainvisual { overflow: hidden }
#editView #mainvisualcatch { position: static !important; margin-top: 24px }
#editView #containermainvisualinfo { position: static; margin-top: 24px }
#editView .mysection02cardimg > div::after { display: none }
#editView .mysection04cardimg > div::after { display: none }
#editView #containerpagetitle { position: static; background-color: #5a7993 }
#editView #contentsheader { position: static }
#editView .myfaq { grid-template-rows: auto 1fr }
#editView .myfaqa { opacity: 1; margin-top: 24px }

/* 共通装飾 */
/* 見出し */
.cmshtml .rdplanetitle h2 { font-size: clamp(28px, calc(0.567vw + 25.87px), 32px) !important; font-weight: 400 !important; letter-spacing: 0.14em; padding-top: 40px; text-align: center; background: url(../img/common/back09.png) center top no-repeat }
.cmshtml .rdplanetitle h3 { font-size: clamp(28px, calc(0.567vw + 25.87px), 32px) !important; font-weight: 400 !important; letter-spacing: 0.14em; padding: 48px 0 33px; text-align: center; background: url(../img/common/back11.png) center bottom no-repeat, url(../img/common/back10.png) center top no-repeat }
.cmshtml .rdplanetitle h4 { font-size: clamp(24px, calc(0.567vw + 21.87px), 28px) !important; font-weight: 400 !important; letter-spacing: 0.14em; padding-bottom: 8px; text-align: center; background: url(../img/common/back12.png) center bottom / 38px 2px no-repeat }
.cmshtml .rdplanetitle h5 { font-size: clamp(24px, calc(0.567vw + 21.87px), 28px) !important; font-weight: 400 !important; letter-spacing: 0.14em; padding: 8px 16px; text-align: center; border-style: solid; border-width: 1px 3px 1px 1px; border-color: #c3d4e3 #4c94d0 #c3d4e3 #c3d4e3; line-height: 1.3 }
.cmshtml .rdplanetitle h6 { font-size: clamp(20px, calc(0.567vw + 17.87px), 24px) !important; font-weight: 400 !important; letter-spacing: 0.14em; padding-left: 27px; background: url(../img/common/back13.png) left center no-repeat; border-bottom: 3px dotted #c3d4e3 }
.cmshtml .myheading01 dl { padding: 0 0 3px 28px; background: url(../img/common/back13.png) left center no-repeat; border-bottom: 1px dotted #c3d4e3; display: flex; align-items: center }
.cmshtml .myheading01 dt { display: inline-block; text-decoration: none; background-color: #4c94d0; color: #fff; border-radius: 4px; font-size: clamp(14px, calc(0.284vw + 12.94px), 16px); letter-spacing: 0; padding: 8px clamp(8px, calc(1.135vw + 3.74px), 16px); margin-right: clamp(8px, calc(1.135vw + 3.74px), 16px); line-height: 1 }
.cmshtml .myheading01 dd { font-size: clamp(20px, calc(0.567vw + 17.87px), 24px); display: inline-block; font-weight: 400; letter-spacing: 0.14em }
.cmshtml .myheading02 p { font-size: clamp(18px, calc(0.284vw + 16.94px), 20px) }
.cmshtml .myheading02 p::before { display: inline-block; content: '●'; font-weight: bold; color: #4c94d0; margin-right: 4px; letter-spacing: 0.06em }

/* 単体エリア・横並びエリア */
@media (max-width: 1079px) {
.cmshtml .box01 { max-width: 100% !important; padding: 0 3% !important }
.cmshtml .flex50 { flex: 0 1 50% !important }
}

/* リンク */
.cmshtml :is(.link01, .link03) a { display: inline-block }
.cmshtml :is(.link02, .link04) a { display: block; text-align: center }
.cmshtml :is(.link01, .link02) a { background: url(../img/common/back04.png) calc(100% - 17px) center / 6px 9px no-repeat }
.cmshtml :is(.link03, .link04) a { background: url(../img/common/back03.png) calc(100% - 17px) center / 6px 9px no-repeat }
.cmshtml :is(.link01, .link02) a { padding: 9px 80px; background-color: rgb(var(--basecolor)); border: 1px solid rgb(var(--basecolor)); font-weight: 500; color: #fff; text-decoration: none; transition: .3s }
.cmshtml :is(.link03, .link04) a { padding: 9px 80px; background-color: #fff; border: 1px solid rgb(var(--basecolor)); font-weight: 500; color: rgb(var(--basecolor)); text-decoration: none; transition: .3s }
.cmshtml :is(.link01, .link02) a:hover { opacity: .8; background-color: #fff; color: rgb(var(--basecolor)); background-image: url(../img/common/back03.png) }
.cmshtml :is(.link03, .link04) a:hover { opacity: .8; background-color: rgb(var(--basecolor)); color: #fff; background-image: url(../img/common/back04.png) }
.cmshtml :is(.link01, .link02, .link03, .link04) a { letter-spacing: 0.06em }

/* ボーダーありテーブル */
.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 }
}