@charset "utf-8";

@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('/data/common/c2101a075801/css/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'), url('/data/common/c2101a075801/css/fontawesome/webfonts/fa-solid-900.ttf') format('truetype') }

:root { --basecolor: 255, 216, 33 }
:root { --textcolor: 0, 0, 0 }
:root { --bordercolor: 221, 221, 221 }
:root { --blogcolor: 64, 64, 64 }

.cmshtml { scroll-behavior: smooth }
.cmshtml * { box-sizing: border-box }
.cmshtml body { margin: 0; background-color: #fff; color: #000; line-height: 1.732; font-size: clamp(15px, 1.1111vw, 17px); font-family: 'Noto Sans JP', sans-serif }
.cmshtml p { margin: 0 }
.cmshtml a { color: #000 }
.cmshtml a:hover { color: #666 }
.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(input[type='submit']) { transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Sans JP', sans-serif; border: 2px solid rgb(var(--basecolor)) !important; color: #000; background: rgb(var(--basecolor)) !important }
.cmshtml :is(button[type='submit'], input[type='submit']):hover { color: rgb(var(--basecolor)) !important; background: #fff !important; box-shadow: none !important }
.cmshtml button[type='reset'], .rdcontact_btn_back { border: 3px solid #ccc !important; background: #fff !important; margin-right: 8px; transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Sans JP', sans-serif; font-weight: 500; color: #999 !important }
.cmshtml button[type='reset']:hover, .rdcontact_btn_back:hover { opacity: .64; box-shadow: none !important }
.cmshtml form dl { background-color: rgb(250, 249, 244); border: 1px solid rgb(239, 237, 222); border-radius: 8px; padding: 8px 16px !important }
.cmshtml form dt { margin-bottom: 4px !important; font-size: 92% }
.cmshtml .contact_item_title::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\00a0' }
.cmshtml form dt span { color: #fff; font-weight: 400; font-size: 75%; line-height: 1.1; padding: 1px 4px 3px; border-radius: 4px; border: none; background-color: #f90; display: inline-block; margin-left: 8px }
.cmshtml form dd { margin-top: 12px }
.cmshtml textarea { width: calc(100% - 14px) }
.cmshtml .contact_item_title:not(:first-child) { margin-top: 16px !important }
.cmshtml caption { caption-side: bottom; font-size: 88%; margin-top: 8px; color: #777 }
.cmshtml figure img { max-width: 100% }
.cmshtml figcaption { text-align: center; font-size: 88%; margin-top: 8px }
.cmshtml table { border-collapse: collapse }
.cmshtml iframe { border: none }

@keyframes myFadein { 0% { opacity: 0 }
100% { opacity: 1 }
}
.cmshtml .myfadein { animation: myFadein 3s ease 0s }
.cmshtml .rdsp-buttons { display: none }

.cmshtml #mydrawer { position: fixed; width: 100vw; top: 0; bottom: 0; background-color: rgba(0, 0, 0, .72); color: #fff; overflow-y: auto; display: flex; justify-content: flex-end; font-size: 93.3333% }
.cmshtml .mydrawer-hide { right: -100vw; transition: .6s }
.cmshtml .mydrawer-show { right: 0 !important; transition: .6s }
.cmshtml .noscroll { overflow: hidden }
.cmshtml #mydrawerinner { width: 76%; max-width: 400px; padding-top: 56px !important }
.cmshtml #mydrawercontact { padding: 16px; background-color: #222 }
.cmshtml #mydrawercontact > div:not(:first-child) { margin-top: 16px }
.cmshtml #mydrawercontact a { display: flex; align-items: center; color: #000; text-decoration: none; border: 1px solid rgba(255, 255, 255, .24); background-color: rgb(var(--basecolor)); border-radius: 4px; padding: 2px 8px; width: 100%; font-weight: 500 }
.cmshtml .mydrawercontactphone a::before { display: inline-block; font-family: 'Font Awesome 6 Free'; content: '\f3cd'; width: 26px; font-size: 120%; text-align: center; font-weight: bold }
.cmshtml .mydrawercontactmail a::before { display: inline-block; font-family: 'Font Awesome 6 Free'; content: '\f0e0'; width: 26px; font-size: 120%; text-align: center; padding-top: 3px }
.cmshtml .mydrawercontacttext { font-size: 13px; margin-top: 4px !important; padding-left: 16px }
.cmshtml #mydrawernav { padding: 8px 0 16px; background-color: #222 }
.cmshtml #mydrawernav a { display: flex; align-items: center; padding: 7px 16px; color: #fff; text-decoration: none; border-bottom: 1px solid #444; width: 100% }
.cmshtml .mydrawernavparent a::before { font-family: 'Font Awesome 6 Free'; content: '\f054\2002'; font-size: 64%; padding-top: 3px; display: inline-block; font-weight: bold }
.cmshtml .mydrawernavchild a::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\2002'; font-size: 64%; padding: 3px 0 0 16px; display: inline-block; font-weight: bold }
.cmshtml #mydrawersearch { padding: 8px 16px; background-color: #222 }
.cmshtml #mydrawersearchinner { background-color: #fff; border: none; border-radius: 80px; padding: 0 16px }
.cmshtml #mydrawersearchinner .rdSiteSearch-input { background-color: transparent !important; border: none !important; width: auto !important; font-size: 16px; font-weight: 550; line-height: 1; padding: 7px 0 !important }
.cmshtml #mydrawersearchinner .rdSiteSearch-btn { background-color: transparent !important; padding: 0 !important; color: #000 !important; border: none !important; background-image: url(../img/common/back18.png) !important; background-repeat: no-repeat !important; background-position: center center !important; background-size: 20px 20px !important; width: 32px }
.cmshtml #mydrawersns { display: flex; column-gap: 10px; padding: 16px; background-color: #222 }
.cmshtml #mydrawersns > div { width: 28px !important }
.cmshtml #mydrawersns img { max-width: 100% }

/* パンくずリスト */
.cmshtml .rdBreadcrumb { }
.cmshtml .rdBreadcrumbItem { word-spacing: 4px; font-size: 88% }
.cmshtml .rdBreadcrumbItem:first-child::before { font-family: 'Font Awesome 6 Free'; content: '\f0da'; font-weight: 700 }
.cmshtml .rdBreadcrumbArrow { color: #999 }
.cmshtml .rdBreadcrumbLink { text-decoration: none; color: #333 }
.cmshtml .rdBreadcrumbLink:hover { color: #777 }


@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 header { position: sticky; top: 0; display: flex; justify-content: space-between; align-items: center; padding: 12px 20px 12px 16px; background-color: rgb(var(--basecolor)); z-index: 999 }
.cmshtml #headerlogo { width: 160px }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #headerouter { display: none }
.cmshtml #containermainvisual { position: relative }
.cmshtml #mainvisual img { width: 100%; height: 280px !important; object-fit: cover }
.cmshtml #mainvisualmask { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .48); display: flex; justify-content: center; align-items: center }
.cmshtml #mainvisualmask > div { width: 64% !important; max-width: 320px; text-align: center }
.cmshtml #mainvisualmask img { max-width: 100% }
.cmshtml #containerpagetitle { position: relative }
.cmshtml #pagetitleimg img { width: 100%; height: clamp(160px, 26.6666vw, 240px) !important; object-fit: cover }
.cmshtml #pagetitleouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .56); display: flex; justify-content: center; align-items: center; border-bottom: 5px solid rgba(255, 255, 255, .32) }
.cmshtml #pagetitle { color: #fff; text-align: center; text-shadow: 1px 1px 1px #000 }
.cmshtml #pagetitlee { font-family: 'Sofia Sans', sans-serif; font-size: clamp(38px, 6.2666vw, 56px); font-weight: 800; line-height: 1 }
.cmshtml #pagetitlej { font-size: clamp(19px, 2.8666vw, 24px); font-weight: 500 }
.cmshtml #maincontents { margin: 32px 0 }
.cmshtml .containermysection01 { padding: 40px 16px; background-color: #e5e5e5 }
.cmshtml .mysection01 { }
.cmshtml .mytitle01 { text-align: center }
.cmshtml .mytitle01 h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(36px, 4.2666vw, 48px); font-weight: 800; line-height: 1 }
.cmshtml .mytitle01 h2 { font-size: clamp(16px, 2.2666vw, 18px); font-weight: 600 }
.cmshtml .mysection01slide { margin-top: 11px; animation: myFadein 2s ease 0s }
.cmshtml #wrapper .mysection01slide img { max-width: 98% !important }
.cmshtml .containermysection02 { background-image: url(../img/common/back06.jpg); background-repeat: no-repeat; background-position: center center; padding: 56px 16px; background-size: cover }
.cmshtml .mysection02 { }
.cmshtml .mysection02inner img { max-width: 560px; width: 80% !important }
.cmshtml .mysection02title { margin: 16px 0 }
.cmshtml .mysection02title h2 { font-size: 20px; color: #ce1800; font-weight: 800; line-height: 1.5 }
.cmshtml .mysection02title h2 br { display: none }
.cmshtml .mysection02text { font-weight: 500 }
.cmshtml .mysection02text br { display: none }
.cmshtml .mysection02 > div:nth-child(2) { margin-top: 32px; text-align: center }
.cmshtml .mysection02img img { max-width: 92%; box-shadow: 12px 12px 0 rgba(0, 0, 0, .12) }
.cmshtml .containermysection03 { background-color: #010101; padding: 56px 0 }
.cmshtml .mysection03titleouter { padding: 0 16px }
.cmshtml .mysection03title { border-bottom: 1px solid #fff; display: flex; justify-content: space-between; align-items: center; padding-bottom: 8px }
.cmshtml .mysection03titleinner { }
.cmshtml .mysection03titleinner h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(40px, 6.9333vw, 64px); font-weight: 800; line-height: 1; color: #fff }
.cmshtml .mysection03titleinner h2 { font-size: 17px; font-weight: 600; color: #fff; line-height: 2 }
.cmshtml .mysection03titlebtn { }
.cmshtml .mysection03titlebtn a { display: inline-block; text-decoration: none; color: #000; background-color: #fff; border: none; border-radius: 80px; font-size: 17px; font-weight: 700; padding: 8px 16px }
.cmshtml .mysection03titlebtn a:hover { opacity: .8 }
.cmshtml .mysection03slide { margin-top: 56px }
.cmshtml #wrapper .mysection03slidebox { margin: 0 12px !important; width: auto !important }
.cmshtml #wrapper .mysection03slideboxinner { max-width: 384px !important; background-color: #fff; padding: 12px !important; margin: 0 auto }
.cmshtml .mysection03slidebox img { max-width: 100% }
.cmshtml .mysection03slidetitle { margin-top: 8px }
.cmshtml .mysection03slidetitle strong { display: inline-block; color: #fff; background-color: #000; font-size: 13px; font-weight: 600; padding: 0 8px }
.cmshtml .mysection03slidetext { font-size: 13px; margin-top: 4px; font-weight: 500 }
.cmshtml .containermysection04 { padding: 56px 16px; background-image: url(../img/common/back08.jpg); background-repeat: no-repeat; background-position: center top; background-color: #eaeaea; background-size: cover }
.cmshtml .containermysection0401 { position: relative }
.cmshtml .mysection0401 { border: 5px solid #f9da44; border-radius: 32px; background-color: rgba(230, 230, 230, 0.88); padding: 40px 24px 24px }
.cmshtml .mysection0401title { text-align: center; background-image: url(../img/common/back12.png); background-repeat: no-repeat; background-position: center bottom; padding-bottom: 8px }
.cmshtml .mysection0401title h3 { font-family: 'Sofia Sans', sans-serif; font-size: 24px; font-weight: 800; line-height: 1 }
.cmshtml .mysection0401title h2 { font-size: 30px; font-weight: 900; line-height: 1.6 }
.cmshtml .mysection0401text { font-weight: 600; text-align: center; margin-top: 12px; font-size: 17px }
.cmshtml .mysection0401banners { display: flex; flex-wrap: wrap; margin: 24px auto 0; justify-content: center; gap: 24px }
.cmshtml .mysection0401banners > div { max-width: 320px; width: 100%; margin-bottom: 24px; background-color: #fff; border: none; border-radius: 16px; overflow: hidden; padding-bottom: 16px }
.cmshtml .mysection04bannertitle { background-color: #ffd821; text-align: center; color: #000; font-size: 20px; font-weight: 700; padding: 8px }
.cmshtml .mysection04bannertext { text-align: center; font-weight: 700; padding: 8px 16px 0; font-size: 17px }
.cmshtml .mysection04bannertext :is(em, i) { font-style: normal; font-size: 12px; font-weight: 400 }
.cmshtml #wrapper .mysection04bannernumouter { padding: 0 16px !important; text-align: center }
.cmshtml .mysection04bannernumouter > div:nth-child(1) img { max-width: 161px; width: 48% }
.cmshtml .mysection04bannernumouter > div:nth-child(2) { }
.cmshtml .mysection04bannernum { }
.cmshtml .mysection04bannernum > div:nth-child(1) { font-weight: 800; font-size: 48px; line-height: 1; display: inline-block }
.cmshtml .mysection04bannernum .mycount { display: inline-block; background-image: url(../img/common/back13.png); background-repeat: repeat-x; background-position: left bottom; width: auto !important }
.cmshtml .mysection04bannernum > div:nth-child(2) { font-weight: 700 }
.cmshtml .mysection0401mask { display: none }
.cmshtml .containermysection0402 { margin-top: 56px }
.cmshtml .mysection0402 { border: 5px solid #f9da44; border-radius: 32px; background-color: rgba(230, 230, 230, 0.88); padding: 0 24px 32px }
.cmshtml .mysection0402inner { }
.cmshtml .mysection0402title { text-align: center; margin-top: -24px }
.cmshtml .mysection0402title h2 { display: inline-block; min-width: 88%; background-color: #f9da44; font-size: clamp(24px, 3.7333vw, 32px); font-weight: 800; border: none; border-radius: 16px; padding: 8px 24px; line-height: 1.5 }
.cmshtml .mysection0402title > div:nth-child(2) { font-weight: 600; font-size: 17px; margin-top: 24px }
.cmshtml .mysection0402banners { display: flex; flex-wrap: wrap; gap: 24px; justify-content: center; margin-top: 24px }
.cmshtml .mysection0402banners > div { width: calc(100% - 18px); max-width: 278px; background-color: #fff; border: none; border-radius: 12px; padding: 16px; text-align: center }
.cmshtml .mysection0402bannerimg img { max-width: 100% }
.cmshtml .mysection0402bannertitle { font-size: clamp(19px, 1.3666vw, 22px); font-weight: 700; margin: 10px 0 13px }
.cmshtml .mysection0402bannerbtn a { display: inline-block; text-decoration: none; color: #000; background-color: #f9da44; font-size: 13px; font-weight: 600; border: none; border-radius: 80px; padding: 6px 13px }
.cmshtml .containermysection0403 { margin-top: 56px }
.cmshtml .mysection0403 { border: 5px solid #f9da44; border-radius: 32px; background-color: rgba(230, 230, 230, 0.88); padding: 0 24px 32px }
.cmshtml .mysection0403slide { margin-top: 24px }
.cmshtml .mysection0403slide img { max-width: 100% }
.cmshtml .containermysection05 { background-color: #ffd821; padding: 32px 16px 48px }
.cmshtml .mysection05 { }
.cmshtml .mysection05title { border-bottom: 1px solid #000; padding-bottom: 8px }
.cmshtml .mysection05title h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(40px, 6.9333vw, 64px); font-weight: 800; line-height: 1; color: #000 }
.cmshtml .mysection05title h2 { font-size: 17px; font-weight: 600; color: #000; line-height: 2 }
.cmshtml .mysection05banners { margin-top: 40px; display: flex; flex-wrap: wrap; row-gap: 24px; column-gap: 8px; justify-content: center }
.cmshtml .mysection05banners > div { padding-bottom: 16px }
.cmshtml .mysection05banners > div:not(:last-child) { max-width: 152px; padding-right: 15px }
.cmshtml .mysection05banners > div:not(:last-child):nth-child(odd) { background-image: url(../img/common/back14.png); background-repeat: no-repeat; background-size: 100% }
.cmshtml .mysection05banners > div:not(:last-child):nth-child(even) { background-image: url(../img/common/back15.png); background-repeat: no-repeat; background-size: 100% }
.cmshtml .mysection05banners > div:last-child { max-width: 137px; background-color: #efefef; margin-right: 15px }
.cmshtml #wrapper .mysection05bannernum { padding-left: 3px; font-size: 40px; font-weight: 900; line-height: 1; margin-top: -18px !important }
.cmshtml .mysection05bannertitle { text-align: center; font-weight: 800; font-size: clamp(16px, 1.1333vw, 18px) }
.cmshtml .mysection05bannerimg { padding: 0 8px; text-align: center }
.cmshtml .mysection05bannerimg img { max-width: 100% }
.cmshtml .mysection05bannertext { padding: 0 8px; font-size: 12px; font-weight: 700; line-height: 1.5 }
.cmshtml .containermysection06 { background-image: url(../img/common/back16.jpg); background-repeat: no-repeat; background-position: center center; padding: 56px 16px 40px }
.cmshtml .mysection06 { text-align: center }
.cmshtml .mysection06title h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(40px, 6.9333vw, 64px); font-weight: 800; line-height: 1; color: #fff }
.cmshtml .mysection06title h2 { font-size: 20px; font-weight: 700; color: #fff }
.cmshtml .mysection06btn { margin-top: 24px; margin-bottom: 32px }
.cmshtml .mysection06btn a { display: inline-block; text-decoration: none; color: #000; background-color: #fff; border: none; border-radius: 80px; font-size: 20px; font-weight: 700; padding: 12px 64px; background-image: url(../img/common/back07.png); background-repeat: no-repeat; background-position: 92% center; background-size: 10px 20px; min-height: 20px }
.cmshtml .mysection06 img { max-width: 32% !important }
.cmshtml .containermysection07 { background-color: #010101; padding: 64px 16px }
.cmshtml .mysection07 { text-align: center }
.cmshtml .mysection07text { font-size: 20px; font-weight: 500; color: #fff; margin: 20px 0 32px }
.cmshtml .mysection07btn { margin-bottom: 40px }
.cmshtml .mysection07btn a { display: inline-block; text-decoration: none; color: #000; background-color: #ffd821; border: none; border-radius: 80px; font-size: 20px; font-weight: 700; padding: 12px 64px; background-image: url(../img/common/back07.png); background-repeat: no-repeat; background-position: 92% center; background-size: 10px 20px; min-height: 20px }
.cmshtml .mysection07img img { max-width: 100% }
.cmshtml .containermysection08 { background-image: url(../img/common/back17.jpg); background-repeat: no-repeat; background-position: center center; background-size: cover; padding: 40px 16px 72px }
.cmshtml .mysection0801outer { }
.cmshtml .mysection0801 { background-color: #fff; padding: 40px 24px 24px; border: none; border-radius: 24px; text-align: center }
.cmshtml .mysection0801 img { max-width: 80% }
.cmshtml .mysection0801text { font-size: 14px; margin-top: 16px; font-weight: 600 }
.cmshtml .mysection0801banners { margin-top: 24px }
.cmshtml .mysection0801banners > div { margin-bottom: 16px }
.cmshtml .mysection0802outer { margin-top: 40px }
.cmshtml .mysection0802 { background-color: #fff; padding: 40px 24px 24px; border: none; border-radius: 24px }
.cmshtml .mysection0802title { border-bottom: 1px solid #084aaa; display: flex }
.cmshtml .mysection0802title h3 { font-family: 'Sofia Sans', sans-serif; font-size: 40px; font-weight: 800; line-height: 1; color: #084aaa }
.cmshtml .mysection0802title h2 { font-size: 17px; font-weight: 600; color: #084aaa; margin-left: 12px; line-height: 2.6 }
.cmshtml .mynewarticles { margin-top: 24px }
.cmshtml #containerfooternav { display: none }
.cmshtml footer { margin: 40px 16px 24px; font-weight: 600 }
.cmshtml #footerlogo { margin-bottom: 12px; text-align: center }
.cmshtml #footerlogo img { max-width: 88% }
.cmshtml #footerinfo { text-align: center }
.cmshtml #footeraddress { margin-top: 24px; text-align: center }
.cmshtml .footeraddresstrow { margin-bottom: 16px }
.cmshtml .footeraddresscell { }
.cmshtml .footeraddresscell strong { display: inline-block; background-color: #000; color: #fff; font-weight: 400; font-size: 14px; padding: 0 8px; white-space: nowrap }
.cmshtml #footercopyright { text-align: center; font-size: 80%; margin: 24px 0 16px }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 8px 16px }
.cmshtml .smalltac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 0; right: 16px; display: none; width: 40px; height: 40px; background-color: rgb(var(--basecolor)); text-align: center; padding-top: 8px; opacity: 0; transition: opacity 0.5s ease }
.cmshtml #pt a { color: #fff; text-decoration: none }
.cmshtml #pt span { font-size: 26px; display: block }
.cmshtml #mydrawerhambergerouter { position: relative; z-index: 9999; width: 24px; margin-top: -8px }
.cmshtml #mydrawertoggle { display: none }
.cmshtml #mydrawerhamberger { display: block; cursor: pointer }
.cmshtml #mydrawerhamberger span { display: block; background-color: #000; transition: .4s; transform-origin: 0; width: 32px; height: 4px; margin-top: 6px }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(1) { transform: translate(4px, 0) rotate(45deg) }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(2) { opacity: 0 }
.cmshtml #mydrawertoggle:checked + #mydrawerhamberger span:nth-child(3) { transform: translate(4px, 3px) rotate(-45deg) }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { align-items: flex-start !important; padding: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { width: 100% !important; display: block !important; padding: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-ContDate { width: 100% !important; color: #084aaa; font-size: 15px !important; font-style: italic !important; padding-top: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 8px !important; padding-top: 8px !important; border-top: 1px solid #ddd !important }
.cmshtml .mynewarticles .rdnewArticle-item:last-child { padding-bottom: 8px !important; border-bottom: 1px solid #ddd !important }

/* ブログ */
.cmshtml #myblogframe { margin: 32px 16px 0 }
.cmshtml #myblogmain { }
.cmshtml #myblogcommon { margin: 40px 8px 0 }
.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: #000 !important }
.cmshtml .rdRelatedArticles { width: calc(100% + 16px); transform: translateX(-8px) }
.cmshtml .rdRelatedArticles-item { border: 1px solid rgb(var(--bordercolor)); margin: 0 8px 24px; width: calc(50% - 16px) !important; padding: 8px !important }
.cmshtml .rdRelatedArticles-imageWrapper { border: none !important; height: 96px !important; margin-bottom: 4px !important }
.cmshtml .rdRelatedArticles-image { width: 100%; height: 96px !important; object-fit: cover }
.cmshtml .rdRelatedArticles-title a { color: rgb(var(--textcolor)); text-decoration: none }
.cmshtml .rdRelatedArticles-title a:hover { opacity: .8 }
.cmshtml :is(.rdRelatedArticles-catlink, .rdRelatedArticles-taglink) { padding: 3px 4px !important }
.cmshtml .rdReadMore { font-size: 88% }

.cmshtml .mycontactboxnumber { margin: 12px 0 }
.cmshtml .mycontactboxnumber strong { display: inline-block; font-family: 'Montserrat', sans-serif; font-weight: 600; font-size: 30px; letter-spacing: 1px; line-height: 1.1; background-image: url(../img/common/back11.png); background-repeat: no-repeat; background-position: left center; padding-left: 44px }
.cmshtml .mystepbox { }
.cmshtml .mystepbox > div:nth-child(1) { }
.cmshtml .mystepbox > div:nth-child(2) { margin-top: 24px; text-align: center }
.cmshtml .mystepbox dl { display: flex; align-items: center; margin-bottom: 8px }
.cmshtml .mystepbox dt { padding: 2px 4px; border-radius: 4px; color: #fff; font-weight: 900; font-size: 14px; background-color: #000; border: none }
.cmshtml .mystepbox dd { margin-left: 10px; font-weight: 600; font-size: 18px }
.cmshtml .mystepbox img { max-width: 100% }
.cmshtml .mystepboxarrow img { max-width: 24% }
.cmshtml .mybabox { }
.cmshtml .mybabox > :is(div:nth-child(1), div:nth-child(3)) { margin: 0 !important }
.cmshtml .mybabox > :is(div:nth-child(1), div:nth-child(3)) img { max-width: 100% }
.cmshtml .mybabox > :is(div:nth-child(1), div:nth-child(3)) > div { margin-top: 10px }
.cmshtml .mybabox > div:nth-child(2) { text-align: center; margin: 24px 0 16px !important }
.cmshtml .mybabox > div:nth-child(2) img { max-width: 24% }
.cmshtml .mytitle02 dt { font-family: 'Sofia Sans', sans-serif; font-size: clamp(36px, 4.2666vw, 48px); font-weight: 800; line-height: 1 }
.cmshtml .mytitle02 dd { font-size: clamp(16px, 2.2666vw, 18px); font-weight: 600 }
}

@media (max-width: 767px) {
.cmshtml #mydrawerhamberger { transform: scale(.9) }
.cmshtml #mydrawerinner { padding-top: 40px }
}

@media (min-width: 1080px) {
.cmsbody { }
.cmshtml :is(h1, #mydrawerhambergerouter, #mydrawer, .smallonly) { display: none }
.cmshtml #wrapper { position: relative; max-width: 1920px; margin: 0 auto }
.cmshtml header { position: sticky; top: 0; display: flex; justify-content: space-between; align-items: center; max-width: 1920px; margin: 0 auto; padding: 16px 40px; overflow: visible; background-color: rgb(var(--basecolor)); z-index: 999 }
.cmshtml #headerlogo { }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #headerouter { margin-left: 40px }
.cmshtml #globalnav { display: flex; justify-content: flex-end; column-gap: clamp(14px, 1.1vw, 19px); flex-wrap: wrap }
.cmshtml #globalnav a { text-decoration: none; font-weight: 600; color: #000; font-size: clamp(16px, 1.1666vw, 19px); transition: .3s }
.cmshtml #globalnav a:hover { opacity: .56 }
.cmshtml #headerinner { display: flex; justify-content: flex-end; align-items: center; margin-top: 10px; flex-wrap: wrap }
.cmshtml #headerphoneouter { }
.cmshtml #wrapper #headerphone { font-size: 32px; font-weight: 700; letter-spacing: 1px; background-image: url(../img/common/back01.png); background-repeat: no-repeat; background-position: left center; background-size: 46px 36px; padding-left: 55px !important; min-height: 36px; line-height: 1.1; white-space: nowrap }
.cmshtml #headerphonetext { text-align: right; font-size: 12px; font-weight: 600; line-height: 1.2 }
.cmshtml #headerfunc { display: flex }
.cmshtml #headercategory { margin: 6px 0 0 24px }
.cmshtml #headercatbtn { cursor: pointer; background-color: #000; color: #fff; font-weight: 500; font-size: 16px; padding: 3px 44px; border: none; border-radius: 80px; background-image: url(../img/common/back02.png); background-repeat: no-repeat; background-position: 15px center; background-size: 14px 12px }
.cmshtml #headercatdata { display: flex; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; background-color: #eee; padding: 30px 20px; position: absolute; margin-top: 28px; box-shadow: 5px 5px 8px rgba(0, 0, 0, .48) }
.cmshtml #headercatdata.visible { opacity: 1; visibility: visible }
.cmshtml #headercatparents { }
.cmshtml #headercatparents > div { cursor: pointer; font-size: 18px; font-weight: 500; border-bottom: 2px solid #909090; padding: 8px 32px 8px 0; background-image: url(../img/common/back03.png); background-repeat: no-repeat; background-position: right center; background-size: 16px 16px; white-space: nowrap; margin-bottom: 5px; transition: .3s; color: #000 }
.cmshtml #headercatparents .parenthover { color: #1055b4 !important; border-bottom-color: #1055b4 !important; background-image: url(../img/common/back04.png) !important }
.cmshtml #headercatchild { }
.cmshtml #headercatchildren { display: none }
.cmshtml .catchildouter { border-left: 1px solid #dbdbdb; padding-left: 20px !important; margin-left: 36px; display: flex; flex-flow: column; justify-content: space-between; row-gap: 40px; height: 100% !important }
.cmshtml .catchildheader { color: #1055b4; font-size: 22px; font-weight: 600; border-bottom: 1px solid #1055b4; padding-bottom: 6px; margin-bottom: 12px }
.cmshtml .catchild { }
.cmshtml .catchild a { display: block; text-decoration: none; color: #000; font-weight: 500; padding: 4px 32px 4px 0; border-bottom: 1px solid #c0c0c0; margin-top: 5px; transition: .3s; background-repeat: no-repeat; background-position: right center }
.cmshtml .catchild a:hover { color: #1055b4; background-image: url(../img/common/back05.png); opacity: .8 }
.cmshtml #headersearch { margin: 6px 0 0 17px }
.cmshtml #headersearchinner { background-color: #fff; border: none; border-radius: 80px; padding: 0 16px }
.cmshtml #headersearchinner .rdSiteSearch-input { background-color: transparent !important; border: none !important; width: 175px !important; font-size: 16px; font-weight: 550; line-height: 1; padding: 7px 0 !important }
.cmshtml #headersearchinner .rdSiteSearch-btn { background-color: transparent !important; padding: 0 !important; color: #000 !important; border: none !important; background-image: url(../img/common/back18.png) !important; background-repeat: no-repeat !important; background-position: center center !important; background-size: 20px 20px !important; width: 32px }
.cmshtml #headericons { display: flex; column-gap: 20px; margin: 6px 0 0 24px }
.cmshtml #headericons img { width: 28px; height: 28px }
.cmshtml #containermainvisual { position: relative }
.cmshtml #mainvisual img { max-width: 100% }
.cmshtml #mainvisualmask { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .48); display: flex; justify-content: center; align-items: center }
.cmshtml #mainvisualmask > div { max-width: 677px; width: 35.2604% }
.cmshtml #mainvisualmask img { max-width: 100% }
.cmshtml #containerpagetitle { position: relative }
.cmshtml #pagetitleimg img { max-width: 100% }
.cmshtml #pagetitleouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .56); display: flex; justify-content: center; align-items: center; border-bottom: 8px solid rgba(255, 255, 255, .32) }
.cmshtml #pagetitle { color: #fff; text-align: center; text-shadow: 1px 1px 1px #000 }
.cmshtml #pagetitlee { font-family: 'Sofia Sans', sans-serif; font-size: clamp(64px, 5.0666vw, 88px); font-weight: 800; line-height: 1 }
.cmshtml #pagetitlej { font-size: clamp(26px, 1.9333vw, 32px); font-weight: 500 }
.cmshtml #maincontents { margin: 56px 0 }
.cmshtml .containermysection01 { padding: 56px 24px 78px; background-color: #e5e5e5 }
.cmshtml .mysection01 {  }
.cmshtml .mytitle01 { text-align: center }
.cmshtml .mytitle01 h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(56px, 4vw, 64px); font-weight: 800; line-height: 1 }
.cmshtml .mytitle01 h2 { font-size: clamp(18px, 1.2666vw, 20px); font-weight: 600 }
.cmshtml .mysection01slide { margin-top: 11px; animation: myFadein 2s ease 0s }
.cmshtml .mysection01slide .slick-slide { display: flex; justify-content : center }
.cmshtml #wrapper .mysection01slide img { max-width: 98% !important }
.cmshtml .containermysection02 { background-image: url(../img/common/back06.jpg); background-repeat: no-repeat; background-position: center center; padding: 84px 24px 116px }
.cmshtml .mysection02 { max-width: 1248px; margin: 0 auto; display: flex; justify-content: space-between }
.cmshtml .mysection02 > div:nth-child(1) { width: 50.4007%; padding: 0 30px }
.cmshtml .mysection02inner img { max-width: 100% }
.cmshtml .mysection02title { margin: 21px 0 32px }
.cmshtml .mysection02title h2 { font-size: 26px; color: #ce1800; font-weight: 800; line-height: 1.5; letter-spacing: 1px }
.cmshtml .mysection02text { font-weight: 700 }
.cmshtml .mysection02 > div:nth-child(2) { width: 49.5993%; padding-top: 40px }
.cmshtml .mysection02img img { max-width: 100%; box-shadow: 18px 18px 0 rgba(0, 0, 0, .12) }
.cmshtml .containermysection03 { background-color: #010101; padding: 72px 0 94px }
.cmshtml .mysection03titleouter { padding: 0 24px }
.cmshtml .mysection03title { max-width: 1201px; margin: 0 auto; border-bottom: 1px solid #fff; display: flex; justify-content: space-between; align-items: center }
.cmshtml .mysection03titleinner { display: flex; align-items: flex-end }
.cmshtml .mysection03titleinner h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(72px, 5.3333vw, 88px); font-weight: 800; line-height: 1; color: #fff }
.cmshtml .mysection03titleinner h2 { font-size: clamp(18px, 1.2666vw, 20px); font-weight: 600; color: #fff; line-height: 2.6; margin-left: 24px }
.cmshtml .mysection03titlebtn { }
.cmshtml .mysection03titlebtn a { display: inline-block; text-decoration: none; color: #000; background-color: #fff; border: none; border-radius: 80px; font-size: 20px; font-weight: 700; padding: 14px 63px 14px 69px; background-image: url(../img/common/back07.png); background-repeat: no-repeat; background-position: 92% center; background-size: 10px 20px; min-height: 20px; transition: .3s }
.cmshtml .mysection03titlebtn a:hover { opacity: .8 }
.cmshtml .mysection03slide { margin-top: 56px }
.cmshtml .mysection03slidebox { margin: 0 12px }
.cmshtml #wrapper .mysection03slideboxinner { max-width: 384px !important; background-color: #fff; padding: 12px !important; margin: 0 auto }
.cmshtml .mysection03slidebox img { max-width: 100% }
.cmshtml .mysection03slidetitle { margin-top: 8px }
.cmshtml .mysection03slidetitle strong { display: inline-block; color: #fff; background-color: #000; font-size: 13px; font-weight: 600; padding: 0 8px }
.cmshtml .mysection03slidetext { font-size: 13px; margin-top: 4px; font-weight: 500 }
.cmshtml .mysection03slide a { transition: .3s; left: 12px !important; right: 12px !important }
.cmshtml .mysection03slide a:hover { background-color: rgba(255, 255, 255, .24) }
.cmshtml .containermysection04 { padding: 80px 24px 128px; background-image: url(../img/common/back08.jpg); background-repeat: no-repeat; background-position: center top; background-color: #eaeaea }
.cmshtml .containermysection0401 { position: relative }
.cmshtml .mysection0401 { max-width: 1288px; margin: 0 auto; border: 8px solid #f9da44; border-radius: 56px; background-color: rgba(230, 230, 230, 0.88); padding: 59px 80px 24px }
.cmshtml .mysection0401title { text-align: center; background-image: url(../img/common/back12.png); background-repeat: no-repeat; background-position: center bottom }
.cmshtml .mysection0401title h3 { font-family: 'Sofia Sans', sans-serif; font-size: 32px; font-weight: 800; line-height: 1 }
.cmshtml .mysection0401title h2 { font-size: 48px; font-weight: 900; line-height: 1.6 }
.cmshtml .mysection0401text { font-weight: 700; text-align: center; margin-top: 19px; font-size: 18px }
.cmshtml .mysection0401banners { width: 874px; display: flex; flex-wrap: wrap; margin: 27px auto 0 }
.cmshtml .mysection0401banners > div { max-width: 397px; margin: 0 20px 20px; width: 45.4233%; background-color: #fff; border: none; border-radius: 32px; overflow: hidden; padding-bottom: 16px; box-shadow: 8px 8px 16px rgba(0, 0, 0, .16) }
.cmshtml .mysection04bannertitle { background-color: #ffd821; text-align: center; color: #000; font-size: 26px; font-weight: 700; padding: 10px }
.cmshtml .mysection04bannertext { text-align: right; font-weight: 700; padding: 8px 24px 0; font-size: 18px }
.cmshtml .mysection04bannertext :is(em, i) { font-style: normal; font-size: 12px; font-weight: 400 }
.cmshtml #wrapper .mysection04bannernumouter { display: flex; padding: 0 24px !important; align-items: center }
.cmshtml .mysection04bannernumouter > div:nth-child(1) { width: 50% }
.cmshtml .mysection04bannernumouter > div:nth-child(2) { width: 50% }
.cmshtml .mysection04bannerimg img { max-width: 100% }
.cmshtml .mysection04bannernum { text-align: right }
.cmshtml .mysection04bannernum > div:nth-child(1) { font-weight: 800; font-size: 58px; line-height: 1; display: inline-block }
.cmshtml .mysection04bannernum .mycount { display: inline-block; background-image: url(../img/common/back13.png); background-repeat: repeat-x; background-position: left bottom }
.cmshtml .mysection04bannernum > div:nth-child(2) { font-weight: 700 }
.cmshtml .mysection0401mask { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml .mysection0401maskinner { max-width: 1368px }
.cmshtml .mysection0401maskinner img { max-width: 100% }
.cmshtml .containermysection0402 { margin-top: 90px }
.cmshtml .mysection0402 { max-width: 1288px; margin: 0 auto; border: 8px solid #f9da44; border-radius: 56px; background-color: rgba(230, 230, 230, 0.88); padding: 0 24px 55px }
.cmshtml .mysection0402inner { max-width: 1186px; margin: 0 auto }
.cmshtml .mysection0402title { text-align: center; margin-top: -38px }
.cmshtml .mysection0402title h2 { display: inline-block; min-width: 72%; background-color: #f9da44; font-size: clamp(36px, 2.5333vw, 40px); font-weight: 800; border: none; border-radius: 80px; padding: 10px 32px; letter-spacing: 2px }
.cmshtml .mysection0402title > div:nth-child(2) { font-weight: 600; font-size: clamp(18px, 1.2666vw, 20px); margin-top: 36px }
.cmshtml .mysection0402banners { display: flex; flex-wrap: wrap; gap: 24px; justify-content: center; margin-top: 40px }
.cmshtml .mysection0402banners > div { width: calc(25% - 18px); background-color: #fff; border: none; border-radius: 12px; padding: 16px; text-align: center }
.cmshtml .mysection0402bannerimg img { max-width: 100% }
.cmshtml .mysection0402bannertitle { font-size: clamp(19px, 1.3666vw, 22px); font-weight: 700; margin: 10px 0 13px }
.cmshtml .mysection0402bannerbtn a { display: inline-block; text-decoration: none; color: #000; background-color: #f9da44; font-size: 13px; font-weight: 600; border: none; border-radius: 80px; padding: 6px 13px }
.cmshtml .containermysection0403 { margin-top: 80px }
.cmshtml .mysection0403 { max-width: 1288px; margin: 0 auto; border: 8px solid #f9da44; border-radius: 56px; background-color: rgba(230, 230, 230, 0.88); padding: 0 24px 40px }
.cmshtml .mysection0403slide { margin-top: 53px }
.cmshtml .mysection0403slide img { max-width: 100% }
.cmshtml .containermysection05 { background-color: #ffd821; padding: 46px 24px 80px }
.cmshtml .mysection05 { max-width: 1200px; margin: 0 auto }
.cmshtml .mysection05title { border-bottom: 1px solid #000; display: flex; align-items: flex-end }
.cmshtml .mysection05title h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(72px, 5.3333vw, 88px); font-weight: 800; line-height: 1; color: #000 }
.cmshtml .mysection05title h2 { font-size: clamp(18px, 1.2666vw, 20px); font-weight: 600; color: #000; line-height: 2.6; margin-left: 24px }
.cmshtml .mysection05banners { margin-top: 40px; display: flex }
.cmshtml .mysection05banners > div { padding-bottom: 16px }
.cmshtml .mysection05banners > div:not(:last-child) { max-width: 152px; width: 12.6666%; padding-right: 15px }
.cmshtml .mysection05banners > div:not(:last-child):nth-child(odd) { background-image: url(../img/common/back14.png); background-repeat: no-repeat; background-size: 100% }
.cmshtml .mysection05banners > div:not(:last-child):nth-child(even) { background-image: url(../img/common/back15.png); background-repeat: no-repeat; background-size: 100% }
.cmshtml .mysection05banners > div:last-child { max-width: 136px; width: 11.3338%; background-color: #efefef }
.cmshtml #wrapper .mysection05bannernum { padding-left: 3px; font-size: 40px; font-weight: 900; line-height: 1; margin-top: -18px !important }
.cmshtml .mysection05bannertitle { text-align: center; font-weight: 800; font-size: clamp(16px, 1.1333vw, 18px) }
.cmshtml .mysection05bannerimg { padding: 0 8px; text-align: center }
.cmshtml .mysection05bannerimg img { max-width: 100% }
.cmshtml .mysection05bannertext { padding: 0 8px; font-size: 12px; font-weight: 700; line-height: 1.5 }
.cmshtml .containermysection06 { background-image: url(../img/common/back16.jpg); background-repeat: no-repeat; background-position: center center; padding: 88px 24px 55px }
.cmshtml .mysection06 { max-width: 920px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center }
.cmshtml .mysection06title h3 { font-family: 'Sofia Sans', sans-serif; font-size: clamp(72px, 5.3333vw, 88px); font-weight: 800; line-height: 1; color: #fff }
.cmshtml .mysection06title h2 { font-size: clamp(24px, 1.7333vw, 28px); font-weight: 700; color: #fff; line-height: 1.3 }
.cmshtml .mysection06btn { margin-top: 29px }
.cmshtml .mysection06btn a { display: inline-block; text-decoration: none; color: #000; background-color: #fff; border: none; border-radius: 80px; font-size: 20px; font-weight: 700; padding: 14px 63px 14px 85px; background-image: url(../img/common/back07.png); background-repeat: no-repeat; background-position: 92% center; background-size: 10px 20px; min-height: 20px; transition: .3s }
.cmshtml .mysection06btn a:hover { opacity: .8 }
.cmshtml .containermysection07 { background-color: #010101; padding: 55px 24px 68px }
.cmshtml .mysection07 { max-width: 1174px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center }
.cmshtml .mysection07 > div:nth-child(1) { padding-left: 38px }
.cmshtml .mysection07text { font-size: 20px; font-weight: 500; color: #fff; margin: 24px 0 42px; padding-left: 16px }
.cmshtml .mysection07btn { padding-left: 5px }
.cmshtml .mysection07btn a { display: inline-block; text-decoration: none; color: #000; background-color: #ffd821; border: none; border-radius: 80px; font-size: 20px; font-weight: 700; padding: 14px 104px 14px 85px; background-image: url(../img/common/back07.png); background-repeat: no-repeat; background-position: 92% center; background-size: 10px 20px; min-height: 20px; transition: .3s }
.cmshtml .mysection07btn a:hover { opacity: .8 }
.cmshtml .mysection07 > div:nth-child(2) { width: 62.6064% }
.cmshtml .mysection07img img { max-width: 100% }
.cmshtml .containermysection08 { background-image: url(../img/common/back17.jpg); background-repeat: no-repeat; background-position: center center; background-size: cover; padding: 40px 24px }
.cmshtml .mysection0801outer { max-width: 1230px; margin: 0 auto }
.cmshtml .mysection0801 { max-width: 1200px; margin: 0 15px 15px; background-color: #fff; padding: 57px 24px 40px; border: none; border-radius: 24px; text-align: center; box-shadow: 6px 6px 12px rgba(0, 0, 0, .24) }
.cmshtml .mysection0801text { font-size: 14px; margin-top: 16px; font-weight: 600 }
.cmshtml .mysection0801banners { display: flex; justify-content: center; column-gap: 3%; margin-top: 30px }
.cmshtml .mysection0802outer { max-width: 1230px; margin: 51px auto 0 }
.cmshtml .mysection0802 { max-width: 1200px; margin: 0 15px 15px; background-color: #fff; padding: 57px 51px 48px; border: none; border-radius: 24px; box-shadow: 6px 6px 12px rgba(0, 0, 0, .24) }
.cmshtml .mysection0802title { border-bottom: 1px solid #084aaa; display: flex; align-items: flex-end; padding: 0 0 6px 12px }
.cmshtml .mysection0802title h3 { font-family: 'Sofia Sans', sans-serif; font-size: 58px; font-weight: 800; line-height: 1; color: #084aaa }
.cmshtml .mysection0802title h2 { font-size: 18px; font-weight: 600; color: #084aaa; margin-left: 16px; line-height: 2.6 }
.cmshtml .mynewarticles { margin-top: 25px }
.cmshtml #containerfooternav { background-color: #010101; padding: 65px 24px 60px }
.cmshtml #footernav { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-around; font-weight: 300 }
.cmshtml #footernav > :is(div:nth-child(1), div:nth-child(3), div:nth-child(4)) { border-right: 1px solid #fff; padding-right: 24px }
.cmshtml #footernav a { text-decoration: none; color: #fff; transition: .3s }
.cmshtml #footernav a:hover { opacity: .64 }
.cmshtml #footernav strong { font-weight: 700; font-size: 106% }
.cmshtml footer { max-width: 1212px; margin: 40px auto 24px; padding: 0 24px; display: flex; justify-content: space-between; font-weight: 600; align-items: center }
.cmshtml #footerlogo { margin-bottom: 12px }
.cmshtml #footeraddress { display: table }
.cmshtml .footeraddresstrow { display: table-row }
.cmshtml .footeraddresstrow + .footeraddresstrow .footeraddresscell { padding-top: 16px }
.cmshtml .footeraddresscell { display: table-cell }
.cmshtml .footeraddresscell:first-child { padding-right: 16px }
.cmshtml .footeraddresscell strong { display: inline-block; background-color: #000; color: #fff; font-weight: 400; font-size: 15px; padding: 0 8px }
.cmshtml #footercopyright { text-align: right; font-size: 80%; margin-top: 24px }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 12px 24px }
.cmshtml .largetac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 16px; right: 16px; display: none; width: 48px; height: 48px; background-color: rgb(var(--basecolor)); border-radius: 2px; border: none; padding: 8px; opacity: 0; transition: opacity 0.5s ease }
.cmshtml #pt a { color: #fff; text-decoration: none }
.cmshtml #pt span { font-size: 32px; display: block }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { align-items: flex-start !important; padding: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { display: none !important }
.cmshtml .mynewarticles .rdnewArticle-contWrap { width: 100% !important; display: flex !important; padding: 0 12px !important }
.cmshtml .mynewarticles .rdnewArticle-ContDate { width: 96px !important; color: #084aaa; font-size: 16px !important; font-style: italic !important; padding-top: 2px !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 14px !important; padding-top: 14px !important; border-top: 1px solid #ddd !important }
.cmshtml .mynewarticles .rdnewArticle-item:last-child { padding-bottom: 14px !important; border-bottom: 1px solid #ddd !important }

/* ブログ */
.cmshtml #myblogframe { width: 1048px; margin: 56px auto 0; display: flex }
.cmshtml #myblogmain { width: 728px }
.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: #000 !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 .mycontactboxnumber { margin: 16px 0 }
.cmshtml .mycontactboxnumber strong { display: inline-block; font-family: 'Montserrat', sans-serif; font-weight: 600; font-size: 40px; letter-spacing: 2px; line-height: 1.1; background-image: url(../img/common/back11.png); background-repeat: no-repeat; background-position: left center; padding-left: 48px }
.cmshtml .mystepbox { display: flex; justify-content: space-between }
.cmshtml .mystepbox > div:nth-child(1) { }
.cmshtml .mystepbox > div:nth-child(2) { margin-left: 40px }
.cmshtml .mystepbox dl { display: flex; align-items: center; margin-bottom: 12px }
.cmshtml .mystepbox dt { padding: 4px 8px; color: #fff; font-weight: 900; background-color: #000; border: none; border-radius: 4px }
.cmshtml .mystepbox dd { margin-left: 16px; font-weight: 600; font-size: 20px }
.cmshtml .mystepbox img { max-width: 100% }
.cmshtml .mystepboxarrow { }
.cmshtml .mybabox { display: flex; justify-content: space-between }
.cmshtml .mybabox > :is(div:nth-child(1), div:nth-child(3)) { width: 46% }
.cmshtml .mybabox > :is(div:nth-child(1), div:nth-child(3)) img { max-width: 100% }
.cmshtml .mybabox > :is(div:nth-child(1), div:nth-child(3)) > div { margin-top: 10px }
.cmshtml .mybabox > div:nth-child(2) { width: 8%; display: flex; justify-content: center; align-items: center }
.cmshtml .mybabox > div:nth-child(2) img { transform: rotate(-90deg); max-width: 100% }
.cmshtml .mytitle02 dt { font-family: 'Sofia Sans', sans-serif; font-size: clamp(56px, 4vw, 64px); font-weight: 800 !important; line-height: 1 }
.cmshtml .mytitle02 dd { font-size: clamp(18px, 1.2666vw, 20px); font-weight: 600 }
}

@media (min-width: 1080px) and (max-width: 1400px) {
.cmshtml #headerfunc { margin-top: 16px }
}

/* ブログ配色 */
.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 }

/* WC編集画面用 */
#editView :is(#globalnav, #headericons, #footernav, #mydrawernav, #headercatparents, #headercatchildren) edit { padding: 16px }
#editView .cmsbody { margin: 0; background-color: #fff; color: #000; line-height: 1.732; font-size: clamp(15px, 1.1111vw, 17px); font-family: 'Noto Sans JP', serif }
#editView #mydrawerhambergerouter { display: none }
#editView #mydrawer { position: static; display: block }
#editView #pt { position: static }
#editView h6 edit { display: inline-block !important }
#editView header { position: static }
#editView #headercatdata { opacity: 1; visibility: visible; position: static }
#editView #headercatchildren { display: block }
#editView #mainvisualmask { position: static }
#editView .mysection01slide > div { display: inline-block; width: 395px }
#editView .mysection0401mask { position: static }
#editView #pagetitleouter { position: static }
#editView .mysection03slide > div { width: 384px; display: inline-block }
#editView .mysection0401banners > div { overflow: visible; margin: 16px  }
#editView #headericons { display: block }
#editView #headericons > div { display: inline-block }

/* 共通装飾指定 */
/* 見出し */
.cmshtml .rdplanetitle h2 { font-size: clamp(36px, 2.5333vw, 40px) !important; font-weight: 700 !important; padding-bottom: 24px; text-align: center; background-image: url(../img/common/back20.png); background-repeat: no-repeat; background-position: center bottom }
.cmshtml .rdplanetitle h3 { font-size: clamp(24px, 1.7333vw, 28px) !important; font-weight: 700 !important; background-color: rgb(var(--basecolor)); color: #000; border: none; border-radius: 8px; padding: 0 16px }
.cmshtml .rdplanetitle h4 { font-size: 24px !important; font-weight: 600 !important; border-bottom: 4px solid rgb(var(--basecolor)); padding-bottom: 6px }
.cmshtml .rdplanetitle h5 { font-size: 20px !important; font-weight: 600 !important; background-color: #eee; padding: 0 8px; border: 1px solid #e8e8e8 }
.cmshtml .rdplanetitle h6 { font-size: 18px !important; font-weight: 600 !important }
.cmshtml .rdplanetitle h6::before { font-family: 'Font Awesome 6 Free'; content: '\f0c8\00a0'; font-weight: bold; color: rgba(var(--basecolor)) }
@media (max-width: 767px) {
.cmshtml .rdplanetitle h2 { font-size: clamp(26px, 3.8666vw, 32px) !important; padding-bottom: 20px; background-size: 80px 4px }
.cmshtml .rdplanetitle h3 { font-size: clamp(19px, 2.7333vw, 22px) !important; padding: 0 10px }
.cmshtml .rdplanetitle h4 { font-size: clamp(19px, 2.7333vw, 22px) !important }
.cmshtml .rdplanetitle h5 { font-size: 17px !important }
.cmshtml .rdplanetitle h6 { font-size: 16px !important }
}

/* 単体エリア・横並びエリア */
@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 { padding: 16px 40px; background-color: rgb(var(--basecolor)); color: #000; text-decoration: none; transition: .3s; font-weight: 600; font-size: 110%; border: none; border-radius: 80px }
.cmshtml :is(.link03, .link04) a { padding: 16px 40px; background-color: #000; color: #fff; text-decoration: none; transition: .3s; font-weight: 600; font-size: 110%; border: none; border-radius: 80px }
.cmshtml :is(.link01, .link02, .link03, .link04) a:hover { opacity: .72 }
.cmshtml :is(.link01, .link02, .link03, .link04) a::after { font-family: 'Font Awesome 6 Free'; content: '\f105'; font-weight: bold; display: inline-block; margin-left: 32px }
@media (max-width: 1079px) {
.cmshtml :is(.link01, .link02, .link03, .link04) a { padding: 8px 24px }
.cmshtml :is(.link01, .link02, .link03, .link04) a::after { margin-left: 16px }
}

/* ボーダーありテーブル */
.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 }
}