@charset "utf-8";

@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('/data/common/c2101a065301/css/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'), url('/data/common/c2101a065301/css/fontawesome/webfonts/fa-solid-900.ttf') format('truetype') }

:root { --basecolor: 44, 44, 44 }
:root { --textcolor: 44, 44, 44 }
:root { --bordercolor: 221, 221, 221 }
:root { --blogcolor: 255, 153, 153 }

.cmshtml * { box-sizing: border-box }
.cmshtml p { margin: 0 }
.cmshtml a { color: rgb(44, 44, 44); transition: .3s }
.cmshtml a:hover { color: rgba(44, 44, 44, .72) }
.cmshtml ul, .cmshtml ol, .cmshtml dl, .cmshtml dt, .cmshtml dd { margin: 0; padding: 0 }
.cmshtml img { border: none; vertical-align: top; height: auto }
.cmshtml a img { transition: .3s }
.cmshtml a:hover img { opacity: .72 }
.cmshtml mark { background: linear-gradient(transparent 64%, #ffdfef 64%); color: #000; padding: 0 1px 1px }
.cmshtml label { display: block }
.cmshtml input[type='text'], .cmshtml input[type='file'], .cmshtml input[type='email'], .cmshtml input[type='tel'], .cmshtml input[type='number'], .cmshtml input[type='date'], .cmshtml input[type='password'], .cmshtml textarea, .cmshtml select { border: 2px solid #ddd !important; transition: .3s !important; outline: none }
.cmshtml input[type='text']:focus, .cmshtml input[type='file']:focus, .cmshtml input[type='email']:focus, .cmshtml input[type='tel']:focus, .cmshtml input[type='number']:focus, .cmshtml input[type='date']:focus, .cmshtml input[type='password']:focus, .cmshtml textarea:focus, .cmshtml select:focus { border-color: #1b95e0 !important; box-shadow: none !important }
.cmshtml button, .cmshtml input[type='submit'], .cmshtml input[type='button'] { transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Serif JP', serif; font-weight: 500; border: 3px solid rgb(var(--basecolor)) !important; color: #fff; background: rgb(var(--basecolor)) !important }
.cmshtml button[type='submit']:hover, .cmshtml input[type='submit']:hover, .cmshtml input[type='button']:hover { color: rgb(var(--basecolor)) !important; background: #fff !important; box-shadow: none !important }
.cmshtml button[type='reset'], .rdcontact_btn_back { border: 3px solid #ccc !important; background: #fff !important; margin-right: 8px; transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Serif JP', serif; font-weight: 500; color: #999 !important }
.cmshtml button[type='reset']:hover, .rdcontact_btn_back:hover { opacity: .64; box-shadow: none !important }
.cmshtml form dl { background-color: rgb(250, 249, 244); border: 1px solid rgb(239, 237, 222); border-radius: 8px; padding: 8px 16px !important }
.cmshtml form dt { margin-bottom: 4px !important; font-size: 92% }
.cmshtml .contact_item_title::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\00a0' }
.cmshtml form dt span { color: #fff; font-weight: 400; font-size: 75%; line-height: 1.1; padding: 1px 4px 3px; border-radius: 4px; border: none; background-color: #f90; display: inline-block; margin-left: 8px }
.cmshtml form dd { margin-top: 12px }
.cmshtml textarea { width: calc(100% - 14px) }
.cmshtml .contact_item_title:not(:first-child) { margin-top: 16px !important }
.cmshtml caption { caption-side: bottom; font-size: 88%; margin-top: 8px; color: #777 }
.cmshtml figure img { max-width: 100% }
.cmshtml figcaption { text-align: center; font-size: 88%; margin-top: 8px }
.cmshtml table { border-collapse: collapse }
.cmshtml iframe { border: none }
.cmshtml h1, .cmshtml h2, .cmshtml h3, .cmshtml h4, .cmshtml h5, .cmshtml h6 { margin: 0 }
.cmshtml .rdsp-buttons { display: none }
.cmshtml strong { font-weight: 500 }

/* パンくずリスト */
.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 { margin: 0; background-color: #fff; color: #2c2c2c; line-height: 1.732; font-size: 15px; font-family: 'Noto Serif JP', serif; font-feature-settings: 'palt'; -webkit-text-size-adjust: 100% }
.cmshtml h1, .cmshtml #globalnav, .cmshtml .largeonly { display: none }
.cmshtml #wrapper { position: relative; z-index: 0 }
.cmshtml #containermysection01 { position: relative }
.cmshtml #myslide { }
.cmshtml #myslide img { max-width: 100% }
.cmshtml #containerpagetitle { position: relative }
.cmshtml #pagetitleimg { }
.cmshtml #pagetitleimg img { max-width: 100% }
.cmshtml #pagetitleouter { position: absolute; right: 0; bottom: 16px; left: 0; padding: 10px 8px 6px; text-align: center; background-color: rgba(255, 255, 255, .8) }
.cmshtml .pagetitlee { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 26px; letter-spacing: 1px; line-height: 1.2 }
.cmshtml .pagetitlej { color: #2c2c2c; font-size: 16px; line-height: 1.4 }
.cmshtml header { position: absolute; top: 0; right: 0; left: 0; z-index: 1 }
.cmshtml #headerlogo { margin: 8px 0 0 16px; width: 40% }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #containerglobalnav { display: none }
.cmshtml #slidetext { position: absolute; top: 0; right: 0; bottom: 0; left: 0; color: #fff; background-image: url(../img/home/slidesmallmask.png); background-repeat: no-repeat; background-size: 100%; display: flex; align-items: flex-end }
.cmshtml main { padding-bottom: 40px }
.cmshtml .back01 { background-image: url(../img/common/back01.jpg); background-position: center top; background-repeat: repeat-y }
.cmshtml .containermysection02 { margin: 40px 16px 0 }
.cmshtml .mysection02 { }
.cmshtml .mysection02title, .cmshtml .mytitle01, .cmshtml .mytitle01center { text-align: center }
.cmshtml .mysection02title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 30px !important; letter-spacing: 1px; line-height: 1.3; font-weight: 500 !important }
.cmshtml .mysection02title h3 { color: #2c2c2c; font-size: 18px !important; font-weight: 400 !important; border-bottom: none !important }
.cmshtml #wrapper .mytitle01 h2, .cmshtml #wrapper .mytitle01center h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 24px !important; letter-spacing: 1px; line-height: 1.3; font-weight: 500 !important }
.cmshtml #wrapper .mytitle01 h3, .cmshtml #wrapper .mytitle01center h3 { color: #2c2c2c; font-size: 17px !important; font-weight: 400 !important; border-bottom: none !important }
.cmshtml #wrapper .mytitle01 h3::after, .cmshtml #wrapper .mytitle01center h3::after { border: none !important }
.cmshtml .mysection02text { margin-top: 24px }
.cmshtml .mysection02img { margin-top: 40px; text-align: center }
.cmshtml .mysection02img img { max-width: 100% }
.cmshtml .mysection02btn { margin-top: 16px; text-align: center }
.cmshtml .containermysection03 { margin-top: 72px }
.cmshtml .containermysection03nobg { margin-top: 72px }
.cmshtml .mysection03 { }
.cmshtml .mysection03title { text-align: center }
.cmshtml .mysection03title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 30px; letter-spacing: 1px; line-height: 1.3 }
.cmshtml .mysection03title h3 { color: #2c2c2c; font-size: 18px }
.cmshtml .myslick01 { margin-top: 24px; padding-bottom: 80px }
.cmshtml .myslick01box { padding: 0 12px !important }
.cmshtml .myslick01img img { max-width: 100% }
.cmshtml .myslick01title { padding: 16px 0; font-size: 19px; word-spacing: 8px; letter-spacing: 1px; background-image: url(../img/common/back04.png); background-repeat: no-repeat; background-position: left bottom; background-size: 165px 1px }
.cmshtml .mysection03btn, .cmshtml .mysection03btnc { margin-top: 32px; text-align: center }
.cmshtml .mysection03nobgbtn { margin-top: 32px; text-align: center }
.cmshtml .mysection03grid { margin: 24px 16px; display: flex; flex-wrap: wrap }
.cmshtml #wrapper .mysection03grid01 { position: relative; width: calc(50% - 1px) !important; border-right: 1px solid #fff; border-bottom: 1px solid #fff }
.cmshtml #wrapper .mysection03grid02 { position: relative; width: 50% !important; border-bottom: 1px solid #fff }
.cmshtml #wrapper .mysection03grid03 { position: relative; width: calc(50% - 1px) !important; border-right: 1px solid #fff; border-bottom: 1px solid #fff }
.cmshtml #wrapper .mysection03grid04 { position: relative; width: 50% !important; border-bottom: 1px solid #fff }
.cmshtml #wrapper .mysection03grid05 { position: relative; width: calc(50% - 1px) !important; border-right: 1px solid #fff }
.cmshtml #wrapper .mysection03grid06 { position: relative; width: 50% !important }
.cmshtml .mysection03gridimg img { max-width: 100% }
.cmshtml .mysection03gridtext { position: absolute; top: 0; right: 0; bottom: 0; left: 0 }
.cmshtml .mysection03grid a { position: absolute; top: 0; right: 0; bottom: 0; left: 0; text-decoration: none; font-size: 16px; color: #fff; background-color: rgba(0, 0, 0, .24); padding: 0 0 12px 12px; display: flex; align-items: flex-end }
.cmshtml .mysection03grid a:hover { background-color: rgba(0, 0, 0, .16) }
.cmshtml .containermysection04 { margin-top: 48px }
.cmshtml .mysection04 { }
.cmshtml .mysection04title { text-align: center }
.cmshtml .mysection04title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 30px; letter-spacing: 1px; line-height: 1.3 }
.cmshtml .mysection04title h3 { color: #2c2c2c; font-size: 18px }
.cmshtml .myslick02 { margin-top: 24px; padding-bottom: 80px }
.cmshtml .myslick02box { padding: 0 12px }
.cmshtml .myslick02img { }
.cmshtml .myslick02img img { max-width: 100% }
.cmshtml .myslick02text { padding: 24px; background-color: #fff; height: 192px }
.cmshtml .myslick02link { padding: 0 16px 16px; text-align: right; background-color: #fff }
.cmshtml .myslick02link a { color: #2c2c2c; text-decoration: none; transition: .3s; font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; font-size: 20px; background-image: url(../img/common/back03.png); background-repeat: no-repeat; background-position: 80% center; display: inline-block; padding-right: 56px }
.cmshtml .myslick02link a:hover { opacity: .8; background-position: 86% center }
.cmshtml .containermysection05 { margin-top: 80px }
.cmshtml .mysection05title { text-align: center }
.cmshtml .mysection05title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 30px; letter-spacing: 1px; line-height: 1.3 }
.cmshtml .mysection05title h3 { color: #2c2c2c; font-size: 18px }
.cmshtml .myslick03 { margin: 24px 16px 0; padding-bottom: 72px }
.cmshtml .myslick03outer { }
.cmshtml .myslick03imgp0 { text-align: center }
.cmshtml .myslick03img img { max-width: 100% }
.cmshtml .myslick03imgp0 img { width: auto; max-height: 256px !important }
.cmshtml .myslick03inner { margin-top: 8px }
.cmshtml .myslick03name { font-size: 24px; font-weight: 500; letter-spacing: 2px; text-align: center }
.cmshtml .myslick03title { margin-top: 16px; font-size: 18px; text-align: center }
.cmshtml .myslick03info { margin-top: 16px; text-align: center }
.cmshtml .myslick03btn { margin-top: 16px; text-align: center }
.cmshtml .mysection05studios { display: flex; justify-content: center; flex-wrap: wrap; margin-top: 40px }
.cmshtml .mysection05studios > div { margin: 0 16px }
.cmshtml .mysection05studios a { text-decoration: none; color: #666; padding-bottom: 4px }
.cmshtml .mysection05studios a:hover { color: #2c2c2c; border-bottom: 1px solid #2c2c2c }
.cmshtml .containermysection06 { margin: 72px 0 }
.cmshtml .mytabdivsouter { position: relative; margin: 40px 16px 0 }
.cmshtml .mytabdivs { }
.cmshtml .divdisplay { display: block; opacity: 1; transition: opacity 0.5s ease-in-out; position: absolute; top: 0; left: 0; width: 100% }
.cmshtml .divdisplaynone { display: block; opacity: 0; transition: opacity 0.5s ease-in-out; pointer-events: none; position: absolute; top: 0; left: 0; width: 100% }
.cmshtml .mytransparent, .cmshtml .mytransparent div { position: static !important }
.cmshtml .mytransparent img { width: 100%; height: 576px !important; object-fit: cover }
.cmshtml .mysection06studios { display: flex; flex-wrap: wrap }
.cmshtml .mysection06studios > div { width: 50% !important; margin-top: 8px; text-align: center }
.cmshtml .mytabs p { display: inline-block; border-bottom: 1px solid transparent; cursor: pointer; transition: .4s; font-size: 16px }
.cmshtml .mytabs p:hover { color: #777 }
.cmshtml .tabactive p { border-bottom: 1px solid #000; font-size: 18px }
.cmshtml .containermysection07 { margin-top: 88px; padding: 56px 0 80px; transition: background-color 1.5s ease }
.cmshtml .mysection07color { background-color: #517784 !important }
.cmshtml .mysection07colorw { background-color: transparent !important }
.cmshtml .mysection07staff { margin: 0 16px; display: flex; flex-wrap: wrap }
.cmshtml .mysection07left { order: 2; margin-top: 24px; text-align: center; width: 100% }
.cmshtml .mysection07left img { max-width: 394px; width: 56% }
.cmshtml .mysection07right { display: flex; flex-wrap: wrap; width: 100%; order: 1; justify-content: space-around }
.cmshtml .mysection07text { width: 100%; margin-bottom: 56px }
.cmshtml .mysection07title { text-align: center }
.cmshtml .mysection07title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #fff; font-size: 30px; letter-spacing: 1px; line-height: 1.3 }
.cmshtml .mysection07title h3 { color: #fff; font-size: 18px }
.cmshtml #wrapper .mysection07img { width: 44% !important; text-align: center }
.cmshtml .mysection07img img { max-width: 100% }
.cmshtml .mysection07innertext { color: #fff; margin-top: 22px }
.cmshtml .mysection07innertext br { display: none }
.cmshtml .mysection07btn { margin-top: 24px; text-align: center }
.cmshtml .mysection07flowouter { margin: 64px 16px 0 }
.cmshtml .mysection07flowinner { }
.cmshtml .mysection07flow { }
.cmshtml .mysection07flowleft { }
.cmshtml .mysection07flowtext { width: 100% }
.cmshtml .mysection07flowright { text-align: center; margin-top: 40px }
.cmshtml .mysection07flowright img { max-width: 543px; width: 40% }
.cmshtml .mysection07flowimg { display: flex; margin-top: 24px }
.cmshtml .mysection07flowimgleft { width: 45%; text-align: center }
.cmshtml .mysection07flowimgleft img { width: 62.4761% }
.cmshtml .mysection07flowimgright { width: 65% }
.cmshtml .mysection07flowimgright img { width: 83.0028% }
.cmshtml .mysection07item { margin: 64px 16px 0; display: flex; flex-wrap: wrap }
.cmshtml .mysection07item .mysection07left { order: 2 }
.cmshtml .mysection07item .mysection07right { order: 1 }
.cmshtml .mysection07item .mysection07text { }
.cmshtml .containermysection08 { margin: 80px 16px 0 }
.cmshtml .mysection08 { margin-bottom: 72px }
.cmshtml .mynewarticles { margin-top: 24px }
.cmshtml .mysection08btn { text-align: center; margin-top: 24px }
.cmshtml footer { text-align: center; padding: 48px 16px }
.cmshtml footer h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 30px; letter-spacing: 1px; line-height: 1.3 }
.cmshtml footer h3 { color: #2c2c2c; font-size: 18px }
.cmshtml .footertext { margin-top: 24px; text-align: left }
.cmshtml .footertext br { display: none }
.cmshtml .footerbtn { margin-top: 40px }
.cmshtml .footerbtn > div { margin: 0 30px 16px !important }
.cmshtml .footerbtn a { display: block; text-decoration: none; color: #fff; font-size: 19px; background-color: #475059; padding: 16px 0 }
.cmshtml .footernotice { margin-top: 24px }
.cmshtml #footercopy { background-color: #475059; color: #fff; text-align: center; padding: 16px 0; font-size: 13px; border-bottom: 1px solid #888; margin-bottom: 40px }
.cmshtml #footerbackground { position: fixed; top: 0; right: 0; bottom: 0; left: 0; display: flex; align-items: flex-end; z-index: -1 }
.cmshtml #footerbackgroundinner img { width: 100%; height: 100vh !important; object-fit: cover }
.cmshtml #sidefixedbtn { position: fixed; right: 0; bottom: 0; left: 0; display: flex; background-color: #475059 }
.cmshtml #sidefixedbtn01 { border-right: 1px solid #888; width: calc(50% - 42px) }
.cmshtml #sidefixedbtn02 { border-right: 1px solid #888; width: calc(50% - 41px) }
.cmshtml #sidefixedbtn01 a, .cmshtml #sidefixedbtn02 a { display: block; background-color: #475059; color: #fff; text-decoration: none; height: 40px; padding: 0; display: flex; align-items: center; justify-content: center; font-size: 15px }
.cmshtml #sidefixedbtn03 { height: 40px; border-right: 1px solid #888 }
.cmshtml #sidefixedbtn03 img { width: 40px; height: 40px }
.cmshtml #containerdrawerhamberger { position: fixed; top: 16px; right: 16px; z-index: 9999 }
.cmshtml #drawertoggle { display: none }
.cmshtml #drawerhamberger { display: block; cursor: pointer }
.cmshtml .bar { display: block; width: 24px; height: 2px; margin-top: 6px; background-color: #2c2c2c; transition: .4s }
.cmshtml #drawertoggle:checked + #drawerhamberger .bar:nth-child(1) { transform: rotate(45deg) translate(6px, 6px) }
.cmshtml #drawertoggle:checked + #drawerhamberger .bar:nth-child(2) { opacity: 0 }
.cmshtml #drawertoggle:checked + #drawerhamberger .bar:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px) }
.cmshtml label { caret-color: transparent }
.cmshtml #mymodal { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: #fff; overflow-y: auto; transition: opacity .5s; z-index: -999; background-image: url(../img/common/back01.jpg); height: 100vh }
.cmshtml .mymodal-hide { opacity: 0 }
.cmshtml .mymodal-show { opacity: 1 !important; z-index: 999 }
.cmshtml .noscroll { overflow: hidden }
.cmshtml #mymodalinner { }
.cmshtml #mymodalleft { }
.cmshtml #modallogo { padding: 8px 0 0 16px }
.cmshtml #modallogo img { max-width: 212px; width: 32%; height: auto }
.cmshtml #mymodalleftouter { display: flex; margin: 24px 56px 24px 24px }
.cmshtml #mymodalleftinner { }
.cmshtml #mymodallefttitle h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2c2c2c; font-size: 26px; letter-spacing: 1px; line-height: 1.3 }
.cmshtml #modalnav { display: flex; margin-top: 16px; flex-wrap: wrap }
.cmshtml #modalnav a { text-decoration: none; white-space: nowrap; display: block }
.cmshtml #modalnav01 { margin-right: 40px }
.cmshtml #modalnav02 { margin: 24px 40px 0 0 }
.cmshtml .modalnavtop a { font-size: 18px; font-weight: 500; border-bottom: 1px solid #2c2c2c; padding-bottom: 8px; background-image: url(../img/common/back03.png); background-repeat: no-repeat; background-position: 92% center }
.cmshtml .modalnavtop a:hover { background-position: 96% center }
.cmshtml .modalnavparent a { font-size: 18px; font-weight: 500 }
.cmshtml .modalnavchild a { padding-left: 16px }
.cmshtml .modalnavtop + .modalnavparent { margin-top: 16px }
.cmshtml .modalnavparent + .modalnavparent { margin-top: 16px }
.cmshtml .modalnavparent + .modalnavchild { margin-top: 8px }
.cmshtml .modalnavchild + .modalnavparent { margin-top: 16px }
.cmshtml .modalnavchild + .modalnavchild { margin-top: 4px }
.cmshtml #mymodalright { position: relative; text-align: center; margin-top: 40px }
.cmshtml #mymodalimg { font-size: 0 }
.cmshtml #mymodalimg img { width: 100% }
.cmshtml #mymodalrightouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .4); display: flex; justify-content: center; align-items: center }
.cmshtml #mymodalrightinner { width: 72% }
.cmshtml #mymodalrighttitle h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #fff; font-size: 30px; letter-spacing: 2px }
.cmshtml #mymodalrightbtn { margin-top: 32px }
.cmshtml #mymodalrightbtn > div:nth-child(2) { margin-top: 24px }
.cmshtml #mymodalrightbtn a { display: block; color: #2c2c2c; background-color: #fff; text-decoration: none; margin: 0 auto; padding: 16px 0; font-size: 18px }
.cmshtml #mymodalrighttext { color: #fff; margin-top: 24px }
.cmshtml button, .cmshtml input[type='submit'], .cmshtml input[type='button'] { padding: 8px 16px }
.cmshtml .smalltac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 0; right: 0; display: none; width: 40px; height: 40px; background-color: #475059; border-radius: 2px; border: none; padding: 10px 8px 0 }
.cmshtml #pt a { color: #fff; text-decoration: none }
.cmshtml #pt span { font-size: 24px; display: block }
.cmshtml .myfaq { padding: 4px }
.cmshtml .myfaq dt { position: relative; padding: 8px 32px; font-weight: 500; cursor: pointer; line-height: 1.3 }
.cmshtml .myfaq dt::before { position: absolute; font-size: 18px; font-family: 'Font Awesome 6 Free'; left: 8px; top: 8px; content: '\f059' }
.cmshtml .myfaq dt div { display: block; position: absolute; top: 8px; right: 8px; transition: .4s }
.cmshtml .myfaq dd { position: relative; padding: 8px 8px 8px 32px; display: none; line-height: 1.3 }
.cmshtml .myfaq dd::before { position: absolute; font-size: 18px; font-family: 'Font Awesome 6 Free'; left: 7px; top: 8px; content: '\f083' }
.cmshtml .faqopen { transform: rotate(180deg) }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: flex !important; padding: 0 !important; align-items: flex-start !important; border-bottom: 1px solid #aaa !important; padding-bottom: 24px !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: block !important; width: 100px !important; height: 70px !important; margin: 0 0 0 24px !important; flex: none !important; order: 2 }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { width: 100%; height: 70px !important; object-fit: cover !important; border-radius: 0 }
.cmshtml .mynewarticles .rdnewArticle-contWrap { width: calc(100% - 124px) !important; order: 1; flex: none !important }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: 15px !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { margin-top: 0 !important }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none; color: #000 }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 56px !important; border-top: none !important }

/* ブログ */
.cmshtml #myblogframe { margin: 24px 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; font-size: 14px !important; padding: 0 4px; border-bottom: none }
.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 .rdarticleTitleText, .cmshtml .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 #2c2c2c !important; font-size: 18px !important; font-weight: 550 !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 .rdnewArticle-item + .rdnewArticle-item, .cmshtml #myblogframe .rdCategorylist-item + .rdCategorylist-item, .cmshtml #myblogframe .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 .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 .rdRelatedArticles-catlink, .cmshtml .rdRelatedArticles-taglink { padding: 3px 4px !important }
.cmshtml .rdReadMore { font-size: 88% }
.cmshtml .mycommonarea { margin-top: 24px }
.cmshtml #maincontents { margin-top: 24px }
}

@media (max-width: 699px) {
.cmshtml #slidetext { font-size: 20px; letter-spacing: 1px; padding: 0 0 16px 24px }
}

@media (min-width: 700px) and (max-width: 1079px) {
.cmshtml #slidetext { font-size: 36px; letter-spacing: 3px; padding: 0 0 48px 48px }
}

@media (min-width: 1080px) {
.cmsbody { margin: 0; background-color: #fff; color: #2c2c2c; line-height: 1.732; font-size: 17px; font-family: 'Noto Serif JP', serif; font-feature-settings: 'palt' }
.cmshtml h1, .cmshtml .smallonly { display: none }
.cmshtml #wrapper { position: relative; z-index: 0 }
.cmshtml #containermysection01 { max-width: 1920px; margin: 0 auto; position: relative }
.cmshtml #myslide { }
.cmshtml #myslide img { max-width: 100% }
.cmshtml #containerpagetitle { position: relative }
.cmshtml #pagetitleimg { }
.cmshtml #pagetitleimg img { max-width: 100% }
.cmshtml #pagetitleouter { position: absolute; right: 0; bottom: 32px; left: 0; padding: 24px 0; text-align: center; background-color: rgba(255, 255, 255, .72) }
.cmshtml .pagetitlee { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 44px; letter-spacing: 1px; line-height: 1.2 }
.cmshtml .pagetitlej { color: #2c2c2c; font-size: 18px }
.cmshtml header { position: absolute; top: 18px; right: 0; left: 0; display: flex; justify-content: space-between; align-items: center; z-index: 1 }
.cmshtml #headerlogo { margin-left: 27px }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #globalnav { display: flex; justify-content: flex-end; margin-right: 143px }
.cmshtml #globalnav > div { margin-left: 24px }
.cmshtml #globalnav a { text-decoration: none; color: #2f2f2f; font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; font-size: 20px; letter-spacing: 1px; transition: .4s }
.cmshtml #globalnav a:hover { opacity: .56 }
.cmshtml #slidetext { position: absolute; top: 0; right: 0; bottom: 0; left: 0; color: #fff; font-size: min(2.0833vw, 40px); letter-spacing: 12px; background-image: url(../img/home/slidemask.png); background-repeat: no-repeat; background-size: 100%; padding: 0 0 70px 77px; display: flex; align-items: flex-end }
.cmshtml main { max-width: 1920px; margin: 0 auto; padding-bottom: 132px }
.cmshtml .back01 { background-image: url(../img/common/back01.jpg); background-position: center top; background-repeat: repeat-y }
.cmshtml .containermysection02 { margin: 286px auto 0; display: flex; align-items: flex-start }
.cmshtml .mysection02 { width: 44.0625%; padding: 2.5vw 0 0 11.25% }
.cmshtml .mysection02title, .cmshtml .mytitle01 { display: flex; align-items: center }
.cmshtml .mytitle01center { display: flex; align-items: center; justify-content: center }
.cmshtml .mysection02title h2, .cmshtml #wrapper .mytitle01 h2, .cmshtml #wrapper .mytitle01center h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 44px !important; letter-spacing: 2px; font-weight: 500 !important }
.cmshtml .mysection02title h3, .cmshtml #wrapper .mytitle01 h3, .cmshtml #wrapper .mytitle01center h3 { color: #2c2c2c; font-size: 24px !important; margin-left: 24px; font-weight: 400 !important; border-bottom: none !important; padding-bottom: 0 !important }
.cmshtml #wrapper .mytitle01 h3::after, .cmshtml #wrapper .mytitle01center h3::after { border: none !important }
.cmshtml .mysection02text { line-height: 1.8; margin-top: 32px }
.cmshtml .mysection02img { width: 55.9375%; background-image: url(../img/common/back02.png); background-repeat: no-repeat; background-position: center bottom; background-size: 100%; padding: 0 0 5.46875vw 6.0416vw; display: flex; align-items: flex-end }
.cmshtml .mysection02img img { max-width: 100% }
.cmshtml .mysection02btn { margin-top: 44px }
.cmshtml .containermysection03 { margin-top: 280px; background-image: url(../img/common/back05.png); background-repeat: no-repeat; background-position: center bottom; background-size: 100%; padding-bottom: 6.25vw }
.cmshtml .containermysection03nobg { margin-top: 280px }
.cmshtml .mysection03 { padding: 0 11.25% }
.cmshtml .mysection03title { display: flex; align-items: center }
.cmshtml .mysection03title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 44px; letter-spacing: 2px }
.cmshtml .mysection03title h3 { color: #2c2c2c; font-size: 24px; margin-left: 24px }
.cmshtml .myslick01 { margin-top: 24px; padding-bottom: 154px }
.cmshtml .myslick01box { padding: 0 12px !important; transition: .3s }
.cmshtml .myslick01box:hover { opacity: .72 }
.cmshtml .myslick01img img { max-width: 100% }
.cmshtml .myslick01title { padding: 28px 0; font-size: 22px; word-spacing: 12px; letter-spacing: 5px; background-image: url(../img/common/back04.png); background-repeat: no-repeat; background-position: left bottom; background-size: 165px 1px }
.cmshtml .mysection03btn { text-align: right; padding-right: 53px; margin-top: -43px; position: relative; z-index: 2 }
.cmshtml .mysection03btnc { text-align: center; margin-top: 42px }
.cmshtml .mysection03nobgbtn { margin-top: 40px; text-align: right; padding-right: 167px }
.cmshtml .mysection03grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(3, 1fr); grid-column-gap: 0; grid-row-gap: 0; margin-top: 48px }
.cmshtml .mysection03grid01 { grid-area: 1 / 1 / 2 / 2; position: relative }
.cmshtml .mysection03grid02 { grid-area: 1 / 2 / 2 / 3; position: relative }
.cmshtml .mysection03grid03 { grid-area: 1 / 3 / 3 / 5; position: relative }
.cmshtml .mysection03grid04 { grid-area: 2 / 1 / 4 / 3; position: relative }
.cmshtml .mysection03grid05 { grid-area: 3 / 3 / 4 / 4; position: relative }
.cmshtml .mysection03grid06 { grid-area: 3 / 4 / 4 / 5; position: relative }
.cmshtml .mysection03gridimg img { max-width: 100% }
.cmshtml .mysection03gridtext { position: absolute; top: 0; right: 0; bottom: 0; left: 0 }
.cmshtml .mysection03grid a { position: absolute; top: 0; right: 0; bottom: 0; left: 0; text-decoration: none; transition: .5s; font-size: 22px; word-spacing: 12px; letter-spacing: 5px; color: #fff; background-color: rgba(0, 0, 0, .4); padding: 0 0 16px 32px; display: flex; align-items: flex-end }
.cmshtml .mysection03grid a:hover { background-color: rgba(0, 0, 0, .16) }
.cmshtml .containermysection04 { margin-top: 80px }
.cmshtml .mysection04 { padding: 0 11.25% }
.cmshtml .mysection04title { display: flex; align-items: center }
.cmshtml .mysection04title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 44px; letter-spacing: 2px }
.cmshtml .mysection04title h3 { color: #2c2c2c; font-size: 24px; margin-left: 24px }
.cmshtml .myslick02 { margin-top: 40px; padding-bottom: 96px }
.cmshtml .myslick02box { width: 424px; padding: 0 12px }
.cmshtml .myslick02img { }
.cmshtml .myslick02img img { max-width: 100% }
.cmshtml .myslick02text { padding: 29px 30px; font-size: 16px; background-color: #fff; height: 200px }
.cmshtml .myslick02link { padding: 0 24px 24px; text-align: right; background-color: #fff }
.cmshtml .myslick02link a { color: #2c2c2c; text-decoration: none; transition: .3s; font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; font-size: 20px; background-image: url(../img/common/back03.png); background-repeat: no-repeat; background-position: 80% center; display: inline-block; padding-right: 56px }
.cmshtml .myslick02link a:hover { opacity: .8; background-position: 86% center }
.cmshtml .containermysection05 { margin-top: 196px; background-image: url(../img/common/back06.png); background-repeat: no-repeat; background-position: center top; background-size: 100%; padding-top: 64px }
.cmshtml .mysection05title { display: flex; align-items: center; margin-left: 11.3541% }
.cmshtml .mysection05title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 44px; letter-spacing: 2px; line-height: 1 }
.cmshtml .mysection05title h3 { color: #2c2c2c; font-size: 24px; margin-left: 24px; line-height: 1.2 }
.cmshtml .myslick03 { margin-top: -30px }
.cmshtml .myslick03outer { display: flex }
.cmshtml .myslick03img { width: 50.2604%; padding-top: 84px }
.cmshtml .myslick03imgp0 { width: 50.2604% }
.cmshtml .myslick03img img, .cmshtml .myslick03imgp0 img { max-width: 100% }
.cmshtml .myslick03inner { width: 49.7396%; padding: 0 0 0 12.8125% }
.cmshtml .myslick03name { font-size: 34px; font-weight: 500; letter-spacing: 4px }
.cmshtml .myslick03title { margin-top: 44px; font-size: 24px; letter-spacing: 4px; line-height: 1.8 }
.cmshtml .myslick03info { margin-top: 52px; font-size: 18px; line-height: 1.9 }
.cmshtml .myslick03btn { margin-top: 48px }
.cmshtml .mysection05studios { margin-top: 92px; text-align: center }
.cmshtml .mysection05studios > div { margin: 0 16px !important; display: inline-block; width: auto !important }
.cmshtml .mysection05studios a { text-decoration: none; color: #666; padding-bottom: 4px }
.cmshtml .mysection05studios a:hover { color: #2c2c2c; border-bottom: 1px solid #2c2c2c }
.cmshtml .containermysection06 { margin: 168px 0 200px; background-image: url(../img/common/back06.png); background-repeat: no-repeat; background-position: center top; background-size: 100%; padding-top: 56px }
.cmshtml .mytabdivsouter { position: relative; margin-top: 40px }
.cmshtml .mytabdivs { }
.cmshtml .divdisplay { display: block; opacity: 1; transition: opacity 0.5s ease-in-out; position: absolute; top: 0; left: 0; width: 100% }
.cmshtml .divdisplaynone { display: block; opacity: 0; transition: opacity 0.5s ease-in-out; pointer-events: none; position: absolute; top: 0; left: 0; width: 100% }
.cmshtml .mytransparent, .cmshtml .mytransparent div { position: static !important }
.cmshtml .mytransparent img { max-width: 100% }
.cmshtml .mysection06studios { position: absolute; left: 63.0729%; bottom: 0; display: flex; flex-wrap: wrap; width: 400px }
.cmshtml .mysection06studios > div { width: 200px; margin-top: 18px }
.cmshtml .mytabs p { display: inline-block; border-bottom: 1px solid transparent; cursor: pointer; transition: .4s; font-size: 16px }
.cmshtml .mytabs p:hover { color: #777 }
.cmshtml .tabactive p { border-bottom: 1px solid #000; font-size: 18px }
.cmshtml .containermysection07 { margin-top: 180px; padding: 183px 0 193px; transition: background-color 1.5s ease }
.cmshtml .mysection07color { background-color: #517784 !important }
.cmshtml .mysection07colorw { background-color: transparent !important }
.cmshtml .mysection07staff { max-width: 1584px; margin: 0 auto; display: flex; justify-content: space-between; align-items: flex-end; padding: 0 16px; background-image: url(../img/common/back08.png); background-repeat: no-repeat; background-position: center 43%; background-size: 100% }
.cmshtml .mysection07left { width: 38.2087% }
.cmshtml .mysection07left img { max-width: 100% }
.cmshtml .mysection07right { width: 56.25%; display: flex; flex-wrap: wrap; justify-content: space-between }
.cmshtml .mysection07text { width: 100%; margin-bottom: 135px }
.cmshtml .mysection07title { display: flex; align-items: center }
.cmshtml .mysection07title h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #fff; font-size: 44px; letter-spacing: 2px }
.cmshtml .mysection07title h3 { color: #fff; font-size: 24px; margin-left: 24px }
.cmshtml .mysection07img { width: 45.1317% }
.cmshtml .mysection07img img { max-width: 100% }
.cmshtml .mysection07innertext { color: #fff; margin-top: 22px; font-size: 18px }
.cmshtml .mysection07btn { margin-top: 44px }
.cmshtml .mysection07flowouter { max-width: 1584px; margin: 0 auto; padding: 197px 16px 0 }
.cmshtml .mysection07flowinner { background-image: url(../img/common/back09.png); background-repeat: no-repeat; background-position: left 4.3229vw; background-size: 100% }
.cmshtml .mysection07flow { display: flex; justify-content: space-between }
.cmshtml .mysection07flowleft { width: 65.7197%; padding: 9.6354vw 0 0 10.101% }
.cmshtml .mysection07flowtext { width: 100% }
.cmshtml .mysection07flowright { width: 34.2803% }
.cmshtml .mysection07flowright img { max-width: 100% }
.cmshtml .mysection07flowimg { display: flex }
.cmshtml .mysection07flowimgleft { width: 33.1439%; text-align: center; padding-top: 17.3437vw }
.cmshtml .mysection07flowimgleft img { width: 62.4761% }
.cmshtml .mysection07flowimgright { width: 66.8561% }
.cmshtml .mysection07flowimgright img { width: 83.0028% }
.cmshtml .mysection07item { max-width: 1584px; margin: 200px auto 0; display: flex; justify-content: space-between; align-items: flex-end; padding: 0 16px; background-image: url(../img/common/back08.png); background-repeat: no-repeat; background-position: center 43%; background-size: 100% }
.cmshtml .mysection07item .mysection07left { order: 2 }
.cmshtml .mysection07item .mysection07right { order: 1 }
.cmshtml .mysection07item .mysection07text { padding-left: 18% }
.cmshtml .containermysection08 { max-width: 1640px; margin: 140px auto 0; display: flex; justify-content: space-between; padding: 0 16px }
.cmshtml .mysection08 { width: 46.6417% }
.cmshtml .mynewarticles { margin-top: 48px }
.cmshtml .mysection08btn { text-align: right; margin-top: 64px }
.cmshtml footer { text-align: center; padding: 112px 16px 144px }
.cmshtml footer h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2f2f2f; font-size: 58px; letter-spacing: 4px; line-height: 1.3 }
.cmshtml footer h3 { color: #2c2c2c; font-size: 22px; letter-spacing: 2px }
.cmshtml .footertext { margin-top: 43px }
.cmshtml .footerbtn { display: flex; justify-content: center; margin-top: 68px }
.cmshtml .footerbtn > div { margin: 0 30px !important; width: 24.4791% }
.cmshtml .footerbtn a { display: block; text-decoration: none; color: #fff; font-size: 26px; background-color: #475059; padding: 26px 0; transition: .3s; letter-spacing: 2px }
.cmshtml .footerbtn a:hover { background-color: #727b83 }
.cmshtml .footernotice { margin-top: 44px }
.cmshtml #footercopy { background-color: #475059; color: #fff; text-align: center; padding: 24px 0; font-size: 15px }
.cmshtml #footerbackground { position: fixed; top: 0; right: 0; bottom: 0; left: 0; display: flex; align-items: flex-end; z-index: -1 }
.cmshtml #footerbackgroundinner { max-width: 1920px; margin: 0 auto }
.cmshtml #footerbackgroundinner img { max-width: 100% }
.cmshtml #sidefixedbtn { position: fixed; top: 128px; right: 0 }
.cmshtml .noscroll #sidefixedbtn { right: 17px }
.cmshtml #sidefixedbtn01, .cmshtml #sidefixedbtn02, .cmshtml #sidefixedbtn03 { background-color: #fff }
.cmshtml #sidefixedbtn02 { margin-top: 3px }
.cmshtml #sidefixedbtn01 a, .cmshtml #sidefixedbtn02 a { display: block; background-color: #475059; color: #fff; text-decoration: none; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; width: 62px; padding: 36px 0; display: flex; align-items: center }
.cmshtml #sidefixedbtn03 { margin-top: 3px; width: 62px }
.cmshtml #sidefixedbtn a { transition: .5s }
.cmshtml #sidefixedbtn a:hover { opacity: .8 }
.cmshtml #containerdrawerhamberger { position: fixed; top: 24px; right: 32px; z-index: 9999 }
.cmshtml #drawertoggle { display: none }
.cmshtml #drawerhamberger { display: block; cursor: pointer }
.cmshtml .noscroll #drawerhamberger { padding-right: 17px }
.cmshtml .bar { display: block; width: 42px; height: 2px; margin-top: 8px; background-color: #2c2c2c; transition: .4s }
.cmshtml .bar:nth-child(2) { width: 30px }
.cmshtml #drawertoggle:checked + #drawerhamberger .bar:nth-child(1) { transform: rotate(45deg) translate(7px, 7px); background-color: #fff }
.cmshtml #drawertoggle:checked + #drawerhamberger .bar:nth-child(2) { opacity: 0 }
.cmshtml #drawertoggle:checked + #drawerhamberger .bar:nth-child(3) { transform: rotate(-45deg) translate(7px, -7px); background-color: #fff }
.cmshtml label { caret-color: transparent }
.cmshtml #mymodal { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: #fff; overflow-y: auto; transition: opacity .5s; z-index: -999; background-image: url(../img/common/back01.jpg); height: 100vh; width: 100vw !important }
.cmshtml .mymodal-hide { opacity: 0 }
.cmshtml .mymodal-show { opacity: 1 !important; z-index: 999 }
.cmshtml .noscroll { overflow: hidden; padding-right: 17px }
.cmshtml #mymodalinner { display: flex }
.cmshtml #mymodalleft { width: 60.9896% }
.cmshtml #modallogo { padding: 18px 0 0 27px }
.cmshtml #mymodalleftouter { display: flex; justify-content: center; margin-top: 40px }
.cmshtml #mymodalleftinner { }
.cmshtml #mymodallefttitle h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #2c2c2c; font-size: 42px; letter-spacing: 4px }
.cmshtml #modalnav { display: flex; margin-top: 24px }
.cmshtml #modalnav a { text-decoration: none; white-space: nowrap; display: block; transition: .3s }
.cmshtml #modalnav a:hover { opacity: .8 }
.cmshtml #modalnav01 { }
.cmshtml #modalnav02 { margin-left: 80px }
.cmshtml .modalnavtop a { font-size: 20px; font-weight: 500; border-bottom: 1px solid #2c2c2c; width: 313px; padding-bottom: 8px; background-image: url(../img/common/back03.png); background-repeat: no-repeat; background-position: 92% center }
.cmshtml .modalnavtop a:hover { background-position: 96% center }
.cmshtml .modalnavparent a { font-size: 20px; font-weight: 500 }
.cmshtml .modalnavchild a { padding-left: 32px }
.cmshtml .modalnavtop + .modalnavparent { margin-top: 29px }
.cmshtml .modalnavparent + .modalnavparent { margin-top: 24px }
.cmshtml .modalnavparent + .modalnavchild { margin-top: 12px }
.cmshtml .modalnavchild + .modalnavparent { margin-top: 32px }
.cmshtml .modalnavchild + .modalnavchild { margin-top: 5px }
.cmshtml #mymodalright { width: 39.0104%; position: relative; text-align: center }
.cmshtml #mymodalimg { font-size: 0; height: auto }
.cmshtml #mymodalimg img { width: 100%; height: auto; object-fit: cover; aspect-ratio: 9 / 16; min-height:1338px; }
.cmshtml #mymodalrightouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0, 0, 0, .4); display: flex; justify-content: center; align-items: center }
.cmshtml #mymodalrightinner { width: 68% }
.cmshtml #mymodalrighttitle h2 { font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; color: #fff; font-size: 42px; letter-spacing: 4px }
.cmshtml #mymodalrightbtn { margin-top: 60px }
.cmshtml #mymodalrightbtn > div:nth-child(2) { margin-top: 35px }
.cmshtml #mymodalrightbtn a { display: block; color: #2c2c2c; background-color: #fff; text-decoration: none; margin: 0 auto; letter-spacing: 3px; padding: 26px 0; font-size: 22px; transition: .4s }
.cmshtml #mymodalrightbtn a:hover { opacity: .8 }
.cmshtml #mymodalrighttext { color: #fff; margin-top: 40px; font-size: 18px }
.cmshtml button, .cmshtml input[type='submit'], .cmshtml 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: #475059; border-radius: 2px; border: none; padding: 8px }
.cmshtml .noscroll #pt { right: 33px }
.cmshtml #pt a { color: #fff; text-decoration: none }
.cmshtml #pt span { font-size: 32px; display: block }
.myfaq { padding: 10px }
.myfaq dt { position: relative; padding: 8px 40px; font-weight: 500; cursor: pointer }
.myfaq dt::before { position: absolute; font-size: 20px; font-family: 'Font Awesome 6 Free'; left: 16px; top: 8px; content: '\f059' }
.myfaq dt div { display: block; position: absolute; top: 8px; right: 16px; transition: .4s }
.myfaq dd { position: relative; padding: 0 16px 16px 58px; display: none }
.myfaq dd::before { position: absolute; font-size: 20px; font-family: 'Font Awesome 6 Free'; left: 32px; top: 0; content: '\f083'; font-weight: bold }
.faqopen { transform: rotate(180deg) }

/* 新着情報 */
.cmshtml .mynewarticles .rdnewArticle-item { display: flex !important; padding: 0 !important; align-items: flex-start !important; border-bottom: 1px solid #333 !important; padding-bottom: 56px !important }
.cmshtml .mynewarticles .rdnewArticle-thumbnail { display: block !important; width: 200px !important; height: 140px !important; margin: 0 0 0 24px !important; flex: none !important; order: 2 }
.cmshtml .mynewarticles .rdnewArticle-thumbnail-image { width: 100% !important; height: 140px !important; object-fit: cover !important; border-radius: 0 }
.cmshtml .mynewarticles .rdnewArticle-contWrap { width: calc(100% - 224px) !important; order: 1; flex: none !important }
.cmshtml .mynewarticles .rdnewArticle-ContDate { font-size: 16px !important }
.cmshtml .mynewarticles .rdnewArticle-ContTitle { margin-top: 4px !important }
.cmshtml .mynewarticles .rdnewArticle-ContLink { text-decoration: none; color: #000 }
.cmshtml .mynewarticles .rdnewArticle-item + .rdnewArticle-item { margin-top: 56px !important; border-top: none !important }

/* ブログ */
.cmshtml #myblogframe { width: 1048px; margin: 56px auto 0; display: flex; justify-content: space-between }
.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; font-size: 92% !important; padding: 2px 8px; border-bottom: none }
.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 .rdarticleTitleText, .cmshtml .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 #2c2c2c !important; padding-bottom: 6px; font-size: 26px !important; font-weight: 550 !important }
.cmshtml #wrapper .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 .rdnewArticle-item + .rdnewArticle-item, .cmshtml #myblogframe .rdCategorylist-item + .rdCategorylist-item, .cmshtml #myblogframe .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 .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 .mycommonarea { margin-top: 56px }
.cmshtml #maincontents { margin-top: 56px }
}

@media (min-width: 1080px) and (max-width: 1439px) {
.cmshtml .mysection02 { width: 56%; padding: 0 0 0 8% }
.cmshtml .mysection02img { width: 44%; padding: 0 0 5.46875vw 6.0416vw }
.cmshtml .myslick01title, .cmshtml .mysection03gridtext { font-size: 19px; word-spacing: 4px; letter-spacing: 3px }
.cmshtml .mysection06studios { margin-top: 0 }
.cmshtml .modalnavtop a { width: 240px }
.cmshtml #modalnav02 { margin-left: 64px }
}

@media (min-width: 1080px) and (max-width: 1656px) {
.cmshtml .mysection06studios { position: relative }
.cmshtml .mysection06studios > div { width: 200px; margin-top: 18px }
}
@media (min-width: 1080px) and (max-width: 1280px) {
.cmshtml .myslick03name { font-size: 30px}
.cmshtml .myslick03title { margin-top: 32px; font-size: 20px }
.cmshtml .myslick03info { margin-top: 32px; line-height: 1.7 }
.cmshtml .myslick03btn { margin-top: 32px }
}

.cmshtml .back02 { background-color: #fff }
.cmshtml .ItemrdListTagListItem { border: none !important; background: rgb(var(--blogcolor)) !important; border-radius: 4px !important }
.cmshtml .rdCategorylist-item + .rdCategorylist-item, .cmshtml .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 .rdTaglist-link, .cmshtml .rdTaglist-link::before, .cmshtml .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 }

/* WC編集画面用 */
#editView .myslick > div { display: inline-block }
#editView header { position: static }
#editView #globalnav edit, #editView .myslick02link edit, #editView .link01 edit, #editView .link01w edit, #editView .mysection05studios edit, #editView #modalnav edit { padding: 16px !important }
#editView #slidetext { position: static; color: #666 }
#editView .mysection03gridtext, #editView .mysection03gridtext a { position: static }
#editView .mytabdivs { height: auto }
#editView .mytabdivs > div { position: static }
#editView .divdisplaynone { opacity: 1; pointer-events: auto }
#editView #footerbackground { position: static }
#editView #pt { position: static }
#editView h3 edit { display: inline !important }
#editView .containermysection02 > div:nth-child(1) { width: 44.0625%; padding: 0 0 0 4% }
#editView .containermysection02 > div:nth-child(2) { width: 55.9375%; padding: 0 0 5.46875vw 6.0416vw; display: flex; align-items: flex-end }
#editView .mysection02 { width: 100%; padding: 0 }
#editView .mysection02img { width: 100%; padding: 0; display: block }
#editView .mysection03btn { margin-top: 0 }
#editView .containermysection05 { background-position: center top; align-items: flex-start }
#editView .mytabdivs { height: auto }
#editView .containermysection07 { background-color: #517784 }
#editView .mysection07staff > div:nth-child(1) { width: 38.2087% }
#editView .mysection07staff > div:nth-child(2) { width: 56.25% }
#editView .mysection07item > div:nth-child(1) { width: 38.2087% }
#editView .mysection07item > div:nth-child(2) { width: 56.25% }
#editView .mysection07left { width: 100% }
#editView .mysection07right { width: 100% }
#editView .mysection07flow > div:nth-child(1) { width: 65.7197%; padding: 9.6354vw 0 0 10.101% }
#editView .mysection07flow > div:nth-child(2) { width: 34.2803% }
#editView .mysection07flowleft { width: 100%; padding: 0 }
#editView .mysection07flowright { width: 100% }
#editView .mysection07flowimg > div:nth-child(1) { width: 33.1439%; text-align: center; padding-top: 17.3437vw }
#editView .mysection07flowimg > div:nth-child(2) { width: 66.8561% }
#editView .mysection07flowimgleft { width: 100%; padding-top: 0 }
#editView .mysection07flowimgright { width: 100% }
#editView .containermysection08 > div { width: 46.6417% }
#editView .mysection08 { width: 100% }
#editView .mysection03grid > div:nth-child(1) { grid-area: 1 / 1 / 2 / 2; position: relative }
#editView .mysection03grid > div:nth-child(2) { grid-area: 1 / 2 / 2 / 3; position: relative }
#editView .mysection03grid > div:nth-child(3) { grid-area: 1 / 3 / 3 / 5; position: relative }
#editView .mysection03grid > div:nth-child(4) { grid-area: 2 / 1 / 4 / 3; position: relative }
#editView .mysection03grid > div:nth-child(5) { grid-area: 3 / 3 / 4 / 4; position: relative }
#editView .mysection03grid > div:nth-child(6) { grid-area: 3 / 4 / 4 / 5; position: relative }
#editView #sidefixedbtn { position: static }
#editView #containerdrawerhamberger { position: static; display: none }
#editView #mymodal { position: static; z-index: 1height: auto; width: 100% !important }
#editView .mymodal-hide { opacity: 1 }
#editView #mymodalrightouter { position: static }
#editView #wrapper #pagetitleouter { position: static !important }
#editView .myfaq dd { display: block }
#editView .mytransparent { display: none }
#editView .myslick03outer > div:nth-child(1) { width: 50.2604% }
#editView .myslick03outer > div:nth-child(2) { width: 49.7396%; padding: 0 0 0 12.8125% }
#editView .myslick03img { width: 100% }
#editView .myslick03imgp0 { width: 100% }
#editView .myslick03inner { width: 100%; padding: 0 }
#editView .mysection07img { width: 100% }
#editView #uvbfaemy10in3iioc6piiz6kdzh77fznn { max-width: 1079px !important; margin: 0 auto !important }



/* 共通装飾指定 */
/* 見出し */
.cmshtml h2 { font-weight: 500 !important }
.cmshtml h3 { font-weight: 400 !important }
.cmshtml .rdplanetitle h2 { font-size: 30px !important; font-weight: 550 !important }
.cmshtml .rdplanetitle h3 { font-size: 26px !important; font-weight: 450 !important; border-bottom: 4px solid #eee; position: relative; padding-bottom: 6px }
.cmshtml .rdplanetitle h3::after { border-bottom: 4px solid rgb(var(--basecolor)); content: ''; position: absolute; bottom: -4px; left: 0; width: 38.2%; height: 4px }
.cmshtml .rdplanetitle h4 { font-size: 22px !important; font-weight: 500 !important; border-bottom: 2px solid rgba(var(--basecolor), .32); padding-bottom: 4px; color: rgb(var(--basecolor)) }
.cmshtml .rdplanetitle h5 { font-size: 22px !important; font-weight: 500 !important }
.cmshtml .rdplanetitle h5::before { font-family: 'Font Awesome 6 Free'; content: '\f101\00a0'; font-weight: bold; color: rgba(var(--basecolor)) }
#editView .rdplanetitle h5 edit { display: inline-block !important }
.cmshtml .rdplanetitle h6 { font-size: 20px !important; font-weight: 500 !important; background-color: #eee; padding: 2px 8px; border: 1px solid #e8e8e8 }

@media (max-width: 1079px) {
.cmshtml .rdplanetitle h2 { font-size: 21px !important }
.cmshtml .rdplanetitle h3 { font-size: 19px !important; border-bottom: 3px solid #eee }
.cmshtml .rdplanetitle h3::after { border-bottom: 3px solid rgb(var(--basecolor)); bottom: -3px; height: 3px; width: 38.2% }
.cmshtml .rdplanetitle h4 { font-size: 17px !important }
.cmshtml .rdplanetitle h5 { font-size: 17px !important }
.cmshtml .rdplanetitle h6 { font-size: 16px !important; padding: 2px 4px }
}

/* 単体エリア・横並びエリア */
@media (max-width: 1079px) {
.cmshtml .box01 { max-width: 100% !important; padding: 0 3% }
.cmshtml .flex50 { flex: 0 1 50% !important }
}

/* リンク */
.cmshtml .link02 a { display: block; text-align: center }
.cmshtml .link01 a, .cmshtml .link02 a { padding: 8px 96px 10px 26px; color: #2c2c2c; text-decoration: none; transition: .3s; font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; font-size: 18px; border-bottom: 2px solid #2c2c2c; background-image: url(../img/common/back03.png); background-repeat: no-repeat; background-position: calc(100% - 36px) center; letter-spacing: 2px }
.cmshtml .link01 a:hover, .cmshtml .link02 a:hover { opacity: .8; background-position: calc(100% - 28px) center }
.cmshtml .link01w a, .cmshtml .link01l a { display: inline-block }
.cmshtml .link01w a { padding: 8px 128px 8px 46px; color: #fff; text-decoration: none; transition: .3s; font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; font-size: 20px; border-bottom: 2px solid #fff; background-image: url(../img/common/back07.png); background-repeat: no-repeat; background-position: 80% center }
.cmshtml .link01l a { padding: 8px 128px 8px 46px; color: #2c2c2c; text-decoration: none; transition: .3s; font-family: 'Sorts Mill Goudy', 'Noto Serif JP', serif; font-size: 20px; border-bottom: 2px solid #2c2c2c; background-image: url(../img/common/back03.png); background-repeat: no-repeat; background-position: 80% center }
.cmshtml .link01w a:hover, .cmshtml .link01l a:hover { opacity: .8; background-position: 86% center }

@media (max-width: 1079px) {
.cmshtml .link01 a, .cmshtml .link02 a, .cmshtml .link01w a, .cmshtml .link01l a { padding: 8px 56px 8px 24px; font-size: 18px; background-position: calc(100% - 16px) center }
}
.cmshtml .link03 a { display: inline-block }
.cmshtml .link04 a { display: block }
.cmshtml .link03 a, .cmshtml .link04 a { padding: 16px 40px; color: #fff; text-decoration: none; transition: .3s; border: 2px solid #475059; font-weight: 500; background-color: #475059; text-align: center }
.cmshtml .link03 a:hover, .cmshtml .link04 a:hover { opacity: .72 }

@media (max-width: 1079px) {
.cmshtml .link03 a, .cmshtml .link04 a { padding: 8px 24px }
.cmshtml .link03 a::after, .cmshtml .link04 a::after { margin-left: 16px }
}

/* ボーダーありテーブル */
.cmshtml .tbl01 th, .cmshtml .tbl01 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 }
}