@charset "utf-8";

@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block; src: url('/data/common/c2101a086701/css/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'), url('/data/common/c2101a086701/css/fontawesome/webfonts/fa-solid-900.ttf') format('truetype') }

:root { --basecolor: 168, 208, 112 }
:root { --textcolor: 51, 51, 51 }
:root { --bordercolor: 221, 221, 221 }
:root { --blogcolor: 168, 208, 112 }

.cmshtml { scroll-behavior: smooth }
.cmshtml * { box-sizing: border-box; -webkit-tap-highlight-color: transparent }
.cmshtml body { margin: 0; background-color: #fff; color: rgb(var(--textcolor)); line-height: 1.732; font-size: clamp(15px, calc(0.142vw + 14.47px), 16px); font-family: 'Noto Sans JP', sans-serif }
.cmshtml section, div, dl { display: flow-root }
.cmshtml p { margin: 0 }
.cmshtml a { color: rgba(0, 51, 204, 1) }
.cmshtml a:hover { color: rgba(0, 51, 204, .64) }
.cmshtml :is(ul, ol, dl, dt, dd) { margin: 0; padding: 0 }
.cmshtml :is(h1, h2, h3, h4, h5, h6) { margin: 0 }
.cmshtml img { border: none; vertical-align: top }
.cmshtml a img { transition: .3s }
.cmshtml a:hover img { opacity: .72 }
.cmshtml #wrapper img { height: auto }
.cmshtml mark { background: linear-gradient(transparent 64%, #ffdfef 64%); color: #000; padding: 0 1px 1px }
.cmshtml label { display: block; caret-color: transparent }
.cmshtml :is(input[type='text'], input[type='file'], input[type='email'], input[type='tel'], input[type='number'], input[type='date'], input[type='password'], textarea, select) { border: 2px solid #ddd !important; transition: .3s !important; outline: none }
.cmshtml :is(input[type='text'], input[type='file'], input[type='email'], input[type='tel'], input[type='number'], input[type='date'], input[type='password'], textarea, select):focus { border-color: #1b95e0 !important; box-shadow: none !important }
.cmshtml :is(button, input[type='submit'], input[type='button']) { transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Sans JP', sans-serif; border: 2px solid rgb(var(--basecolor)) !important; color: #fff; background: rgb(var(--basecolor)) !important }
.cmshtml :is(button[type='submit'], input[type='submit'], input[type='button']):hover { color: rgb(var(--basecolor)) !important; background: #fff !important; box-shadow: none !important }
.cmshtml button[type='reset'], .rdcontact_btn_back { border: 3px solid #ccc !important; background: #fff !important; margin-right: 8px; transition: .3s !important; font-size: 92%; cursor: pointer; font-family: 'Noto Sans JP', sans-serif; font-weight: 500; color: #999 !important }
.cmshtml button[type='reset']:hover, .rdcontact_btn_back:hover { opacity: .64; box-shadow: none !important }
.cmshtml form dl { background-color: rgb(250, 249, 244); border: 1px solid rgb(239, 237, 222); border-radius: 8px; padding: 8px 16px !important }
.cmshtml form dt { margin-bottom: 4px !important; font-size: 92% }
.cmshtml .contact_item_title::before { font-family: 'Font Awesome 6 Free'; content: '\f0da\00a0'; font-weight: 900 }
.cmshtml form dt span { color: #fff; font-weight: 400; font-size: 75%; line-height: 1.1; padding: 1px 4px 3px; border-radius: 4px; border: none; background-color: #f90; display: inline-block; margin-left: 8px }
.cmshtml form dd { margin-top: 12px }
.cmshtml textarea { width: calc(100% - 14px) }
.cmshtml .contact_item_title:not(:first-child) { margin-top: 16px !important }
.cmshtml caption { caption-side: bottom; font-size: 88%; margin-top: 8px; color: #777 }
.cmshtml figure img { max-width: 100% }
.cmshtml figcaption { text-align: center; font-size: 88%; margin-top: 8px }
.cmshtml table { border-collapse: collapse }
.cmshtml iframe { border: none }
.cmshtml strong { font-weight: 600 }

@-webkit-keyframes shiny {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0 }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.2 }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 0.4 }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0 }
}

@keyframes fluffy {
0% { transform: translateY(0) }
5% { transform: translateY(0) }
10% { transform: translateY(0) }
20% { transform: translateY(-15px) }
25% { transform: translateY(0) }
30% { transform: translateY(-15px) }
50% { transform: translateY(0) }
100% { transform: translateY(0) }
}

@media (max-width: 1079px) {
.cmsbody { font-weight: 300; 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; z-index: 999 }
.cmshtml #header { height: 60px; background-color: rgba(255, 255, 255, .9); border-bottom: 1px solid #f5f5f5; padding: 0 16px }
.cmshtml #headerinner { display: flex; justify-content: space-between; align-items: center; margin-top: 10px }
.cmshtml #headerlogo { width: 152px }
.cmshtml #headerlogo img { max-width: 100% }
.cmshtml #headerbtn a { display: inline-block; text-decoration: none; color: #fff; background-color: #0c8a8c; border-radius: 8px; font-weight: 500; font-size: 14px; padding: 5px 8px }
.cmshtml #containermainvisual { position: relative }
.cmshtml #mainvisual img { max-width: 100% }
.cmshtml #mainvisualtextouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml #mainvisualtext { width: clamp(320px, calc(22.695vw + 234.89px), 480px); padding: clamp(16px, calc(1.135vw + 11.74px), 24px); background-color: #fff; box-shadow: 0 0 10px rgba(0, 0, 0, .2); border-radius: 10px; text-align: center }
.cmshtml #mainvisualtexttitle { font-size: clamp(15px, calc(0.567vw + 12.87px), 19px); font-weight: 500 }
.cmshtml #mainvisualtextlogo { margin-top: 10px }
.cmshtml #mainvisualtextlogo img { width: clamp(224px, calc(4.539vw + 206.98px), 256px) }
.cmshtml #mainvisualtextfc { margin-top: 10px; padding: 5px; background-color: #70b6c3; color: #fff; font-size: 18px; font-weight: 500 }
.cmshtml #mainvisualcircles { position: absolute; right: 0; bottom: -48px; left: 0; text-align: center }
.cmshtml #mainvisualcircles img { width: 340px }
.cmshtml .containermysection01 { background: url(../img/fclp/back01.jpg) center top / cover no-repeat; text-align: center; padding: 75px 16px 32px }
.cmshtml .mysection01text { font-weight: 500; font-size: clamp(15px, calc(0.567vw + 12.87px), 19px) }
.cmshtml .mysection01btn { margin-top: clamp(25px, calc(2.695vw + 14.89px), 44px) }
.cmshtml .mysection01btn a { display: inline-block; position: relative; text-decoration: none; color: #fff; font-size: clamp(18px, calc(0.284vw + 16.94px), 20px); font-weight: 600; background-color: #0c8a8c; border-radius: 80px; padding: clamp(16px, calc(0.567vw + 13.87px), 20px) clamp(64px, calc(12.057vw + 18.79px), 149px); box-shadow: 0 0 10px rgba(0, 0, 0, .2); animation: fluffy 3s ease infinite; overflow: hidden }
.cmshtml .mysection01btn a::before { position: absolute; content: ''; display: inline-block; top: -180px; left: 0; width: 30px; height: 100%; background-color: #fff; animation: shiny 3s ease-in-out infinite }
.cmshtml .containermysection02 { background: url(../img/fclp/back02.jpg) center top / cover no-repeat; padding: 40px 16px }
.cmshtml .mysection02title { text-align: center }
.cmshtml .mysection02title dt { font-size: clamp(22px, calc(0.567vw + 19.87px), 26px); font-weight: 600 !important; color: #0076ba; line-height: 1 }
.cmshtml .mysection02title dd { font-size: clamp(44px, calc(1.135vw + 39.74px), 52px); font-weight: 600 !important; color: #c7deec; line-height: 1; letter-spacing: 3px; margin-top: 3px }
.cmshtml .mysection02 { max-width: 800px; margin: -26px auto 0; padding: 56px clamp(32px, calc(2.27vw + 23.49px), 48px) clamp(24px, calc(1.135vw + 19.74px), 32px); background-color: #fff; box-shadow: 0 0 10px rgba(0, 0, 0, .2); border-radius: 10px }
.cmshtml .mysection02movie { max-width: 560px; margin: 24px auto 0 }
.cmshtml .mysection02movie iframe { width: 100%; aspect-ratio: 16 / 9 }
.cmshtml .containermysection03 { margin-top: clamp(50px, calc(3.546vw + 36.7px), 75px); padding: 0 16px }
.cmshtml .mysection03title { font-size: clamp(21px, calc(1.277vw + 16.21px), 30px); font-weight: 600; color: #0076ba; line-height: 1.5; text-align: center }
.cmshtml .mysection03 { margin-top: 16px; align-items: center }
.cmshtml .mysection03 > div:nth-of-type(1) { text-align: center }
.cmshtml .mysection03 > div:nth-of-type(2) { text-align: center; margin-top: 24px }
.cmshtml .mysection03 img { max-width: clamp(280px, calc(28.369vw + 173.62px), 480px) !important }
.cmshtml .mysection03text01 { font-size: clamp(15px, calc(0.567vw + 12.87px), 19px); font-weight: 600 }
.cmshtml .mysection03text02 { font-size: clamp(15px, calc(0.567vw + 12.87px), 19px); line-height: 1.4; font-weight: 500; letter-spacing: 1px }
.cmshtml .mysection03text02 strong { display: inline-block; font-size: clamp(20px, calc(0.709vw + 17.34px), 25px); background: linear-gradient(transparent 60%, #fce774 0%) }
.cmshtml .mysection03text03 { margin-top: 16px }
.cmshtml .containermysection04 { background-color: #e6eff4; padding: 50px 16px }
.cmshtml .mysection04 { }
.cmshtml .mysection04 h2 { font-size: clamp(21px, calc(1.135vw + 16.74px), 29px); color: #0076ba; font-weight: 600; text-align: center; letter-spacing: 1px }
.cmshtml .mysection04text { margin-top: 24px }
.cmshtml .mysection04text strong { color: #da4889 }
.cmshtml .mysection04inner { margin-top: 40px; background-color: #fff; padding: 24px; border-radius: 10px; box-shadow: 0 0 10px rgba(0, 0, 0, .2) }
.cmshtml .mysection04 h3 { font-size: clamp(19px, calc(0.709vw + 16.34px), 24px); color: #0076ba; font-weight: 600; text-align: center; letter-spacing: 1px }
.cmshtml .mysection04flow { margin-top: 20px; text-align: center }
.cmshtml .mysection04flow > div { margin-bottom: 16px }
.cmshtml .mysection04flow > div:nth-of-type(odd) img { width: clamp(200px, calc(7.376vw + 172.34px), 252px) }
.cmshtml .mysection04flow > div:nth-of-type(even) img { width: clamp(96px, calc(2.837vw + 85.36px), 116px) }
.cmshtml .mysection04flowtext { font-weight: 500; color: #0076ba; font-size: 16px; margin-top: 6px }
.cmshtml .mysection04btn { margin-top: 40px; text-align: center }
.cmshtml .mysection04btn img { max-width: 100% }
.cmshtml .containermysection05 { margin: 40px 16px 0 }
.cmshtml .mysection05title h2 { font-size: clamp(21px, calc(1.135vw + 16.74px), 29px); font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection05lists { display: flex; justify-content: center; margin-top: 16px }
.cmshtml .mysection05listsinner strong { display: inline-block; font-size: clamp(19px, calc(0.709vw + 16.34px), 24px); background: url(../img/fclp/back03.png) left center no-repeat; padding-left: clamp(36px, calc(0.567vw + 33.87px), 40px); line-height: 2 }
.cmshtml .mysection05text { margin-top: 24px }
.cmshtml .mysection05img { text-align: center; margin-top: 16px }
.cmshtml .mysection05img img { width: 100%; max-width: 720px }
.cmshtml .containermysection06 { background: url(../img/fclp/back01.jpg) center top / cover no-repeat; text-align: center; padding: 40px 16px 56px }
.cmshtml .mysection06title h2 { font-size: clamp(21px, calc(1.135vw + 16.74px), 29px); font-weight: 600; color: #0076ba; letter-spacing: 1px }
.cmshtml .mysection06text { font-weight: 500; font-size: clamp(15px, calc(0.567vw + 12.87px), 19px); margin-top: 29px }
.cmshtml .mysection06btn { margin-top: 28px }
.cmshtml .mysection06btn a { display: inline-block; position: relative; text-decoration: none; color: #fff; font-size: clamp(18px, calc(0.284vw + 16.94px), 20px); font-weight: 600; background-color: #0c8a8c; border-radius: 80px; padding: clamp(16px, calc(0.567vw + 13.87px), 20px) clamp(64px, calc(12.057vw + 18.79px), 149px); box-shadow: 0 0 10px rgba(0, 0, 0, .2); animation: fluffy 3s ease infinite; overflow: hidden }
.cmshtml .mysection06btn a::before { position: absolute; content: ''; display: inline-block; top: -180px; left: 0; width: 30px; height: 100%; background-color: #fff; animation: shiny 3s ease-in-out infinite }
.cmshtml .containermysection07 { padding: 40px 16px 64px }
.cmshtml .mysection07title h2 { font-size: clamp(21px, calc(1.135vw + 16.74px), 29px); font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection07 { margin-top: 32px; display: flex; justify-content: center; flex-wrap: wrap; gap: 32px }
.cmshtml .mysection07 > div { width: 152px !important }
.cmshtml .mysection07title { text-align: center; height: 4em; display: flex; justify-content: center; align-items: center }
.cmshtml .mysection07title strong { color: #2f5583; font-size: 17px; letter-spacing: 1px; line-height: 1.5 }
.cmshtml .mysection07img { margin-top: 10px; text-align: center }
.cmshtml .mysection07img img { max-width: 100% }
.cmshtml .mysection07text { margin-top: 10px; line-height: 1.9 }
.cmshtml .containermysection08 { background: url(../img/fclp/back04.jpg) center top / cover no-repeat; padding: 48px 16px 32px }
.cmshtml .mysection08title h2 { font-size: clamp(21px, calc(1.135vw + 16.74px), 29px); font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection08text { margin-top: 24px; font-size: 16px }
.cmshtml .mysection08text br { display: none }
.cmshtml .mysection08 { margin-top: 40px }
.cmshtml .mysection08 > div { padding: 0 clamp(32px, calc(2.143vw + 8.86px), 50px) clamp(32px, calc(2.143vw + 8.86px), 50px); background-color: #fff; border-radius: 10px; box-shadow: 0 0 10px rgba(0, 0, 0, .2); margin-bottom: 32px }
.cmshtml .mysection08cases { margin-top: -20px }
.cmshtml .mysection08cases dt { font-size: clamp(36px, calc(1.702vw + 29.62px), 48px); font-weight: 600 !important; color: #c7deec; line-height: 1; text-align: center; letter-spacing: 2px }
.cmshtml .mysection08cases dd { font-size: clamp(18px, calc(0.851vw + 14.81px), 24px); font-weight: 600 !important; color: #0076ba; text-align: center; margin-top: 15px }
.cmshtml :is(.mysection08casestext01, .mysection08casestext02) { margin-top: 8px }
.cmshtml .mysection08casestext01 dt { font-size: clamp(16px, calc(0.567vw + 13.87px), 20px); font-weight: 600 !important; color: #da4889; text-align: center }
.cmshtml .mysection08casestext02 dt { font-size: clamp(16px, calc(0.567vw + 13.87px), 20px); font-weight: 600 !important; color: #da4889; text-align: center; line-height: 1.1 }
.cmshtml .mysection08casestext02 dt i { font-weight: 400 !important; font-style: normal; font-size: 16px }
.cmshtml :is(.mysection08casestext01, .mysection08casestext02) dd { margin-top: 24px }
.cmshtml .containermysection09 { background: url(../img/fclp/back05.jpg) center top / cover no-repeat; padding: 48px 16px }
.cmshtml .mysection09title h2 { font-size: clamp(21px, calc(1.135vw + 16.74px), 29px); font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection09 { margin-top: 16px }
.cmshtml .mysection09box { border-bottom: 1px solid #0076ba; padding: 8px }
.cmshtml .mysection09box strong { font-size: clamp(16px, calc(0.284vw + 14.94px), 18px) }
.cmshtml .mysection09box > div:not(:first-of-type) { margin-top: 2px }
.cmshtml .containermysection10 { background: url(../img/fclp/back06.jpg) center top / cover no-repeat; padding: 48px 16px }
.cmshtml .mysection10title h2 { font-size: clamp(21px, calc(1.135vw + 16.74px), 29px); font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection10text { text-align: center; margin-top: 16px }
.cmshtml .mysection10 { max-width: 850px; margin: 16px auto 0 }
.cmshtml .mysection10 > div { display: flex; background-color: #fff }
.cmshtml :is(.mysection10green, .mysection10blue) > div:nth-of-type(1) { width: 64px !important; padding: 20px 0 0 }
.cmshtml :is(.mysection10green, .mysection10blue) > div:nth-of-type(2) { width: calc(100% - 64px) !important; padding: 16px }
.cmshtml .mysection10green > div:nth-of-type(2) { border-bottom: 1px solid #0f8b8b }
.cmshtml .mysection10blue > div:nth-of-type(2) { border-bottom: 1px solid #0476b5 }
.cmshtml .mysection10num { text-align: center; line-height: 1.3; color: #fff }
.cmshtml .mysection10num dt { text-align: center; font-size: 14px; font-weight: 500 !important }
.cmshtml .mysection10num dd { text-align: center; font-size: 20px; font-weight: 600 !important }
.cmshtml .mysection10 div:nth-child(odd of .mysection10green) > div:nth-of-type(1) { background: url(../img/fclp/back08.png) center top no-repeat #0c8a8c }
.cmshtml .mysection10 div:nth-child(even of .mysection10green) > div:nth-of-type(1) { background: url(../img/fclp/back07.png) center top no-repeat #2aa5a7 }
.cmshtml .mysection10 div:nth-child(1 of .mysection10green) > div:nth-of-type(1) { background-image: none !important }
.cmshtml .mysection10 div:nth-child(odd of .mysection10blue) > div:nth-of-type(1) { background: url(../img/fclp/back10.png) center top no-repeat #1e95d9 }
.cmshtml .mysection10 div:nth-child(even of .mysection10blue) > div:nth-of-type(1) { background: url(../img/fclp/back09.png) center top no-repeat #0076ba }
.cmshtml .mysection10 div:nth-child(1 of .mysection10blue) > div:nth-of-type(1) { background-image: url(../img/fclp/back07.png) !important }
.cmshtml .mysection10desc { }
.cmshtml .mysection10desc strong { font-size: 17px }
.cmshtml footer { padding: 24px 14px; letter-spacing: 1px; text-align: center }
.cmshtml #footerinner { }
.cmshtml #footernav { margin-top: 16px }
.cmshtml #footernav a { text-decoration: none; color: rgb(var(--textcolor)) }
.cmshtml #footercopyright { margin-top: 16px; font-size: 13px }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 8px 16px }
.cmshtml .smalltac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 16px; right: 8px; display: none; opacity: 0; transition: opacity 0.5s ease }
.cmshtml #pt img { width: 40px; height: 40px }

.cmshtml #lppagetitle { height: 128px; display: flex; justify-content : center; align-items: center; font-size: 22px; color: #fff; font-weight: 600; background-color: #0076ba }
.cmshtml #lppagetitle > div { width: auto !important }
.cmshtml #maincontents { margin-bottom:  40px }
}

@media (min-width: 1080px) {
.cmsbody { font-weight: 300 }
.cmshtml :is(h1, .smallonly) { display: none }
.cmshtml #wrapper { position: relative; max-width: 1920px; margin: 0 auto }
.cmshtml header { position: sticky; top: 0; z-index: 999 }
.cmshtml #header { max-width: 1968px; margin: 0 auto; height: 80px; background-color: rgba(255, 255, 255, .9); border-bottom: 1px solid #f5f5f5; padding: 0 24px }
.cmshtml #headerinner { max-width: 1100px; margin: 0 auto; display: flex; justify-content: space-between; margin-top: 15px }
.cmshtml #headerbtn a { display: inline-block; text-decoration: none; color: #fff; background-color: #0c8a8c; border-radius: 10px; font-weight: 600; width: 240px; height: 50px; display: flex; justify-content: center; align-items: center; font-size: 15px; transition: .3s }
.cmshtml #headerbtn a:hover { opacity: .72 }
.cmshtml #containermainvisual { position: relative; max-width: 1920px; margin: 0 auto }
.cmshtml #mainvisual img { max-width: 100% }
.cmshtml #mainvisualtextouter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center }
.cmshtml #mainvisualtext { width: clamp(480px, calc(14.286vw + 325.71px), 600px); padding: clamp(24px, calc(1.905vw + 3.43px), 40px); background-color: #fff; box-shadow: 0 0 10px rgba(0, 0, 0, .2); border-radius: 10px; text-align: center }
.cmshtml #mainvisualtexttitle { font-size: clamp(19px, calc(0.595vw + 12.57px), 24px); font-weight: 500 }
.cmshtml #mainvisualtextlogo { margin-top: 14px }
.cmshtml #mainvisualtextlogo img { width: clamp(256px, calc(11.19vw + 135.14px), 350px) }
.cmshtml #mainvisualtextfc { margin-top: 15px; padding: clamp(5px, calc(0.238vw + 2.43px), 7px); background-color: #70b6c3; color: #fff; font-size: clamp(19px, calc(0.595vw + 12.57px), 24px); font-weight: 500 }
.cmshtml #mainvisualcircles { position: absolute; right: 0; bottom: clamp(-85px, calc(-4.405vw + -0.43px), -48px); left: 0; text-align: center }
.cmshtml #mainvisualcircles img { width: 31.25% }
.cmshtml .containermysection01 { background: url(../img/fclp/back01.jpg) center top / cover no-repeat; text-align: center; padding: 114px 24px 72px }
.cmshtml .mysection01text { font-weight: 500; font-size: 19px }
.cmshtml .mysection01btn { margin-top: 44px }
.cmshtml .mysection01btn a { display: inline-block; position: relative; text-decoration: none; color: #fff; font-size: 20px; font-weight: 600; background-color: #0c8a8c; border-radius: 80px; padding: 20px 149px; box-shadow: 0 0 10px rgba(0, 0, 0, .2); animation: fluffy 3s ease infinite; overflow: hidden; transition: .3s }
.cmshtml .mysection01btn a:hover { opacity: .72 }
.cmshtml .mysection01btn a::before { position: absolute; content: ''; display: inline-block; top: -180px; left: 0; width: 30px; height: 100%; background-color: #fff; animation: shiny 3s ease-in-out infinite }
.cmshtml .containermysection02 { background: url(../img/fclp/back02.jpg) center top / cover no-repeat; padding: clamp(56px, calc(2.857vw + 25.14px), 80px) 24px clamp(56px, calc(1.429vw + 40.57px), 68px) }
.cmshtml .mysection02title { text-align: center }
.cmshtml .mysection02title dt { font-size: clamp(26px, calc(0.476vw + 20.86px), 30px); font-weight: 600 !important; color: #0076ba; line-height: 1 }
.cmshtml .mysection02title dd { font-size: clamp(52px, calc(0.952vw + 41.71px), 60px); font-weight: 600 !important; color: #c7deec; line-height: 1; letter-spacing: 3px; margin-top: 3px }
.cmshtml .mysection02 { width: clamp(800px, calc(35.714vw + 414.29px), 1100px); margin: -26px auto 0; padding: clamp(56px, calc(2.857vw + 25.14px), 80px) clamp(48px, calc(2.619vw + 19.71px), 70px) clamp(32px, calc(3.333vw + -4px), 60px); background-color: #fff; box-shadow: 0 0 10px rgba(0, 0, 0, .2); border-radius: 10px }
.cmshtml .mysection02movie { width: clamp(560px, calc(28.571vw + 251.43px), 800px); margin: 24px auto 0 }
.cmshtml .mysection02movie iframe { width: 100%; aspect-ratio: 16 / 9 }
.cmshtml .containermysection03 { max-width: 1148px; margin: 75px auto 0; padding: 0 24px }
.cmshtml .mysection03title { font-size: 30px; font-weight: 600; color: #0076ba; line-height: 1.5; text-align: center }
.cmshtml .mysection03 { display: flex; justify-content: space-between; margin-top: 32px; align-items: center }
.cmshtml .mysection03 > div:nth-of-type(1) { width: 54.546%; padding-right: 40px }
.cmshtml .mysection03 > div:nth-of-type(2) { width: 45.454% }
.cmshtml .mysection03 img { max-width: 100% }
.cmshtml .mysection03text01 { font-size: 19px; font-weight: 600 }
.cmshtml .mysection03text02 { font-size: 19px; line-height: 1.4; font-weight: 500; letter-spacing: 1px }
.cmshtml .mysection03text02 strong { display: inline-block; font-size: 25px; background: linear-gradient(transparent 60%, #fce774 0%) }
.cmshtml .mysection03text03 { margin-top: 24px }
.cmshtml .containermysection04 { background-color: #e6eff4; padding: 68px 24px 75px }
.cmshtml .mysection04 { max-width: 1100px; margin: 0 auto }
.cmshtml .mysection04 h2 { font-size: 29px; color: #0076ba; font-weight: 600; text-align: center; letter-spacing: 1px }
.cmshtml .mysection04text { margin-top: 30px; line-height: 1.9 }
.cmshtml .mysection04text strong { color: #da4889 }
.cmshtml .mysection04inner { margin-top: 50px; background-color: #fff; padding: 57px 60px; border-radius: 10px; box-shadow: 0 0 10px rgba(0, 0, 0, .2) }
.cmshtml .mysection04 h3 { font-size: 24px; color: #0076ba; font-weight: 600; text-align: center; letter-spacing: 1px }
.cmshtml .mysection04flow { margin-top: 25px; display: flex; justify-content: space-between; text-align: center }
.cmshtml .mysection04flow > div:nth-of-type(odd) { width: 25%; max-width: 252px }
.cmshtml .mysection04flow > div:nth-of-type(even) { width: 10%; max-width: 100px }
.cmshtml .mysection04flow img { max-width: 100% }
.cmshtml .mysection04flowtext { font-weight: 500; color: #0076ba; font-size: 17px; margin-top: 6px }
.cmshtml .mysection04btn { margin-top: 52px; text-align: right }
.cmshtml .containermysection05 { max-width: 1100px; margin: 68px auto 0 }
.cmshtml .mysection05title h2 { font-size: 29px; font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection05lists { display: flex; justify-content: center; margin-top: 23px }
.cmshtml .mysection05listsinner strong { display: inline-block; font-size: 24px; background: url(../img/fclp/back03.png) left center no-repeat; padding-left: 40px; line-height: 2 }
.cmshtml .mysection05text { margin-top: 35px; text-align: center }
.cmshtml .mysection05img { text-align: center; margin-top: 20px }
.cmshtml .mysection05img img { width: clamp(720px, calc(15.476vw + 552.86px), 850px) }
.cmshtml .containermysection06 { background: url(../img/fclp/back01.jpg) center top / cover no-repeat; text-align: center; padding: 71px 24px 81px }
.cmshtml .mysection06title h2 { font-size: 29px; font-weight: 600; color: #0076ba; letter-spacing: 1px }
.cmshtml .mysection06text { font-weight: 500; font-size: 19px; margin-top: 29px }
.cmshtml .mysection06btn { margin-top: 28px }
.cmshtml .mysection06btn a { display: inline-block; position: relative; text-decoration: none; color: #fff; font-size: 20px; font-weight: 600; background-color: #0c8a8c; border-radius: 80px; padding: 20px 149px; box-shadow: 0 0 10px rgba(0, 0, 0, .2); animation: fluffy 3s ease infinite; overflow: hidden; transition: .3s }
.cmshtml .mysection06btn a:hover { opacity: .72 }
.cmshtml .mysection06btn a::before { position: absolute; content: ''; display: inline-block; top: -180px; left: 0; width: 30px; height: 100%; background-color: #fff; animation: shiny 3s ease-in-out infinite }
.cmshtml .containermysection07 { max-width: 1100px; margin: 0 auto; padding: 70px 24px 95px }
.cmshtml .mysection07title h2 { font-size: 29px; font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection07 { margin-top: 47px; display: flex; justify-content: center; flex-wrap: wrap; gap: 40px }
.cmshtml .mysection07 > div { width: calc(25% - 30px) }
.cmshtml .mysection07title { text-align: center }
.cmshtml .mysection07title strong { color: #2f5583; font-size: 17px; letter-spacing: 1px }
.cmshtml .mysection07img { margin-top: 10px; text-align: center }
.cmshtml .mysection07img img { max-width: 100% }
.cmshtml .mysection07text { margin-top: 10px; line-height: 1.9 }
.cmshtml .containermysection08 { background: url(../img/fclp/back04.jpg) center top / cover no-repeat; padding: 70px 24px 75px }
.cmshtml .mysection08title h2 { font-size: 29px; font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection08text { text-align: center; margin-top: 30px; font-size: 17px }
.cmshtml .mysection08 { max-width: 1100px; margin: 53px auto 0; display: flex; justify-content: space-between }
.cmshtml .mysection08 > div { width: 48%; padding: 0 clamp(32px, calc(2.143vw + 8.86px), 50px) clamp(32px, calc(2.143vw + 8.86px), 50px); background-color: #fff; border-radius: 10px; box-shadow: 0 0 10px rgba(0, 0, 0, .2) }
.cmshtml .mysection08cases { margin-top: -30px }
.cmshtml .mysection08cases dt { font-size: 48px; font-weight: 600 !important; color: #c7deec; line-height: 1; text-align: center; letter-spacing: 2px }
.cmshtml .mysection08cases dd { font-size: 24px; font-weight: 600 !important; color: #0076ba; text-align: center; margin-top: 15px }
.cmshtml :is(.mysection08casestext01, .mysection08casestext02) { margin-top: 29px }
.cmshtml .mysection08casestext01 dt { font-size: 20px; font-weight: 600 !important; color: #da4889; text-align: center }
.cmshtml .mysection08casestext02 dt { font-size: 20px; font-weight: 600 !important; color: #da4889; text-align: center; line-height: 1.1 }
.cmshtml .mysection08casestext02 dt i { font-weight: 400 !important; font-style: normal; font-size: 16px }
.cmshtml :is(.mysection08casestext01, .mysection08casestext02) dd { margin-top: 24px }
.cmshtml .containermysection09 { background: url(../img/fclp/back05.jpg) center top / cover no-repeat; padding: 70px 24px 75px }
.cmshtml .mysection09title h2 { font-size: 29px; font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml #wrapper .mysection09 { max-width: 1100px; margin: 30px auto 0; padding-left: clamp(280px, calc(8.333vw + 190px), 350px) !important }
.cmshtml .mysection09box { border-bottom: 1px solid #0076ba; padding: 15px }
.cmshtml .mysection09box strong { font-size: clamp(18px, calc(0.119vw + 16.71px), 19px) }
.cmshtml .mysection09box > div:not(:first-of-type) { margin-top: 5px }
.cmshtml .containermysection10 { background: url(../img/fclp/back06.jpg) center top / cover no-repeat; padding: 70px 24px 75px }
.cmshtml .mysection10title h2 { font-size: 29px; font-weight: 600; color: #0076ba; text-align: center; letter-spacing: 1px }
.cmshtml .mysection10text { text-align: center; margin-top: 30px; font-size: 17px }
.cmshtml .mysection10 { max-width: 850px; margin: 18px auto 0 }
.cmshtml :is(.mysection10green, .mysection10blue) { display: flex; background-color: #fff }
.cmshtml :is(.mysection10green, .mysection10blue) > div:nth-of-type(1) { width: 100px; padding: 21px 0 0 }
.cmshtml :is(.mysection10green, .mysection10blue) > div:nth-of-type(2) { width: calc(100% - 100px); padding: 16px 24px 16px 32px }
.cmshtml .mysection10green > div:nth-of-type(2) { border-bottom: 1px solid #0f8b8b !important }
.cmshtml .mysection10blue > div:nth-of-type(2) { border-bottom: 1px solid #0476b5 !important }
.cmshtml .mysection10num { text-align: center; line-height: 1.3; color: #fff }
.cmshtml .mysection10num dt { text-align: center; font-size: 18px; font-weight: 600 !important }
.cmshtml .mysection10num dd { text-align: center; font-size: 24px; font-weight: 600 !important }
.cmshtml .mysection10 div:nth-child(odd of .mysection10green) > div:nth-of-type(1) { background: url(../img/fclp/back08.png) center top no-repeat #0c8a8c }
.cmshtml .mysection10 div:nth-child(even of .mysection10green) > div:nth-of-type(1) { background: url(../img/fclp/back07.png) center top no-repeat #2aa5a7 }
.cmshtml .mysection10 div:nth-child(1 of .mysection10green) > div:nth-of-type(1) { background-image: none !important }
.cmshtml .mysection10 div:nth-child(odd of .mysection10blue) > div:nth-of-type(1) { background: url(../img/fclp/back10.png) center top no-repeat #1e95d9 }
.cmshtml .mysection10 div:nth-child(even of .mysection10blue) > div:nth-of-type(1) { background: url(../img/fclp/back09.png) center top no-repeat #0076ba }
.cmshtml .mysection10 div:nth-child(1 of .mysection10blue) > div:nth-of-type(1) { background-image: url(../img/fclp/back07.png) !important }
.cmshtml .mysection10desc { font-size: 17px }
.cmshtml .mysection10desc strong { font-size: 19px }
.cmshtml footer { max-width: 1148px; margin: 0 auto; padding: 25px 24px 16px; letter-spacing: 1px }
.cmshtml #footerinner { display: flex; justify-content: space-between }
.cmshtml #footernav { display: flex; justify-content: flex-end; column-gap: 40px }
.cmshtml #footernav a { text-decoration: none; color: rgb(var(--textcolor)); transition: .3s }
.cmshtml #footernav a:hover { opacity: .72 }
.cmshtml #footercopyright { text-align: right; font-size: 13px }
.cmshtml :is(button, input[type='submit'], input[type='button']) { padding: 12px 24px }
.cmshtml .largetac { text-align: center }
.cmshtml #pt { position: fixed; bottom: 20px; right: 20px; display: none; opacity: 0; transition: opacity 0.5s ease }

.cmshtml #lppagetitle { height: 178px; display: flex; justify-content : center; align-items: center; font-size: 28px; color: #fff; font-weight: 600; background-color: #0076ba }
.cmshtml #maincontents { margin-bottom:  56px}
}

/* パンくずリスト */
.cmshtml .rdBreadcrumb { }
.cmshtml .rdBreadcrumbItem { word-spacing: 4px; font-size: 88% }
.cmshtml .rdBreadcrumbItem:first-child::before { font-family: 'Font Awesome 6 Free'; content: '\f0da'; font-weight: 900 }
.cmshtml .rdBreadcrumbArrow { color: #999 }
.cmshtml .rdBreadcrumbLink { text-decoration: none; color: #333 }
.cmshtml .rdBreadcrumbLink:hover { color: #777 }

/* U01スライドショー */
.cmshtml .rdsp-buttons { display: none }

/* U01編集画面用 */
#editView .cmsbody { margin: 0; background-color: #fff; color: rgb(var(--textcolor)); line-height: 1.732; font-size: clamp(15px, calc(0.284vw + 13.94px), 17px); font-family: 'Noto Sans JP', sans-serif }
#editView :is(#footernav) edit { padding: 16px }
#editView #pt { position: static; display: block; opacity: 1 }
#editView header { position: static }
#editView :is(.mysection07img01, .mysection07img02) { position: static }
#editView :is(#mainvisualtextouter, #mainvisualcircles) { position: static !important }
#editView .mysection01btn a::before { position: static; display: none; animation: none }
#editView .mysection02 { margin-top: 24px }

/* 単体エリア・横並びエリア */
@media (max-width: 1079px) {
.cmshtml .box01 { max-width: 100% !important; padding: 0 3% !important }
.cmshtml .flex50 { flex: 0 1 50% !important }
}

/* force.cssの「PC/SPでは非表示」のviewportサイズを上書き */
@media (max-width: 1079px) {
.cmshtml [data-rdhide="sp"] { display: none !important }
}
@media (min-width: 576px) and (max-width: 1079px) {
.cmshtml [data-rdhide="pc"] { display: block !important }
}
@media (min-width: 1080px) {
.cmshtml [data-rdhide="pc"] { display: none !important }
}

/* ショッピングシステムのfooter装飾 */
.cmshtml main footer { background-color: initial; padding: 0 }

.topicpath a { text-decoration: none }