@charset "UTF-8";
/****************************************************************
配色設定
****************************************************************/
/****************************************************************
フォント設定
****************************************************************/
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bellefair&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Allison&display=swap");
.en {
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif" !important;
}

.en-stroke {
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif" !important;
  -webkit-text-stroke: 1px #0177FB;
  text-stroke: 1px #0177FB;
  color: transparent;
}

.en-san {
  font-family: "", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", "Meiryo", "sans-serif" !important;
}

.en-serif {
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif" !important;
}

.en-hw {
  font-family: "Allison", cursive !important;
}

.ja {
  font-family: "Shippori Mincho", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif" !important;
}

.ja-san {
  font-family: "", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", "Meiryo", "sans-serif" !important;
}

.ja-serif {
  font-family: "Shippori Mincho", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif" !important;
}

/****************************************************************
アイコン設定
****************************************************************/
@font-face {
  font-family: "createfont";
  src: url("../js/dist/createfont/fonts/createfont.eot?vfpixk");
  src: url("../js/dist/createfont/fonts/createfont.eot?vfpixk#iefix") format("embedded-opentype"), url("../js/dist/createfont/fonts/createfont.ttf?vfpixk") format("truetype"), url("../js/dist/createfont/fonts/createfont.woff?vfpixk") format("woff"), url("../js/dist/createfont/fonts/createfont.svg?vfpixk#createfont") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
i.pseudo-icon {
  line-height: 1;
}

.pseudo-icon::before {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.pseudo-icon._angle-right::before {
  content: "\e901";
}
.pseudo-icon._calendar::before {
  content: "\e953";
}
.pseudo-icon._cart::before {
  content: "\e93a";
}
.pseudo-icon._checkbox-checked::before {
  content: "\ea52";
}
.pseudo-icon._checkmark::before {
  content: "\ea10";
}
.pseudo-icon._circle::before {
  content: "\e908";
}
.pseudo-icon._circle-right::before {
  content: "\ea42";
}
.pseudo-icon._circle-right-fill::before {
  content: "\e904";
}
.pseudo-icon._clock2::before {
  content: "\e94f";
}
.pseudo-icon._envelope::before {
  content: "\e906";
}
.pseudo-icon._exclamation-circle::before {
  content: "\e90c";
}
.pseudo-icon._exclamation-mark::before {
  content: "\e90b";
}
.pseudo-icon._fax::before {
  content: "\e907";
}
.pseudo-icon._free-dial::before {
  content: "\e90a";
}
.pseudo-icon._home3::before {
  content: "\e903";
}
.pseudo-icon._link::before {
  content: "\e905";
}
.pseudo-icon._location::before {
  content: "\e947";
}
.pseudo-icon._mobile::before {
  content: "\e958";
}
.pseudo-icon._paste::before {
  content: "\e92d";
}
.pseudo-icon._phone::before {
  content: "\e942";
}
.pseudo-icon._printer::before {
  content: "\e954";
}
.pseudo-icon._quotes-left::before {
  content: "\e977";
}
.pseudo-icon._quotes-right::before {
  content: "\e978";
}
.pseudo-icon._user::before {
  content: "\e971";
}
.pseudo-icon._reference-mark::before {
  content: "※";
}
.pseudo-icon._podcast::before {
  content: "\e90d";
}
.pseudo-icon._ameba::before {
  content: "\e909";
}
.pseudo-icon._facebook::before {
  content: "\ea90";
}
.pseudo-icon._instagram::before {
  content: "\ea92";
}
.pseudo-icon._line::before {
  content: "\e902";
}
.pseudo-icon._pinterest::before {
  content: "\ead1";
}
.pseudo-icon._tiktok::before {
  content: "\e900";
}
.pseudo-icon._twitter::before {
  content: "\ea96";
}
.pseudo-icon._youtube::before {
  content: "\ea9d";
}

.link-icon {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  color: #f8f9fa;
  letter-spacing: 0;
  background-color: #212529;
  border-radius: 100px;
}
.link-icon::before {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-block;
  font-size: 0.65em;
  font-weight: 400;
  transform: translate(-50%, -50%);
}
.link-icon._podcast {
  background-color: #853D93;
}
.link-icon._podcast::before {
  content: "\e90d";
}
.link-icon._ameba {
  background-color: #2d8c3c;
}
.link-icon._ameba::before {
  content: "\e909";
}
.link-icon._facebook {
  background-color: #315096;
}
.link-icon._facebook::before {
  content: "\ea90";
}
.link-icon._instagram {
  background-image: var(--instagram-gradient);
  background-size: 100% 100%;
}
.link-icon._instagram::before {
  content: "\ea92";
}
.link-icon._line {
  background-color: #00b900;
}
.link-icon._line::before {
  content: "\e902";
}
.link-icon._pinterest {
  background-color: #bd081c;
}
.link-icon._pinterest::before {
  content: "\ead1";
}
.link-icon._tiktok {
  background-color: #000;
}
.link-icon._tiktok::before {
  content: "\e900";
}
.link-icon._twitter {
  background-color: #1da1f2;
}
.link-icon._twitter::before {
  content: "\ea96";
}
.link-icon._youtube {
  background-color: #da1725;
}
.link-icon._youtube::before {
  content: "\ea9d";
}
.link-icon._angle-right {
  background-color: #0177FB;
}
.link-icon._angle-right::before {
  content: "\e901";
}
.link-icon._calendar {
  background-color: #0177FB;
}
.link-icon._calendar::before {
  content: "\e953";
}
.link-icon._cart {
  background-color: #0177FB;
}
.link-icon._cart::before {
  content: "\e93a";
}
.link-icon._checkbox-checked {
  background-color: #0177FB;
}
.link-icon._checkbox-checked::before {
  content: "\ea52";
}
.link-icon._checkmark {
  background-color: #0177FB;
}
.link-icon._checkmark::before {
  content: "\ea10";
}
.link-icon._circle {
  background-color: #0177FB;
}
.link-icon._circle::before {
  content: "\e908";
}
.link-icon._circle-right {
  background-color: #0177FB;
}
.link-icon._circle-right::before {
  content: "\ea42";
}
.link-icon._circle-right-fill {
  background-color: #0177FB;
}
.link-icon._circle-right-fill::before {
  content: "\e904";
}
.link-icon._clock2 {
  background-color: #0177FB;
}
.link-icon._clock2::before {
  content: "\e94f";
}
.link-icon._envelope {
  background-color: #0177FB;
}
.link-icon._envelope::before {
  content: "\e906";
}
.link-icon._exclamation-circle {
  background-color: #0177FB;
}
.link-icon._exclamation-circle::before {
  content: "\e90c";
}
.link-icon._exclamation-mark {
  background-color: #0177FB;
}
.link-icon._exclamation-mark::before {
  content: "\e90b";
}
.link-icon._fax {
  background-color: #0177FB;
}
.link-icon._fax::before {
  content: "\e907";
}
.link-icon._free-dial {
  background-color: #0177FB;
}
.link-icon._free-dial::before {
  content: "\e90a";
}
.link-icon._home3 {
  background-color: #0177FB;
}
.link-icon._home3::before {
  content: "\e903";
}
.link-icon._link {
  background-color: #0177FB;
}
.link-icon._link::before {
  content: "\e905";
}
.link-icon._location {
  background-color: #0177FB;
}
.link-icon._location::before {
  content: "\e947";
}
.link-icon._mobile {
  background-color: #0177FB;
}
.link-icon._mobile::before {
  content: "\e958";
}
.link-icon._paste {
  background-color: #0177FB;
}
.link-icon._paste::before {
  content: "\e92d";
}
.link-icon._phone {
  background-color: #0177FB;
}
.link-icon._phone::before {
  content: "\e942";
}
.link-icon._printer {
  background-color: #0177FB;
}
.link-icon._printer::before {
  content: "\e954";
}
.link-icon._quotes-left {
  background-color: #0177FB;
}
.link-icon._quotes-left::before {
  content: "\e977";
}
.link-icon._quotes-right {
  background-color: #0177FB;
}
.link-icon._quotes-right::before {
  content: "\e978";
}
.link-icon._user {
  background-color: #0177FB;
}
.link-icon._user::before {
  content: "\e971";
}
.link-icon._reference-mark {
  background-color: #0177FB;
}
.link-icon._reference-mark::before {
  content: "※";
}
.link-icon:hover {
  opacity: 0.8;
}
.link-icon:hover::before {
  color: white;
}

:root {
  --instagram-gradient:url("data:image/jpeg;base64,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DQAAAAAABAAAAFo4QklNBBkAAAAAAAQAAAAeOEJJTQPzAAAAAAAJAAAAAAAAAAABADhCSU0nEAAAAAAACgABAAAAAAAAAAI4QklNA/UAAAAAAEgAL2ZmAAEAbGZmAAYAAAAAAAEAL2ZmAAEAoZmaAAYAAAAAAAEAMgAAAAEAWgAAAAYAAAAAAAEANQAAAAEALQAAAAYAAAAAAAE4QklNA/gAAAAAAHAAAP////////////////////////////8D6AAAAAD/////////////////////////////A+gAAAAA/////////////////////////////wPoAAAAAP////////////////////////////8D6AAAOEJJTQQIAAAAAAAQAAAAAQAAAkAAAAJAAAAAADhCSU0ERAAAAAAAEAAAAAIAAAJAAAACQAAAAAA4QklNBB4AAAAAAAQAAAAAOEJJTQQaAAAAAANFAAAABgAAAAAAAAAAAAAAyAAAASwAAAAIADIAMgA4ADQAMAAyADgAOQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAABLAAAAMgAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAQAAAAAAAG51bGwAAAACAAAABmJvdW5kc09iamMAAAABAAAAAAAAUmN0MQAAAAQAAAAAVG9wIGxvbmcAAAAAAAAAAExlZnRsb25nAAAAAAAAAABCdG9tbG9uZwAAAMgAAAAAUmdodGxvbmcAAAEsAAAABnNsaWNlc1ZsTHMAAAABT2JqYwAAAAEAAAAAAAVzbGljZQAAABIAAAAHc2xpY2VJRGxvbmcAAAAAAAAAB2dyb3VwSURsb25nAAAAAAAAAAZvcmlnaW5lbnVtAAAADEVTbGljZU9yaWdpbgAAAA1hdXRvR2VuZXJhdGVkAAAAAFR5cGVlbnVtAAAACkVTbGljZVR5cGUAAAAASW1nIAAAAAZib3VuZHNPYmpjAAAAAQAAAAAAAFJjdDEAAAAEAAAAAFRvcCBsb25nAAAAAAAAAABMZWZ0bG9uZwAAAAAAAAAAQnRvbWxvbmcAAADIAAAAAFJnaHRsb25nAAABLAAAAAN1cmxURVhUAAAAAQAAAAAAAG51bGxURVhUAAAAAQAAAAAAAE1zZ2VURVhUAAAA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AEEAZABvAGIAZQAgAFAAaABvAHQAbwBzAGgAbwBwACAAMgAwADIAMgAAAAEAOEJJTQQGAAAAAAAHAAMBAQABAQD/4RI5aHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA3LjItYzAwMCA3OS41NjZlYmM1YjQsIDIwMjIvMDUvMDktMDg6MjU6NTUgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjMuMyAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIyLTA2LTE0VDEzOjQ3OjA3KzA5OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIyLTA3LTAyVDEyOjQ0OjMyKzA5OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0wNy0wMlQxMjo0NDozMiswOTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9qcGVnIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjIzMTk0YTQ3LTNlYTAtNDAxNS04MDhmLTEwMmIzMjU5NTcyYSIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjdlYTMxMzY3LTQ3MDEtOGU0OC1iMmFmLTM4OGFlMDE2YTkyMCIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmQwNmNlNzdmLTY5OTktY2I0NS1hZTJhLWJhZWQwMDYzYzg5MyIgcGhvdG9zaG9wOkxlZ2FjeUlQVENEaWdlc3Q9IkNEQ0ZGQTdEQThDN0JFMDkwNTcwNzZBRUFGMDVDMzRFIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpkMDZjZTc3Zi02OTk5LWNiNDUtYWUyYS1iYWVkMDA2M2M4OTMiIHN0RXZ0OndoZW49IjIwMjItMDYtMTRUMTM6NDc6MDcrMDk6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy4zIChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ZDg0ODk1YWEtNzY4Zi1iOTQxLTkzZDEtMjQ3OWU4YzJmYWRjIiBzdEV2dDp3aGVuPSIyMDIyLTA2LTE0VDEzOjQ3OjMyKzA5OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjMuMyAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBkb2N1bWVudC92bmQuYWRvYmUuY3BzZCtkY3ggdG8gaW1hZ2UvanBlZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gZG9jdW1lbnQvdm5kLmFkb2JlLmNwc2QrZGN4IHRvIGltYWdlL2pwZWciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmUzZTk2MDMxLWU1NzgtZWY0NC1iOWRlLWZmMmY0YmRmZDYyNiIgc3RFdnQ6d2hlbj0iMjAyMi0wNi0xNFQxMzo0NzozMiswOTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIzLjMgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoyMzE5NGE0Ny0zZWEwLTQwMTUtODA4Zi0xMDJiMzI1OTU3MmEiIHN0RXZ0OndoZW49IjIwMjItMDctMDJUMTI6NDQ6MzIrMDk6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMy40IChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpkODQ4OTVhYS03NjhmLWI5NDEtOTNkMS0yNDc5ZThjMmZhZGMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ZDA2Y2U3N2YtNjk5OS1jYjQ1LWFlMmEtYmFlZDAwNjNjODkzIiBzdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZDA2Y2U3N2YtNjk5OS1jYjQ1LWFlMmEtYmFlZDAwNjNjODkzIi8+IDxwaG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDxyZGY6QmFnPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3ZWEzMTM2Ny00NzAxLThlNDgtYjJhZi0zODhhZTAxNmE5MjA8L3JkZjpsaT4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD94cGFja2V0IGVuZD0idyI/Pv/uACFBZG9iZQBkAAAAAAEDABADAgMGAAAAAAAAAAAAAAAA/9sAhAAKBwcHCAcKCAgKDwoICg8SDQoKDRIUEBASEBAUEQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQsMDBUTFSIYGCIUDg4OFBQODg4OFBEMDAwMDBERDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wgARCADIASwDAREAAhEBAxEB/8QAcgABAQEBAQEAAAAAAAAAAAAAAgABAwcGAQEBAQEBAQEBAAAAAAAAAAACAQMABwYEBRABAQEAAwEBAQEBAAAAAAAAAQACECAwEUAhEkERAQAAAAAAAAAAAAAAAAAAAJASAQAAAAAAAAAAAAAAAAAAAJD/2gAMAwEBAhEDEQAAAOnzn35aDpaGiLp0p0R0o0o0XPVctEdLikjiOKSNTlOIyNRIYxjBQOgllqynjmmOvFL82r8uLK7vrfGfQS0FS0NKWhpc0QdOlGqGi56rloi+nMRkcpkanFMRqZZyGIFjGS89WUsbTLHjrwS/Nq/Niz+v8Y9ACpSLoaLQ0p0RdOlOiGlGq5arnoi+kcUkcRqanEcUqJCQLGMFjENWM8Z5Zpjq/On+bbh9f4z92bSkVQ0XRojpS0dKdKNENENby1fPS4pKYjI4pUSmI5TIVGMYxiBZx56sZ4zyx4p/n24fZeNfZG02loJF0NHSho6U6U6I6UaLnquWiGlxyUxHEampkSpI1EhizxksYxiz1YzxtMp4asftfGvqRUbSkVS0FTog0dKdKWjpRrRoueq56IaXFJHFMRkanKcRkaiQxjGCgWJ56sZ448Z5/ceN/Qmo2moqlUNFoOnRHSl06IaU6Lnq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");
}

.text-gold {
  color: transparent;
  background-image: repeating-linear-gradient(315deg, #b67b03 2em, #daaf08 4em, #fee9a0 6em, #daaf08 8em, #b67b03 10em);
  -webkit-background-clip: text;
}

.text-blue-g {
  color: transparent;
  background-image: repeating-linear-gradient(30deg, #183289 2em, #0177FB 4em, #bfddff 6em, #0177FB 8em, #183289 10em);
  -webkit-background-clip: text;
}

.text-silver {
  color: transparent;
  background-image: repeating-linear-gradient(30deg, #9e9e9e 2em, #bebebe 4em, #ddd9d9 6em, #bebebe 8em, #9e9e9e 10em);
  -webkit-background-clip: text;
}

.bg-gold {
  background-image: repeating-linear-gradient(315deg, #b67b03 2em, #daaf08 4em, #fee9a0 6em, #daaf08 8em, #b67b03 10em);
}

.bg-silver {
  background-image: repeating-linear-gradient(30deg, #9e9e9e 2em, #bebebe 4em, white 6em, #bebebe 8em, #9e9e9e 10em);
}

/****************************************************************
Bootstrap カスタム
****************************************************************/
/****************************************************************
サイトデザイン
****************************************************************/
body {
  width: 100%;
  overflow-x: hidden;
  font-family: "Shippori Mincho", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 1rem;
  line-height: 1.7;
  font-weight: 500;
  letter-spacing: 0.1rem;
  background-color: white;
}
body #container-wrapper {
  width: 100%;
  display: grid;
  gap: 0;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas: "header" "marquee" "main" "footer" "nav-bottom";
}
body #container-wrapper > header {
  grid-area: header;
}
body #container-wrapper > .marquee {
  grid-area: marquee;
}
body #container-wrapper > main {
  grid-area: main;
}
body #container-wrapper > aside.aside-4mobile-start {
  grid-area: aside-start;
}
body #container-wrapper > aside.aside-4mobile-end {
  grid-area: aside-end;
}
body #container-wrapper > footer {
  grid-area: footer;
}
body #container-wrapper > .u-bottomNav {
  grid-area: nav-bottom;
}
body #container-wrapper > aside {
  display: none;
}
@media (max-width: 575.98px) {
  body #container-wrapper {
    display: block;
  }
}
body#page1 .page1-disable {
  display: none;
}
body#page2 .page2-disable {
  display: none;
}
body#page3 .page3-disable {
  display: none;
}
body#page4 .page4-disable {
  display: none;
}
body#page5 .page5-disable {
  display: none;
}
body#page6 .page6-disable {
  display: none;
}
body#page7 .page7-disable {
  display: none;
}
body#page8 .page8-disable {
  display: none;
}
body#page9 .page9-disable {
  display: none;
}
@media (max-width: 991.98px) {
  body {
    font-size: 0.8rem;
    background-attachment: scroll;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Shippori Mincho", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-weight: 500;
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  color: inherit;
  opacity: 0.85;
}
a.noblur:hover {
  opacity: 1;
}

b {
  font-weight: 600;
}

em {
  display: inline-block;
  font-style: normal;
  text-indent: 0;
}

mark {
  padding: 0;
  margin: 0;
  background-color: transparent;
}

img {
  max-width: 100%;
  padding: 0;
  margin: 0;
  vertical-align: bottom;
}

img.grayscale {
  filter: grayscale(100%);
  transition: filter 1s ease;
}
img.grayscale:hover {
  filter: grayscale(0);
}

ul {
  list-style-type: none;
}

ol,
ul {
  padding-left: 0;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 0;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 600;
}

dd {
  margin-bottom: 0;
  margin-left: 0;
}

iframe {
  background-color: #eee;
  border: 0;
}

hr {
  height: 1px;
  background-color: currentColor;
  border: 0;
  opacity: 1;
}

video {
  max-width: 100%;
  height: 430px;
  margin: auto;
  background-color: black;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border: none;
}
@media (max-width: 991.98px) {
  video {
    height: auto;
  }
}

table th,
table td {
  vertical-align: middle;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

[data-src] {
  cursor: pointer;
}

._drop-shadow {
  filter: drop-shadow(2px 2px 4px rgba(33, 37, 41, 0.9));
}

._drop-shadow-white {
  filter: drop-shadow(2px 2px 4px rgba(255, 255, 255, 0.9));
}
._drop-shadow-white._sm {
  filter: drop-shadow(1px 1px 2px rgba(255, 255, 255, 0.9));
}

/* ローダー
-------------------------------------------------- */
#loader .inner {
  transition: opacity 0.6s cubic-bezier(0.895, 0.03, 0.685, 0.22);
  text-align: center;
}
#loader .inner .logo-wrap {
  perspective: 800px;
  width: 20rem;
}
#loader .inner #is-loader {
  margin: 0 auto;
}
#loader .inner #is-loader #is-svgTraceLine {
  stroke: var(--bs-light);
  stroke-width: 10px;
  fill: none;
  opacity: 0.2;
}
#loader .inner #is-loader #is-svgArc {
  stroke: var(--bs-light);
  stroke-width: 10px;
  fill: none;
}
#loader .underlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
#loader .underlay > *:nth-child(1) {
  background-image: radial-gradient(#0095df, #1d2088);
  width: 100%;
  height: 100%;
  -webkit-clip-path: polygon(0% 0%, 61% 0%, 41% 100%, 0% 100%);
          clip-path: polygon(0% 0%, 61% 0%, 41% 100%, 0% 100%);
}
#loader .underlay > *:nth-child(2) {
  background-image: radial-gradient(#0095df, #1d2088);
  width: 100%;
  height: 100%;
  -webkit-clip-path: polygon(59% 0%, 100% 0%, 100% 100%, 39% 100%);
          clip-path: polygon(59% 0%, 100% 0%, 100% 100%, 39% 100%);
}
@media (max-width: 992px) {
  #loader .inner .logo-wrap {
    width: 15rem;
  }
  #loader .underlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
  #loader .underlay > *:nth-child(1) {
    -webkit-clip-path: polygon(0% 0%, 99% 0%, 3% 100%, 0% 100%);
            clip-path: polygon(0% 0%, 99% 0%, 3% 100%, 0% 100%);
  }
  #loader .underlay > *:nth-child(2) {
    -webkit-clip-path: polygon(97% 0%, 100% 0%, 100% 100%, 1% 100%);
            clip-path: polygon(97% 0%, 100% 0%, 100% 100%, 1% 100%);
  }
}

main {
  background-color: white;
}

/* メイン
-------------------------------------------------- */
aside .aside__list > .aside__list-item .aside__list-item__inner {
  position: relative;
  background-color: #183289;
  color: #f8f9fa;
}
#page1 aside .aside__list-item__inner#page1-aside {
  background-color: #f8f9fa !important;
  color: #212529;
}

#page2 aside .aside__list-item__inner#page2-aside {
  background-color: #f8f9fa !important;
  color: #212529;
}

#page3 aside .aside__list-item__inner#page3-aside {
  background-color: #f8f9fa !important;
  color: #212529;
}

#page4 aside .aside__list-item__inner#page4-aside {
  background-color: #f8f9fa !important;
  color: #212529;
}

#page5 aside .aside__list-item__inner#page5-aside {
  background-color: #f8f9fa !important;
  color: #212529;
}

#page6 aside .aside__list-item__inner#page6-aside {
  background-color: #f8f9fa !important;
  color: #212529;
}

aside .aside__list > .aside__list-item .aside__list-item__inner .aside__list-item__btn-anchor {
  flex: 1 1 auto;
  padding: 10px 0;
  line-height: 1;
  color: inherit;
  align-items: center;
  justify-content: space-between;
}
aside .aside__list > .aside__list-item .aside__list-item__inner .aside__list-item__btn-dropdown {
  background-color: transparent;
  border: none;
  color: inherit;
  cursor: pointer;
  display: grid;
  height: 100%;
  position: absolute;
  right: 0;
  text-align: center;
  text-indent: inherit;
  text-shadow: none;
  top: 0;
  width: 3rem;
  place-items: center;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
aside .aside__list > .aside__list-item .aside__list-item__inner .aside__list-item__btn-dropdown > svg {
  width: 50%;
}
aside .aside__list > .aside__list-item hr {
  margin: 0;
  background-color: transparent;
  border-bottom: dashed thin currentColor;
}
aside .aside__list > .aside__list-item .aside__list-item__dropmenu {
  overflow: hidden;
}

/* ヘッダー
-------------------------------------------------- */
header {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 997;
  width: 100%;
  max-width: 100%;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  background-color: white;
}
header::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  opacity: 0;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
header ._toggle-white {
  color: #f8f9fa;
}
header .logo-top {
  display: none;
}
header .header__inner {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 100%;
  margin: auto;
  line-height: 1.2;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
header .header__inner .logo-wrap {
  flex: 0 0 auto;
  width: 230px;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
header .header__inner .logo-wrap .header-logo {
  display: block;
  width: 100%;
  background-image: url("../img/logo_base.png");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100%;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  aspect-ratio: 2.9;
}
header .header__inner .logo-wrap .header-logo:hover {
  opacity: 1;
}
header .header__inner .header-container {
  flex-basis: auto;
  flex-grow: 0;
  flex-shrink: 1;
}
@media (max-width: 991.98px) {
  header {
    background-color: white;
    position: sticky;
    padding: 0;
    color: #212529;
  }
  header ._drop-shadow,
  header ._drop-shadow-white,
  header .drop-shadow {
    filter: none;
  }
  header ._drop-shadow._sm,
  header ._drop-shadow-white._sm,
  header .drop-shadow._sm {
    filter: none;
  }
  header::before {
    content: none;
  }
  header .header__inner {
    align-items: center;
    height: auto;
    padding: 0.5rem 0;
  }
  header .header__inner .logo-wrap {
    display: block;
    width: 200px;
    flex: 0 1 auto;
  }
  header .header__inner .logo-wrap .header-logo {
    background-image: url("../img/logo_base.png");
    filter: none;
  }
  header .header__inner .header-container {
    flex-basis: auto;
    flex-grow: 0;
    flex-shrink: 1;
    padding: 0;
    background-color: initial;
  }
}

.drop-shadow {
  filter: drop-shadow(2px 2px 4px rgba(33, 37, 41, 0.9));
}

.drop-shadow-light {
  filter: drop-shadow(2px 2px 4px #f8f9fa) drop-shadow(-2px -2px 4px #f8f9fa);
}

/* フッター
-------------------------------------------------- */
footer {
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% auto;
}
footer::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  background-color: #fff;
}
footer .footer-logo {
  display: inline-block;
  width: 220px;
  max-width: 100%;
}
footer .copyright {
  padding: 0 0 3px;
  font-size: 0.8rem;
}
@media (max-width: 575.98px) {
  footer .footer-logo {
    width: 200px;
  }
  footer .copyright {
    font-size: 10px;
  }
}

/* ナビゲーション
-------------------------------------------------- */
.u-nav {
  --nav-dark: rgba(1, 119, 251, 0.9);
  --nav-light: rgba(248, 249, 250, 0.9);
  display: block;
  text-align: right;
}
.u-nav > nav {
  position: static;
  bottom: 100%;
  left: 0;
  z-index: 996;
  display: block;
  max-width: 100%;
  margin: auto;
  text-align: left;
}
.u-nav > nav > ul {
  display: flex;
  justify-content: space-around;
  width: auto;
  margin: 0 auto;
}
.u-nav > nav > ul > li {
  flex: 1 0 auto;
  padding: 0.3rem 0.3rem 0.6rem;
  line-height: 1;
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  text-align: center;
}
.u-nav > nav > ul > li > a,
.u-nav > nav > ul > li > a:not([href]) {
  display: inline-flex;
  position: relative;
  padding: 0.2rem 0.5rem 0;
  font-size: 0.9rem;
  line-height: 1;
  border-bottom: solid thin transparent;
  text-align: center;
  letter-spacing: 0;
}
.u-nav > nav > ul > li > a .icon,
.u-nav > nav > ul > li > a:not([href]) .icon {
  width: 1.3rem;
  display: none;
  margin-right: 0.3rem;
}
.u-nav > nav > ul > li > a > em,
.u-nav > nav > ul > li > a:not([href]) > em {
  display: inline-block;
  pointer-events: none;
}
.u-nav > nav > ul > li > a > em .nav-ja,
.u-nav > nav > ul > li > a:not([href]) > em .nav-ja {
  display: block;
  font-size: 1em;
  transition: font-size 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-nav > nav > ul > li > a > em .nav-en,
.u-nav > nav > ul > li > a:not([href]) > em .nav-en {
  display: block;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 1.2em;
  text-transform: none;
  transition: font-size 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-nav > nav > ul > li .dropmenu {
  display: none;
}
.u-nav > nav > ul > li:hover {
  text-shadow: none;
  background-color: var(--nav-dark);
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-nav > nav > ul > li:hover > a {
  color: var(--nav-light);
  opacity: 1;
}
.u-nav > nav > ul > li:hover > a .icon {
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translateX(30%);
}
.u-nav > nav > ul > li:hover > a::after {
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-nav > nav > ul > li > a::after {
  content: "";
  display: inline-block;
  max-width: 100%;
  opacity: 0;
  position: absolute;
}
.u-nav > nav > ul > li > a:hover::after {
  opacity: 1;
}
.u-nav > nav > ul > li > a::after {
  content: "";
  display: inline-block;
  max-width: 100%;
  opacity: 0;
  position: absolute;
  width: 3rem;
  height: 7px;
  background: radial-gradient(circle, var(--nav-light) 25%, transparent 25%) transparent repeat-x center/15px 15px;
  bottom: -0.2rem;
  right: 50%;
  transform: translateX(50%);
}
#page1 .page1-nav {
  background-color: #183289 !important;
}
#page1 .page1-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page1 .page1-nav > a::after {
  opacity: 1;
}

#page2 .page2-nav {
  background-color: #183289 !important;
}
#page2 .page2-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page2 .page2-nav > a::after {
  opacity: 1;
}

#page3 .page3-nav {
  background-color: #183289 !important;
}
#page3 .page3-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page3 .page3-nav > a::after {
  opacity: 1;
}

#page4 .page4-nav {
  background-color: #183289 !important;
}
#page4 .page4-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page4 .page4-nav > a::after {
  opacity: 1;
}

#page5 .page5-nav {
  background-color: #183289 !important;
}
#page5 .page5-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page5 .page5-nav > a::after {
  opacity: 1;
}

#page6 .page6-nav {
  background-color: #183289 !important;
}
#page6 .page6-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page6 .page6-nav > a::after {
  opacity: 1;
}

#page7 .page7-nav {
  background-color: #183289 !important;
}
#page7 .page7-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page7 .page7-nav > a::after {
  opacity: 1;
}

#page8 .page8-nav {
  background-color: #183289 !important;
}
#page8 .page8-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page8 .page8-nav > a::after {
  opacity: 1;
}

#page9 .page9-nav {
  background-color: #183289 !important;
}
#page9 .page9-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page9 .page9-nav > a::after {
  opacity: 1;
}

.u-nav > nav > ul > li {
  align-items: center;
  justify-content: center;
}
.u-nav.is-attached {
  text-shadow: none;
}
.u-nav.is-attached .a-none {
  display: none;
}
.u-nav.is-attached ._drop-shadow {
  filter: none !important;
}
.u-nav.is-attached > nav {
  position: fixed;
  width: 100%;
  transition: transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translateY(100%);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  padding: 0 1rem;
  border-radius: 0;
}
.u-nav.is-attached > nav > ul {
  width: 1200px;
  max-width: 100%;
  padding: 0.5rem;
  margin-right: auto;
  margin-left: auto;
}
.u-nav.is-attached > nav > ul > li {
  align-items: center;
  justify-content: center;
  border-left: none;
  writing-mode: horizontal-tb;
}
.u-nav.is-attached > nav > ul > li:last-child {
  border-right: none;
}
.u-nav.is-attached > nav > ul > li > a {
  padding-bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: left;
}
.u-nav.is-attached > nav > ul > li > a .icon {
  display: inline-block;
}
.u-nav.is-attached > nav > ul > li > a em {
  margin: 0 0.3rem;
}
.u-nav.is-attached > nav > ul > li .dropmenu {
  display: inline-block;
}
.u-nav.is-attached > nav > ul > li:hover {
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-nav.is-attached > nav {
  background-color: var(--nav-light);
  color: var(--nav-dark);
}
.u-nav.is-attached > nav > ul > li > a::after {
  content: "";
  display: inline-block;
  max-width: 100%;
  opacity: 0;
  position: absolute;
}
.u-nav.is-attached > nav > ul > li > a:hover::after {
  opacity: 1;
}
.u-nav.is-attached > nav > ul > li > a::after {
  content: "";
  display: inline-block;
  max-width: 100%;
  opacity: 0;
  position: absolute;
  width: 50px;
  height: 2px;
  background: linear-gradient(90deg, var(--nav-light) 100%, transparent 100%) transparent no-repeat center/100% 3px;
  bottom: -0.3rem;
  left: 50%;
  transform: translateX(-50%);
}
#page1 .u-nav.is-attached .page1-nav {
  background-color: var(--nav-dark) !important;
}
#page1 .u-nav.is-attached .page1-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page1 .u-nav.is-attached .page1-nav > a::after {
  opacity: 1;
}

#page2 .u-nav.is-attached .page2-nav {
  background-color: var(--nav-dark) !important;
}
#page2 .u-nav.is-attached .page2-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page2 .u-nav.is-attached .page2-nav > a::after {
  opacity: 1;
}

#page3 .u-nav.is-attached .page3-nav {
  background-color: var(--nav-dark) !important;
}
#page3 .u-nav.is-attached .page3-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page3 .u-nav.is-attached .page3-nav > a::after {
  opacity: 1;
}

#page4 .u-nav.is-attached .page4-nav {
  background-color: var(--nav-dark) !important;
}
#page4 .u-nav.is-attached .page4-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page4 .u-nav.is-attached .page4-nav > a::after {
  opacity: 1;
}

#page5 .u-nav.is-attached .page5-nav {
  background-color: var(--nav-dark) !important;
}
#page5 .u-nav.is-attached .page5-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page5 .u-nav.is-attached .page5-nav > a::after {
  opacity: 1;
}

#page6 .u-nav.is-attached .page6-nav {
  background-color: var(--nav-dark) !important;
}
#page6 .u-nav.is-attached .page6-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page6 .u-nav.is-attached .page6-nav > a::after {
  opacity: 1;
}

#page7 .u-nav.is-attached .page7-nav {
  background-color: var(--nav-dark) !important;
}
#page7 .u-nav.is-attached .page7-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page7 .u-nav.is-attached .page7-nav > a::after {
  opacity: 1;
}

#page8 .u-nav.is-attached .page8-nav {
  background-color: var(--nav-dark) !important;
}
#page8 .u-nav.is-attached .page8-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page8 .u-nav.is-attached .page8-nav > a::after {
  opacity: 1;
}

#page9 .u-nav.is-attached .page9-nav {
  background-color: var(--nav-dark) !important;
}
#page9 .u-nav.is-attached .page9-nav > a {
  opacity: 1;
  color: var(--nav-light);
}
#page9 .u-nav.is-attached .page9-nav > a::after {
  opacity: 1;
}

@media (max-width: 991.98px) {
  .u-nav {
    display: none;
  }
}

.u-nav-foot > ul {
  display: flex;
  flex-flow: column wrap;
  height: 200px;
}
.u-nav-foot > ul > li::before {
  content: "> ";
}
.u-nav-foot > ul > li > ul > li {
  font-size: 0.85rem;
  text-indent: 1.5rem;
}
.u-nav-foot > ul > li > ul > li::before {
  content: "∟ ";
}

/* ドロップダウンメニュー
-------------------------------------------------- */
.u-dropdown._type1 {
  position: relative;
  cursor: pointer;
}
.u-dropdown._type1 .dropmenu {
  position: absolute;
  top: 90%;
  left: 0;
  z-index: 2;
  display: inline-block;
  width: 13em;
  min-width: 100%;
  height: 0;
  overflow: hidden;
  cursor: pointer;
  background-color: rgba(136, 136, 136, 0.9);
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-nav > nav > ul > li:last-child > .dropmenu {
  right: 0;
  left: auto;
}

.u-dropdown._type1 .dropmenu li a {
  display: inline-block;
  width: 100%;
  padding: 10px;
  font-size: 0.8em;
  color: white;
  white-space: nowrap;
}
.u-dropdown._type1 .dropmenu li a::before {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e901";
  padding-right: 0.3rem;
}
.u-dropdown._type1 .dropmenu li:hover {
  background-color: #0177FB;
}
.u-dropdown._type1 .dropmenu li:hover > a {
  opacity: 1;
}
.u-dropdown._type1:hover .dropmenu {
  text-align: start;
  top: 100%;
  height: auto;
  opacity: 1;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-dropdown._type2 {
  position: relative;
}
.u-dropdown._type2 > a {
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-dropdown._type2 .dropmenu {
  position: absolute;
  top: 100%;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-dropdown._type2 .dropmenu ._inner {
  width: 100%;
  background-color: rgba(255, 255, 255, 0.95);
  border-top: solid 6px #0177FB;
}
.u-dropdown._type2:hover > a::before {
  opacity: 1;
  transition: opacity 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-dropdown._type2:hover .dropmenu {
  width: 16rem;
  height: auto;
  opacity: 1;
  transition: opacity 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* スマホメニュー
-------------------------------------------------- */
#u-phonemenu {
  --phonemenu-btnsize: 3.9em;
  position: relative;
  z-index: 997;
}
#u-phonemenu #u-humbergerOpen {
  --u-humbergerOpen-bgc: #183289;
  --u-humbergerOpen-stroke: #f8f9fa;
  --u-humbergerOpen-stroke-hover: #183289;
  color: inherit;
}
#u-phonemenu #u-humbergerOpen svg {
  width: var(--phonemenu-btnsize);
  aspect-ratio: 1;
}
#u-phonemenu #u-humbergerOpen svg [data-name=layer1] circle {
  transform-origin: center;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  fill: var(--u-humbergerOpen-bgc);
}
#u-phonemenu #u-humbergerOpen svg [data-name=layer2] circle {
  transform-origin: center;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  fill: var(--u-humbergerOpen-bgc);
}
#u-phonemenu #u-humbergerOpen svg [data-name=layer3] line {
  stroke: var(--u-humbergerOpen-stroke);
  transform-origin: center;
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#u-phonemenu #u-humbergerOpen:hover svg [data-name=layer1] circle {
  transform: scale(1.4);
}
#u-phonemenu #u-humbergerOpen:hover svg [data-name=layer2] circle {
  transform: scale(0.8);
  fill: #fff;
}
#u-phonemenu #u-humbergerOpen:hover svg [data-name=layer3] line {
  stroke: var(--u-humbergerOpen-stroke-hover);
}
#u-phonemenu #u-humbergerOpen:hover svg [data-name=layer3] line:nth-of-type(1) {
  transform: translateY(5%);
}
#u-phonemenu #u-humbergerOpen:hover svg [data-name=layer3] line:nth-of-type(3) {
  transform: translateY(-5%);
}
#u-phonemenu #u-humbergerClose {
  --u-humbergerClose-bgc: #f8f9fa;
  --u-humbergerClose-stroke: #0177FB;
  color: inherit;
}
#u-phonemenu #u-humbergerClose svg {
  width: var(--phonemenu-btnsize);
  aspect-ratio: 1;
}
#u-phonemenu #u-humbergerClose svg [data-name=layer1] circle {
  transform-origin: center;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  fill: var(--u-humbergerClose-bgc);
}
#u-phonemenu #u-humbergerClose svg [data-name=layer2] circle {
  transform-origin: center;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  fill: var(--u-humbergerClose-bgc);
}
#u-phonemenu #u-humbergerClose svg [data-name=layer3] line {
  stroke: var(--u-humbergerClose-stroke);
}
#u-phonemenu #u-humbergerClose svg [data-name=layer3] [data-name=close] {
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#u-phonemenu #u-humbergerClose svg [data-name=layer3] [data-name=arrow] {
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translateX(-13%);
}
#u-phonemenu #u-humbergerClose:hover svg [data-name=layer1] circle {
  transform: scale(1.4);
}
#u-phonemenu #u-humbergerClose:hover svg [data-name=layer2] circle {
  transform: scale(0.8);
}
#u-phonemenu #u-humbergerClose:hover svg [data-name=layer3] [data-name=close] {
  opacity: 0;
  transform: translateX(13%);
}
#u-phonemenu #u-humbergerClose:hover svg [data-name=layer3] [data-name=arrow] {
  opacity: 1;
  transform: translateX(0);
}
#u-phonemenu[data-progress=will-close] #u-humbergerClose svg [data-name=layer1] circle {
  transform: scale(1.4);
}
#u-phonemenu[data-progress=will-close] #u-humbergerClose svg [data-name=layer2] circle {
  transform: scale(0.8);
}
#u-phonemenu[data-progress=will-close] #u-humbergerClose svg [data-name=layer3] [data-name=close] {
  opacity: 0;
  transform: translateX(13%);
}
#u-phonemenu[data-progress=will-close] #u-humbergerClose svg [data-name=layer3] [data-name=arrow] {
  opacity: 1;
  transform: translateX(0);
}

#u-phonemenu #u-drawernav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 2;
  width: 100%;
  height: 100vh;
  letter-spacing: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  grid-template-columns: 1fr;
}
#u-phonemenu #u-drawernav .drawernav__header {
  position: sticky;
  top: 0;
  z-index: 10;
  padding: 0 1rem;
  filter: drop-shadow(2px 2px 4px rgba(85, 85, 85, 0.8));
}
#u-phonemenu #u-drawernav .drawernav__header .drawernav__header-logo {
  display: block;
}
#u-phonemenu #u-drawernav .drawernav__container {
  height: 100%;
  overflow: hidden;
}
#u-phonemenu #u-drawernav .drawernav__container-primary {
  overflow-x: hidden;
  overflow-y: auto;
}
#u-phonemenu #u-drawernav.fade {
  transform: translateY(-50px);
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s, visibility 0s ease 0.5s, transform 0.5s;
}
#u-phonemenu #u-drawernav.fade.is-opened {
  transform: translateY(0);
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
}
#u-phonemenu #u-drawernav .drawernav__list > .drawernav__list-item .drawernav__list-item__inner {
  position: relative;
}
#u-phonemenu #u-drawernav .drawernav__list > .drawernav__list-item .drawernav__list-item__inner .drawernav__list-item__btn-anchor {
  flex: 1 1 auto;
  padding: 10px 0;
  line-height: 1;
  color: inherit;
  align-items: center;
  justify-content: space-between;
}
#u-phonemenu #u-drawernav .drawernav__list > .drawernav__list-item .drawernav__list-item__inner .drawernav__list-item__btn-dropdown {
  background-color: transparent;
  border: none;
  color: inherit;
  cursor: pointer;
  display: grid;
  height: 100%;
  position: absolute;
  right: 0;
  text-align: center;
  text-indent: inherit;
  text-shadow: none;
  top: 0;
  width: 3rem;
  place-items: center;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#u-phonemenu #u-drawernav .drawernav__list > .drawernav__list-item .drawernav__list-item__inner .drawernav__list-item__btn-dropdown > svg {
  width: 50%;
}
#u-phonemenu #u-drawernav .drawernav__list > .drawernav__list-item hr {
  margin: 0;
  background-color: transparent;
  border-bottom: dashed thin currentColor;
}
#u-phonemenu #u-drawernav .drawernav__list > .drawernav__list-item .drawernav__list-item__dropmenu {
  overflow: hidden;
}
@media (max-width: 991.98px) {
  #u-phonemenu {
    --phonemenu-btnsize: 5.2em;
  }
}

/* スマホ下部のナビゲーション
-------------------------------------------------- */
.u-bottomNav {
  position: sticky;
  bottom: 0;
  left: 0;
  z-index: 996;
  width: auto;
  max-width: 100%;
  padding: 0 1rem;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.u-bottomNav a img {
  width: 2rem;
}
.u-bottomNav.is-attached {
  opacity: 1;
}
@media (max-width: 991.98px) {
  .u-bottomNav {
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    padding: 0;
    border-radius: initial;
  }
}

.bg-figure {
  position: relative;
}
.bg-figure > .upper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 26vw;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 13vw, 66.6666666% 0, 0 26vw);
          clip-path: polygon(0 0, 100% 0, 100% 13vw, 66.6666666% 0, 0 26vw);
  background-color: #f7f7f7;
}

/* ファーストビュー
-------------------------------------------------- */
#hero-area {
  position: relative;
  padding-top: 100vh;
  overflow: hidden;
}
#hero-area .underlay-wrapper {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#hero-area .underlay-wrapper .underlay1 {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#hero-area .underlay-wrapper {
  position: absolute;
  z-index: 1;
}
#hero-area .underlay-wrapper .underlay1 {
  position: absolute;
  overflow: hidden;
}
#hero-area .underlay-wrapper .underlay1::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(0, 0, 0, 0.1);
}
#hero-area .underlay-wrapper .underlay1 .hero-container1,
#hero-area .underlay-wrapper .underlay1 .hero-container2 {
  position: absolute;
  height: 100%;
  overflow: hidden;
}
#hero-area .underlay-wrapper .underlay1 .hero-container1 .swiper,
#hero-area .underlay-wrapper .underlay1 .hero-container2 .swiper {
  width: 100%;
  height: 100%;
}
#hero-area .underlay-wrapper .underlay1 .hero-container1 .swiper .swiper-slide,
#hero-area .underlay-wrapper .underlay1 .hero-container2 .swiper .swiper-slide {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#hero-area .underlay-wrapper .underlay1 .hero-container1 .swiper .swiper-slide *,
#hero-area .underlay-wrapper .underlay1 .hero-container2 .swiper .swiper-slide * {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#hero-area .underlay-wrapper .underlay1 .hero-container1 {
  bottom: 0;
  right: 0;
  width: 100%;
}
#hero-area .underlay-wrapper .underlay1 .swiper-prev,
#hero-area .underlay-wrapper .underlay1 .swiper-next {
  position: absolute;
  top: 50%;
  z-index: 4;
  display: inline-block;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 50px;
  padding: 0.2rem 0.2rem 0.4rem 0.4rem;
  font-size: 3rem;
  line-height: 1;
  color: white;
  text-align: center;
  cursor: pointer;
  background-color: #0177FB;
  transform: translateY(-50%);
}
#hero-area .underlay-wrapper .underlay1 .swiper-prev::before,
#hero-area .underlay-wrapper .underlay1 .swiper-next::before {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 70%;
  height: 70%;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: translate(-50%, -50%);
}
#hero-area .underlay-wrapper .underlay1 .swiper-prev {
  left: 1rem;
}
#hero-area .underlay-wrapper .underlay1 .swiper-prev::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 170 300'%3e%3cdefs%3e%3cstyle%3e.cls-1{fill:none;stroke:%23fff;stroke-width:10px;}%3c/style%3e%3c/defs%3e%3cpolyline class='cls-1' points='156.774 293.548 13.226 150 156.774 6.452'/%3e%3c/svg%3e");
}
#hero-area .underlay-wrapper .underlay1 .swiper-next {
  right: 1rem;
}
#hero-area .underlay-wrapper .underlay1 .swiper-next::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 170 300'%3e%3cdefs%3e%3cstyle%3e.cls-1{fill:none;stroke:%23fff;stroke-width:10px;}%3c/style%3e%3c/defs%3e%3cpolyline class='cls-1' points='13.226 6.452 156.774 150 13.226 293.548'/%3e%3c/svg%3e");
}
#hero-area .underlay1-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0.5rem;
}
#hero-area .underlay1-pagination > span {
  margin: 0.3rem;
}
#hero-area .catch1 {
  margin-bottom: 0;
}
#hero-area .catch1 h1 {
  margin-bottom: 0;
  overflow: hidden;
  line-height: 0.1;
  text-indent: 100%;
  white-space: nowrap;
}
#hero-area #wave {
  position: absolute;
  bottom: -10px;
  left: 0;
  z-index: 2;
  width: 100%;
}
#hero-area .move2next {
  display: inline-block;
  color: #f8f9fa;
  writing-mode: vertical-rl;
}
#hero-area .move2next ._btn {
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  cursor: pointer;
}
#hero-area .move2next ._bottom-bar {
  position: relative;
  width: 1px;
  height: 5rem;
  margin: 0 auto;
  background-color: #f8f9fa;
}
#hero-area .move2next ._bottom-bar::before {
  position: absolute;
  left: 0;
  z-index: 5;
  display: inline-block;
  width: 10px;
  height: 10px;
  content: "";
  background-color: #f8f9fa;
  border-radius: 50%;
  transform: translateX(-50%);
  animation-name: move2bottom;
  animation-duration: 2s;
  animation-play-state: running;
  animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  animation-delay: 0s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: none;
}
@keyframes move2bottom {
  0% {
    top: 0;
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    top: 100%;
    opacity: 0;
  }
}
@media (max-width: 1280px) and (min-width: 1279px) {
  #hero-area {
    padding-top: 60%;
  }
}
@media (max-width: 991.98px) {
  #hero-area {
    padding-top: 80%;
  }
}
@media (max-width: 575.98px) {
  #hero-area {
    padding-top: 110%;
  }
}

.u-hollow {
  --hollow-width: 1rem;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% calc(0% + var(--hollow-width)), calc(0% + var(--hollow-width)) calc(0% + var(--hollow-width)), calc(0% + var(--hollow-width)) calc(100% - var(--hollow-width)), calc(100% - var(--hollow-width)) calc(100% - var(--hollow-width)), calc(100% - var(--hollow-width)) calc(0% + var(--hollow-width)), 0% calc(0% + var(--hollow-width)));
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% calc(0% + var(--hollow-width)), calc(0% + var(--hollow-width)) calc(0% + var(--hollow-width)), calc(0% + var(--hollow-width)) calc(100% - var(--hollow-width)), calc(100% - var(--hollow-width)) calc(100% - var(--hollow-width)), calc(100% - var(--hollow-width)) calc(0% + var(--hollow-width)), 0% calc(0% + var(--hollow-width)));
}

/* 各ページのアイキャッチ
-------------------------------------------------- */
#featured-area {
  position: relative;
  color: #f8f9fa;
  background-color: #fff;
  z-index: 2;
  width: 100%;
  overflow: hidden;
  margin-bottom: -3px;
}
#featured-area .shadow-title {
  width: 100%;
  text-align: center;
  font-size: 5vw;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-weight: 300;
  text-transform: uppercase;
  z-index: 1;
  line-height: 1.3;
  letter-spacing: 0;
}
#featured-area > ._image {
  position: relative;
  width: 100%;
  height: 600px;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 80%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 80%, 0 100%);
}
#featured-area > ._image::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #212529;
  opacity: 0.4;
}
#featured-area > ._image > .bg {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#featured-area > ._image > .bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center bottom;
     object-position: center bottom;
}
#featured-area > ._image > .inner {
  position: absolute;
  top: 54%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  width: 80%;
  text-align: center;
}
#featured-area > ._image > .inner > ._title {
  position: relative;
  z-index: 3;
}
#featured-area > ._image > .inner > ._title .main,
#featured-area > ._image > .inner > ._title .sub {
  display: inline-block;
  margin: 0;
}
#featured-area > ._image > .inner > ._title .main {
  overflow: hidden;
  font-size: 1.4rem;
  line-height: 1.6;
  font-weight: 500;
}
#featured-area > ._image > .inner > ._title .sub {
  font-weight: 200;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 3vw;
  line-height: 1.6;
  text-transform: none;
  visibility: hidden;
  display: none;
  height: 0;
}
#featured-area > ._image > .inner > ._title::after {
  content: "";
  display: block;
  width: 40%;
  height: 1px;
  margin: 0 auto;
  background-color: currentColor;
}
#featured-area > ._title {
  position: relative;
  z-index: 3;
  margin-top: -4rem;
}
#featured-area > ._title .main,
#featured-area > ._title .sub {
  display: inline-block;
  color: #f8f9fa;
  background-color: #183289;
}
#featured-area > ._title .main {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.8;
}
#featured-area > ._title .sub {
  margin-bottom: 0;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 5rem;
  font-weight: 400;
  line-height: 1.1;
  text-transform: none;
}
@media (max-width: 991.98px) {
  #featured-area {
    margin-top: 0;
  }
  #featured-area .shadow-title {
    font-size: 6vw;
  }
  #featured-area ._image {
    height: 400px;
  }
  #featured-area ._image > .bg {
    background-size: cover;
  }
  #featured-area ._image > .inner {
    top: 47%;
  }
}
@media (max-width: 575.98px) {
  #featured-area .shadow-title {
    font-size: 12vw;
  }
  #featured-area ._image {
    height: 400px;
  }
  #featured-area ._image > .inner > ._title .main {
    font-size: 1rem;
  }
  #featured-area ._image > .inner > ._title .sub {
    font-size: 2rem;
  }
  #featured-area ._image > .inner > ._title .v-bar {
    margin-bottom: 1rem;
  }
  #featured-area ._image > .inner > ._title .v-bar::before {
    height: 1.5rem;
  }
}

.marquee-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 150px;
  background-image: url(../img/divider/divider_1.svg);
  background-size: 600px;
  background-position: center bottom;
  background-repeat: repeat-x;
}
.marquee-bottom .marquee-bottom-icon {
  width: 100px;
  position: absolute;
  bottom: 0;
}
.marquee-bottom .marquee-bottom-icon:nth-child(1) {
  animation: marquee-bottom-icon 25s linear 0s infinite normal forwards;
}
@keyframes marquee-bottom-icon {
  0% {
    left: 100%;
  }
  100% {
    left: -10%;
  }
}

/* パンくず
-------------------------------------------------- */
.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 1rem 0;
  font-size: 0.8rem;
}
.breadcrumbs > li {
  padding: 0 0.5em;
}
.breadcrumbs > li a {
  color: inherit;
}
.breadcrumbs > li::after {
  content: "　>";
}
.breadcrumbs > li:last-child::after {
  content: none;
}
@media (max-width: 575.98px) {
  .breadcrumbs {
    font-size: 0.6rem;
  }
}

/****************************************************************
テンプレート
****************************************************************/
/* 見出しタイトル02
-------------------------------------------------- */
.htitle02 {
  margin-bottom: 0.5rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.4;
}
.htitle02 > * {
  display: inline;
  background: linear-gradient(transparent 70%, #ffe4b3 70%);
}
@media (max-width: 991.98px) {
  .htitle02 {
    font-size: 1.1rem;
  }
}

/* 見出しタイトル03
-------------------------------------------------- */
/* h2.htitle03>em{Title}+span{タイトル} */
.htitle03 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  padding-bottom: 1rem;
}
.htitle03._left {
  justify-content: flex-start;
}
.htitle03._left::after {
  right: initial;
  left: 1rem;
  width: 300px;
  background-image: linear-gradient(to right, #183289 20%, #ff0000 20%);
}
.htitle03._center {
  justify-content: center;
  text-align: center;
}
.htitle03._center::after {
  right: initial;
  left: 50%;
  transform: translatex(-50%) skewX(-50deg);
}
.htitle03._right {
  justify-content: flex-end;
}
.htitle03._right::after {
  right: 0;
  left: initial;
}
.htitle03._light > em {
  color: #f8f9fa;
}
.htitle03._light > span {
  color: #f8f9fa;
}
.htitle03._light::before {
  color: #f8f9fa;
}
.htitle03._light::after {
  background-image: linear-gradient(to right, white 50%, #aaa 50%);
}
.htitle03 > em {
  display: inline-block;
  order: 1;
  padding: 0 0.3rem 0.5rem;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 3rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #0177FB;
  width: 100%;
  color: transparent;
  background-image: repeating-linear-gradient(30deg, #183289 2em, #0177FB 4em, #bfddff 6em, #0177FB 8em, #183289 10em);
  -webkit-background-clip: text;
}
.htitle03 > span {
  display: inline-block;
  order: 3;
  padding: 0 0.3rem 0.5rem;
  font-size: 1rem;
}
.htitle03::after {
  position: absolute;
  right: initial;
  bottom: 0;
  left: 0;
  display: block;
  width: 120px;
  height: 4px;
  content: "";
  background-image: linear-gradient(to right, #0177FB 50%, #183289 50%);
  transform: skewX(-50deg);
}
@media (max-width: 575.98px) {
  .htitle03 {
    text-align: center;
  }
  .htitle03 > em {
    ovrder: 1;
    padding-bottom: 0.3rem;
    font-size: 2.5rem;
  }
  .htitle03 > span {
    order: 2;
    padding-bottom: 0.3rem;
  }
}

.htitle03-2 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 1rem;
  font-weight: 600;
}
.htitle03-2._left {
  justify-content: flex-start;
}
.htitle03-2._left::after {
  right: initial;
  left: 0;
  transform: translateX(0) skewX(-50deg);
}
.htitle03-2._center {
  justify-content: center;
  text-align: center;
}
.htitle03-2._center::after {
  right: initial;
  left: 50%;
  transform: translateX(-50%) skewX(-50deg);
}
.htitle03-2._right {
  justify-content: flex-end;
  text-align: right;
}
.htitle03-2._right::after {
  right: 0;
  left: initial;
  transform: translateX(0) skewX(-50deg);
}
.htitle03-2 > em {
  position: relative;
  z-index: 2;
  display: inline-block;
  order: 2;
  width: 100%;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 0.8rem;
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0.3rem;
}
.htitle03-2 > span {
  position: relative;
  z-index: 2;
  display: inline-block;
  order: 1;
  width: 100%;
  margin-bottom: 0.3rem;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.2;
}
.htitle03-2::after {
  position: absolute;
  right: initial;
  bottom: 0;
  left: 0;
  display: block;
  width: 100px;
  height: 2px;
  content: "";
  background-image: linear-gradient(to right, #0177FB 50%, #ff0000 50%);
  transform: skewX(-50deg);
}
.htitle03-2._light {
  color: #f8f9fa;
}
.htitle03-2._light > em {
  color: inherit;
}
.htitle03-2._light > span {
  color: inherit;
}
.htitle03-2._light::after {
  background-image: linear-gradient(to right, white 50%, #aaa 50%);
}
@media (max-width: 991.98px) {
  .htitle03-2 > em {
    width: 100%;
    padding-bottom: 0rem;
    font-size: 1.2rem;
  }
  .htitle03-2 > span {
    width: 100%;
    font-size: 1.5rem;
  }
}

.htitle03-3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-weight: 600;
  text-align: center;
}
.htitle03-3 > * {
  display: block;
  padding: 0 1.5rem;
}
.htitle03-3 > * > em {
  display: inline;
  font-size: 2rem;
  color: #0177FB;
  text-transform: none;
}
.htitle03-3 > * > em::after {
  white-space: pre;
  content: "\a";
}
.htitle03-3 > * > span {
  display: inline;
  margin-bottom: 0.3rem;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.2;
}
.htitle03-3._light > b > em {
  color: #f8f9fa;
}
.htitle03-3._light > b > span {
  color: #f8f9fa;
}
.htitle03-3::before, .htitle03-3::after {
  display: inline-block;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.htitle03-3::before {
  width: 40px;
  height: 80px;
  background-image: url("../img/illust/icons/kirin.svg");
}
.htitle03-3::after {
  width: 40px;
  height: 80px;
  background-image: url("../img/illust/icons/arupaka.svg");
}

/* 見出しタイトル04
-------------------------------------------------- */
.htitle04 {
  --bg-color: #183289;
  position: relative;
  padding: 1rem;
  margin-bottom: 20px;
  font-size: 1.5rem;
  font-weight: 400;
  color: white;
  background-color: var(--bg-color);
}
.htitle04._center {
  text-align: center;
}
.htitle04._center::after {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.htitle04::after {
  position: absolute;
  top: 100%;
  left: 10%;
  width: 0;
  height: 0;
  content: "";
  border: solid 15px transparent;
  border-top-color: var(--bg-color);
}
@media (max-width: 991.98px) {
  .htitle04::after {
    border-width: 10px;
  }
}
@media (max-width: 575.98px) {
  .htitle04 {
    font-size: 1.2rem;
    letter-spacing: 0;
  }
}

.htitle04-2 {
  position: relative;
  padding: 1rem 0.5rem;
  margin-bottom: 20px;
  font-size: 1.2rem;
  font-weight: 700;
  border-top: solid 3px currentColor;
  border-bottom: solid 3px currentColor;
}
.htitle04-2::after {
  position: absolute;
  top: 100%;
  left: 10%;
  width: 0;
  height: 0;
  content: "";
  border: solid 15px transparent;
  border-top-color: currentColor;
}
.htitle04-2._center {
  text-align: center;
}
.htitle04-2._center::after {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 575.98px) {
  .htitle04-2 {
    padding: 1rem 0;
    text-align: center;
  }
  .htitle04-2::after {
    left: 50%;
    border-width: 10px;
    transform: translateX(-50%);
  }
}

/* 見出しタイトル07
-------------------------------------------------- */
/* h3.htitle07>b.sub{No.1}+b.main{title} */
.htitle07 {
  position: relative;
  font-size: 1.1rem;
  line-height: 1.2;
  border-bottom: double 4px #aaa;
  transform: skewX(-10deg);
}
.htitle07 > .sub {
  display: block;
  padding-bottom: 0.5rem;
  font-family: "Allison", cursive;
  font-size: 5rem;
  font-weight: 700;
  line-height: 0.7;
  color: #ddd;
  opacity: 0.5;
}
.htitle07 > .main {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  padding: 0.3rem 1rem;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0;
}
.htitle07._light > .sub {
  color: white;
  opacity: 0.2;
}
.htitle07._light > .main {
  color: white;
}
@media (max-width: 575.98px) {
  .htitle07 > .sub {
    font-size: 3em;
  }
  .htitle07 > .main {
    font-size: 1.2rem;
    letter-spacing: 0;
  }
}

/* 見出しタイトル0a
-------------------------------------------------- */
.htitle0a {
  padding-bottom: 0.3rem;
  margin-bottom: 0.5rem;
  font-size: 1.3em;
  font-weight: 600;
  line-height: 1.2;
  border-bottom: solid thin #aaa;
}
.htitle0a::first-letter {
  font-size: 1.2em;
  color: #0177FB;
}
.htitle0a._light {
  color: white;
}
.htitle0a._light::first-letter {
  font-size: 1.2em;
  color: #eee;
}

.htitle0a-2 {
  padding-bottom: 10px;
  margin-bottom: 20px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: #555;
  border-bottom: dotted 3px #aaa;
}
.htitle0a-2::first-letter {
  font-size: 1.2em;
  color: #0177FB;
}
@media (max-width: 991.98px) {
  .htitle0a-2 {
    font-size: 1.5rem;
  }
}

.htitle0a-3 {
  font-size: 1.5em;
  font-weight: 500;
}
.htitle0a-3::after {
  margin-top: 0.3em;
  display: block;
  width: 100%;
  height: 0.6rem;
  content: "";
  background: repeating-linear-gradient(-45deg, transparent 0, transparent 0.3rem, #ccc 0.3rem, #ccc 0.7rem);
}

.htitle0a-4 {
  padding: 0 0.3rem 0.5rem;
  margin-bottom: 1rem;
  font-size: 1.6em;
  font-weight: 600;
  line-height: 1.2;
  color: #0177FB;
  border-bottom: solid 3px #ff0000;
}

/* 見出しタイトル0b
-------------------------------------------------- */
.htitle0b {
  padding: 10px 20px;
  margin-bottom: 20px;
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.3;
  color: #888;
  background-color: #eee;
  border-left: solid 5px #0177FB;
}
@media (max-width: 991.98px) {
  .htitle0b {
    font-size: 1.1em;
  }
}

/* 見出しタイトル0c
-------------------------------------------------- */
.htitle0c {
  position: relative;
  padding: 10px;
  margin-bottom: 20px;
  font-size: 1.4em;
  font-weight: 700;
  line-height: 1.2;
  border-top: solid 2px currentColor;
  border-bottom: solid 2px currentColor;
}

/* 見出しタイトル0d
-------------------------------------------------- */
.htitle0d {
  padding: 10px;
  margin-bottom: 20px;
  font-size: 1.4em;
  font-weight: 400;
  line-height: 1.2;
  color: white;
  letter-spacing: 0.1em;
  background-color: #0177FB;
}
.htitle0d::before {
  padding-right: 0.1em;
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e92d";
}

/* 見出しタイトル10
-------------------------------------------------- */
.htitle10 {
  --bg-color: #0177FB;
  color: white;
  width: 100%;
  max-width: 100%;
  padding: 0.2em 0.5em 0.3em;
  margin: 0 auto 0.5em;
  font-size: 1.5em;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.2em;
  background-color: var(--bg-color);
  border: dashed 1px white;
  box-shadow: 0 0 0 5px var(--bg-color);
}
.htitle10._primary {
  --bg-color: #0177FB;
}
.htitle10._secondary {
  --bg-color: #183289;
}
.htitle10._tertiary {
  --bg-color: #ff0000;
}
.htitle10._success {
  --bg-color: #198754;
}
.htitle10._info {
  --bg-color: #0dcaf0;
}
.htitle10._warning {
  --bg-color: #ffc107;
}
.htitle10._danger {
  --bg-color: #dc3545;
}
.htitle10._light {
  --bg-color: #f8f9fa;
}
.htitle10._white {
  --bg-color: white;
}
.htitle10._dark {
  --bg-color: #212529;
}
.htitle10._black {
  --bg-color: black;
}
.htitle10._beige {
  --bg-color: #faf5ea;
}
.htitle10._teal {
  --bg-color: #fffcb9;
}
.htitle10._gray {
  --bg-color: #666;
}
.htitle10._primary-tint {
  --bg-color: #e6f1ff;
}
.htitle10._secondary-tint {
  --bg-color: #e8ebf3;
}
.htitle10._tertiary-tint {
  --bg-color: #ffe6e6;
}
.htitle10._gray-tint {
  --bg-color: #f0f0f0;
}
.htitle10._primary-shade {
  --bg-color: #013c7e;
}
.htitle10._secondary-shade {
  --bg-color: #0c1945;
}
.htitle10._tertiary-shade {
  --bg-color: maroon;
}
.htitle10._gray-shade {
  --bg-color: #0a0a0a;
}
.htitle10._primary-transparent {
  --bg-color: rgba(1, 119, 251, 0.7);
}
.htitle10._secondary-transparent {
  --bg-color: rgba(24, 50, 137, 0.7);
}
.htitle10._tertiary-transparent {
  --bg-color: rgba(255, 0, 0, 0.7);
}
.htitle10._gray-transparent {
  --bg-color: rgba(102, 102, 102, 0.9);
}
.htitle10._dark-transparent {
  --bg-color: rgba(33, 37, 41, 0.9);
}
.htitle10._light-transparent {
  --bg-color: rgba(248, 249, 250, 0.9);
}
.htitle10._light-transparent-thin {
  --bg-color: rgba(248, 249, 250, 0.3);
}

/* 見出しタイトル11
-------------------------------------------------- */
.htitle11 {
  position: relative;
  padding-bottom: 1.5rem;
  margin-bottom: 1rem;
  font-size: 1.7rem;
  font-weight: 500;
  text-align: center;
}
.htitle11::before, .htitle11::after {
  position: absolute;
  bottom: 0;
  display: block;
  width: 3rem;
  height: 5px;
  content: "";
  transform: skewX(-50deg);
}
.htitle11::before {
  left: 50%;
  background-color: #183289;
}
.htitle11::after {
  right: 50%;
  background-color: #0177FB;
}
.htitle11._light {
  color: white;
}
.htitle11._light::before {
  background-color: white;
}
.htitle11._light::after {
  background-color: #aaa;
}
@media (max-width: 991.98px) {
  .htitle11 {
    font-size: 1.6em;
  }
}

/* 見出しタイトル12 bs
-------------------------------------------------- */
.htitle12 {
  font-size: 2rem;
  writing-mode: vertical-rl;
}
@media (max-width: 991.98px) {
  .htitle12 {
    writing-mode: horizontal-tb;
  }
}

/* ボタン1
-------------------------------------------------- */
.u-btn1 {
  --btnColor: #0177FB;
  --textColor: #f8f9fa;
  --btnTransition: all 0.5s ease;
  --btnTransitionReverse: all 0.8s ease;
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 200px;
  padding: 0.5rem 3rem;
  overflow: hidden;
  font-weight: 600;
  line-height: 1;
  color: var(--textColor);
  text-align: center;
  text-decoration: none;
  border-color: var(--btnColor);
  border-style: solid;
  border-width: 1px;
  transition: var(--btnTransitionReverse);
  background-color: white;
}
.u-btn1._primary {
  --btnColor: #0177FB;
}
.u-btn1._secondary {
  --btnColor: #183289;
}
.u-btn1._tertiary {
  --btnColor: #ff0000;
}
.u-btn1._success {
  --btnColor: #198754;
}
.u-btn1._info {
  --btnColor: #0dcaf0;
}
.u-btn1._warning {
  --btnColor: #ffc107;
}
.u-btn1._danger {
  --btnColor: #dc3545;
}
.u-btn1._light {
  --btnColor: #f8f9fa;
  --textColor: #212529;
}
.u-btn1._light:hover {
  color: white;
  background-color: transparent;
}
.u-btn1._white {
  --btnColor: white;
}
.u-btn1._dark {
  --btnColor: #212529;
}
.u-btn1._black {
  --btnColor: black;
}
.u-btn1._beige {
  --btnColor: #faf5ea;
}
.u-btn1._teal {
  --btnColor: #fffcb9;
}
.u-btn1._gray {
  --btnColor: #666;
}
.u-btn1._primary-tint {
  --btnColor: #e6f1ff;
}
.u-btn1._secondary-tint {
  --btnColor: #e8ebf3;
}
.u-btn1._tertiary-tint {
  --btnColor: #ffe6e6;
}
.u-btn1._gray-tint {
  --btnColor: #f0f0f0;
}
.u-btn1._primary-shade {
  --btnColor: #013c7e;
}
.u-btn1._secondary-shade {
  --btnColor: #0c1945;
}
.u-btn1._tertiary-shade {
  --btnColor: maroon;
}
.u-btn1._gray-shade {
  --btnColor: #0a0a0a;
}
.u-btn1._primary-transparent {
  --btnColor: rgba(1, 119, 251, 0.7);
}
.u-btn1._secondary-transparent {
  --btnColor: rgba(24, 50, 137, 0.7);
}
.u-btn1._tertiary-transparent {
  --btnColor: rgba(255, 0, 0, 0.7);
}
.u-btn1._gray-transparent {
  --btnColor: rgba(102, 102, 102, 0.9);
}
.u-btn1._dark-transparent {
  --btnColor: rgba(33, 37, 41, 0.9);
}
.u-btn1._light-transparent {
  --btnColor: rgba(248, 249, 250, 0.9);
}
.u-btn1._light-transparent-thin {
  --btnColor: rgba(248, 249, 250, 0.3);
}
.u-btn1::before {
  margin-right: 0.3em;
  font-size: 1.1em;
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e901";
}
.u-btn1::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: inline-block;
  width: 102%;
  height: 102%;
  content: "";
  background-color: var(--btnColor);
  background-size: 100%;
  transition: var(--btnTransitionReverse);
}
.u-btn1:hover {
  color: var(--btnColor);
  opacity: 1;
  transition: var(--btnTransition);
}
.u-btn1:hover::after {
  transition: var(--btnTransition);
  transform: translateX(100%);
}
.u-btn1._gradient {
  border-color: #666;
  color: #212529;
}
.u-btn1._gradient::after {
  background-image: repeating-linear-gradient(30deg, #9e9e9e 2em, #bebebe 4em, white 6em, #bebebe 8em, #9e9e9e 10em);
}
.u-btn1._angle-right::before {
  content: "\e901";
}
.u-btn1._calendar::before {
  content: "\e953";
}
.u-btn1._cart::before {
  content: "\e93a";
}
.u-btn1._checkbox-checked::before {
  content: "\ea52";
}
.u-btn1._checkmark::before {
  content: "\ea10";
}
.u-btn1._circle::before {
  content: "\e908";
}
.u-btn1._circle-right::before {
  content: "\ea42";
}
.u-btn1._circle-right-fill::before {
  content: "\e904";
}
.u-btn1._clock2::before {
  content: "\e94f";
}
.u-btn1._envelope::before {
  content: "\e906";
}
.u-btn1._exclamation-circle::before {
  content: "\e90c";
}
.u-btn1._exclamation-mark::before {
  content: "\e90b";
}
.u-btn1._fax::before {
  content: "\e907";
}
.u-btn1._free-dial::before {
  content: "\e90a";
}
.u-btn1._home3::before {
  content: "\e903";
}
.u-btn1._link::before {
  content: "\e905";
}
.u-btn1._location::before {
  content: "\e947";
}
.u-btn1._mobile::before {
  content: "\e958";
}
.u-btn1._paste::before {
  content: "\e92d";
}
.u-btn1._phone::before {
  content: "\e942";
}
.u-btn1._printer::before {
  content: "\e954";
}
.u-btn1._quotes-left::before {
  content: "\e977";
}
.u-btn1._quotes-right::before {
  content: "\e978";
}
.u-btn1._user::before {
  content: "\e971";
}
.u-btn1._reference-mark::before {
  content: "※";
}
.u-btn1._podcast {
  border-color: #853D93;
}
.u-btn1._podcast::before {
  content: "\e90d";
}
.u-btn1._podcast::after {
  background-color: #853D93;
}
.u-btn1._podcast:hover {
  color: #853D93;
}
.u-btn1._ameba {
  border-color: #2d8c3c;
}
.u-btn1._ameba::before {
  content: "\e909";
}
.u-btn1._ameba::after {
  background-color: #2d8c3c;
}
.u-btn1._ameba:hover {
  color: #2d8c3c;
}
.u-btn1._facebook {
  border-color: #315096;
}
.u-btn1._facebook::before {
  content: "\ea90";
}
.u-btn1._facebook::after {
  background-color: #315096;
}
.u-btn1._facebook:hover {
  color: #315096;
}
.u-btn1._instagram {
  border-color: #f13f79;
}
.u-btn1._instagram::before {
  content: "\ea92";
}
.u-btn1._instagram::after {
  background-image: var(--instagram-gradient);
}
.u-btn1._instagram:hover {
  color: #f13f79;
}
.u-btn1._line {
  border-color: #00b900;
}
.u-btn1._line::before {
  content: "\e902";
}
.u-btn1._line::after {
  background-color: #00b900;
}
.u-btn1._line:hover {
  color: #00b900;
}
.u-btn1._pinterest {
  border-color: #bd081c;
}
.u-btn1._pinterest::before {
  content: "\ead1";
}
.u-btn1._pinterest::after {
  background-color: #bd081c;
}
.u-btn1._pinterest:hover {
  color: #bd081c;
}
.u-btn1._tiktok {
  border-color: #000;
}
.u-btn1._tiktok::before {
  content: "\e900";
}
.u-btn1._tiktok::after {
  background-color: #000;
}
.u-btn1._tiktok:hover {
  color: #000;
}
.u-btn1._twitter {
  border-color: #1da1f2;
}
.u-btn1._twitter::before {
  content: "\ea96";
}
.u-btn1._twitter::after {
  background-color: #1da1f2;
}
.u-btn1._twitter:hover {
  color: #1da1f2;
}
.u-btn1._youtube {
  border-color: #da1725;
}
.u-btn1._youtube::before {
  content: "\ea9d";
}
.u-btn1._youtube::after {
  background-color: #da1725;
}
.u-btn1._youtube:hover {
  color: #da1725;
}
.u-btn1._fit {
  width: 100%;
}
.u-btn1._min {
  min-width: 0;
  padding: 0.7rem 1rem;
}
.u-btn1._transparent-light {
  color: #f8f9fa;
  border: solid thin #f8f9fa;
  border-color: #f8f9fa;
}
.u-btn1._transparent-light::after {
  background-color: transparent;
}
.u-btn1._transparent-light:hover {
  color: #212529;
}
.u-btn1._transparent-dark {
  color: #212529;
  border: solid thin #212529;
  border-color: #212529;
}
.u-btn1._transparent-dark::after {
  background-color: transparent;
}
.u-btn1._transparent-dark:hover {
  background-color: #0177FB;
  color: #f8f9fa;
}
@media (max-width: 575.98px) {
  .u-btn1 {
    padding: 0.6rem 2rem;
  }
}

/* 欧文ボタン1
-------------------------------------------------- */
.u-btnEchars1 {
  display: inline-block;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.u-btnEchars1::before {
  margin-right: 5px;
  font-size: 0.9em;
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.u-btnEchars1._phone::before {
  content: "\e942";
}
.u-btnEchars1._envelope::before {
  content: "\e906";
}
.u-btnEchars1._fax::before {
  content: "\e907";
}
.u-btnEchars1._mobile::before {
  content: "\e958";
}
.u-btnEchars1._free-dial::before {
  content: "\e90a";
}
.u-btnEchars1:not([href]):hover {
  opacity: 1;
  transition: all 0.3s ease;
}
.u-btnEchars1[href]:hover {
  color: inherit;
  opacity: 0.5;
}

/* 料金表
-------------------------------------------------- */
/* dl.u-product>dt+dd */
.u-product {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  padding: 0 0.5rem;
  margin-bottom: 0.5rem;
  line-height: 1;
  letter-spacing: 0;
}
.u-product > * {
  display: inline-block;
}
.u-product > *:nth-child(1) {
  display: inline-block;
  flex-basis: auto;
  flex-grow: 0;
  flex-shrink: 1;
  order: 1;
  padding-right: 5px;
  font-size: 1.1em;
  font-weight: 500;
  line-height: 1;
}
.u-product > *:nth-child(2) {
  display: inline-block;
  flex-basis: auto;
  flex-grow: 0;
  flex-shrink: 0;
  order: 3;
  padding-left: 5px;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 1.1em;
  font-weight: 700;
  color: #888;
  text-align: right;
}
.u-product::after {
  display: block;
  flex-basis: auto;
  flex-grow: 1;
  flex-shrink: 1;
  order: 2;
  min-width: 2em;
  height: 1em;
  content: "";
  background: radial-gradient(#777 20%, transparent 0) repeat-x center center/8px 8px;
}
.u-product.noprice::after {
  content: none;
}
@media (max-width: 575.98px) {
  .u-product.break {
    flex-wrap: wrap;
  }
  .u-product.break > *:nth-child(1) {
    width: 100%;
    margin-bottom: 0.5rem;
  }
  .u-product.break > *:nth-child(2) {
    width: 100%;
    text-align: left;
  }
  .u-product.break::after {
    content: none;
  }
}

/* 定義リスト1
-------------------------------------------------- */
/*  ul.row.g-0.row-cols-1.u-defList1>li.col*3>dl>dt>em{###}^dd{###} */
/*  ul.row.g-0.row-cols-1.u-defList1._lg._transparent>li.col*3>dl>dt>em{###}^dd{###} */
.u-defList1 {
  --dt-width: 10rem;
  --dt-bg-color: #0177FB;
  --border-color: #aaa;
  --space: 0.5rem;
}
.u-defList1 > li > dl {
  display: flex;
  padding: var(--space);
  border-bottom: solid thin var(--border-color);
}
.u-defList1 > li > dl > dt {
  flex: 0 0 auto;
  width: var(--dt-width);
}
.u-defList1 > li > dl > dt > * {
  display: block;
  padding: 0 var(--space);
  color: #f8f9fa;
  text-align: center;
  background-color: var(--dt-bg-color);
}
.u-defList1 > li > dl > dd {
  flex: 1 1 auto;
  padding: 0 var(--space);
}
.u-defList1._lg {
  --space: 1rem;
}
.u-defList1._transparent > li:first-of-type > dl {
  border-top: solid thin var(--border-color);
}
.u-defList1._transparent > li > dl > dt > * {
  color: currentColor;
  text-align: initial;
  background-color: transparent;
}
.u-defList1._noborder {
  --space: 0.1rem;
}
.u-defList1._noborder > li:first-of-type > dl {
  border-top: none;
}
.u-defList1._noborder > li > dl {
  border-bottom: none;
}
@media (max-width: 575.98px) {
  .u-defList1 {
    --dt-width: 100%;
  }
  .u-defList1 > li > dl {
    display: block;
  }
  .u-defList1 > li > dl > dt {
    padding-bottom: calc(var(--space) * 0.5);
  }
  .u-defList1 > li > dl > dt > * {
    padding: 0 calc(var(--space) * 0.5);
    font-size: 1.2em;
    text-align: left;
  }
  .u-defList1 > li > dl > dd {
    padding: 0 calc(var(--space) * 0.5);
  }
  .u-defList1._transparent > li > dl > dt > * {
    padding: 0;
  }
  .u-defList1._transparent > li > dl > dd {
    padding: 0;
  }
}

/* 定義リスト2
-------------------------------------------------- */
/*  ul.row.g-0.row-cols-1.u-defList2>li.col*3>dl>dt>em{###}^dd{###} */
.u-defList2 > li > dl {
  padding: 0.5rem 0;
  border-bottom: dashed 3px #555;
}
.u-defList2 > li > dl > dt {
  font-weight: 600;
  color: #555;
}
.u-defList2 > li > dl > dt::before {
  padding-right: 0.3em;
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e904";
}
.u-defList2 > li > dl > dd {
  padding: 0 0.5rem;
  font-size: 0.9em;
}

/* 定義リスト3
-------------------------------------------------- */
/*  ul.row.g-0.row-cols-1.u-defList3>li.col*3>dl>dt>em{###}^dd{###} */
.u-defList3 > li:first-of-type > dl {
  border-top: solid thin #ddd;
}
.u-defList3 > li > dl {
  display: flex;
  height: 100%;
  border-bottom: solid thin #ddd;
}
.u-defList3 > li > dl > dt {
  position: relative;
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 12rem;
  height: 100%;
  padding: 10px 0;
  font-weight: 700;
  color: white;
  text-align: center;
  vertical-align: middle;
  background-color: #183289;
}
.u-defList3 > li > dl > dt::after {
  position: absolute;
  top: calc(50% - 10px);
  right: -8px;
  display: block;
  width: 0;
  height: 0;
  content: "";
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #183289;
}
.u-defList3 > li > dl > dd {
  flex: 1 1 auto;
  height: 100%;
  padding: 10px 20px;
  vertical-align: middle;
  background-color: white;
}
@media (max-width: 575.98px) {
  .u-defList3 > li > dl > dt {
    width: 35%;
  }
}

/* リストデザイン0
-------------------------------------------------- */
/* ul.u-listDesign0>li* */
.u-listDesign0 {
  padding-inline-start: 1.2rem;
}
.u-listDesign0 > li {
  line-height: 1.5;
  margin-bottom: 0.5rem;
}
.u-listDesign0 > li::marker {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e908";
  line-height: 1;
}

/* リストデザイン1
-------------------------------------------------- */
/* ul.row.g-0.gy-2.row-cols-1.u-listDesign1._bordered.ls-0>li.col* */
.u-listDesign1 {
  --gap: 0.3em;
  --pseudo-color: #0177FB;
}
.u-listDesign1._primary {
  --pseudo-color: #0177FB;
}
.u-listDesign1._secondary {
  --pseudo-color: #183289;
}
.u-listDesign1._tertiary {
  --pseudo-color: #ff0000;
}
.u-listDesign1._success {
  --pseudo-color: #198754;
}
.u-listDesign1._info {
  --pseudo-color: #0dcaf0;
}
.u-listDesign1._warning {
  --pseudo-color: #ffc107;
}
.u-listDesign1._danger {
  --pseudo-color: #dc3545;
}
.u-listDesign1._light {
  --pseudo-color: #f8f9fa;
}
.u-listDesign1._white {
  --pseudo-color: white;
}
.u-listDesign1._dark {
  --pseudo-color: #212529;
}
.u-listDesign1._black {
  --pseudo-color: black;
}
.u-listDesign1._beige {
  --pseudo-color: #faf5ea;
}
.u-listDesign1._teal {
  --pseudo-color: #fffcb9;
}
.u-listDesign1._gray {
  --pseudo-color: #666;
}
.u-listDesign1._primary-tint {
  --pseudo-color: #e6f1ff;
}
.u-listDesign1._secondary-tint {
  --pseudo-color: #e8ebf3;
}
.u-listDesign1._tertiary-tint {
  --pseudo-color: #ffe6e6;
}
.u-listDesign1._gray-tint {
  --pseudo-color: #f0f0f0;
}
.u-listDesign1._primary-shade {
  --pseudo-color: #013c7e;
}
.u-listDesign1._secondary-shade {
  --pseudo-color: #0c1945;
}
.u-listDesign1._tertiary-shade {
  --pseudo-color: maroon;
}
.u-listDesign1._gray-shade {
  --pseudo-color: #0a0a0a;
}
.u-listDesign1._primary-transparent {
  --pseudo-color: rgba(1, 119, 251, 0.7);
}
.u-listDesign1._secondary-transparent {
  --pseudo-color: rgba(24, 50, 137, 0.7);
}
.u-listDesign1._tertiary-transparent {
  --pseudo-color: rgba(255, 0, 0, 0.7);
}
.u-listDesign1._gray-transparent {
  --pseudo-color: rgba(102, 102, 102, 0.9);
}
.u-listDesign1._dark-transparent {
  --pseudo-color: rgba(33, 37, 41, 0.9);
}
.u-listDesign1._light-transparent {
  --pseudo-color: rgba(248, 249, 250, 0.9);
}
.u-listDesign1._light-transparent-thin {
  --pseudo-color: rgba(248, 249, 250, 0.3);
}
.u-listDesign1._currentColor {
  --pseudo-color: currentColor;
}
.u-listDesign1 > li {
  text-indent: calc(-1em - var(--gap));
  padding-left: calc(1em + var(--gap));
}
.u-listDesign1 > li::before {
  width: 1em;
  margin-right: var(--gap);
  color: var(--pseudo-color);
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\ea52";
}
.u-listDesign1._bordered > li {
  background-image: repeating-linear-gradient(to right, transparent 0, transparent 2px, #aaa 2px, #aaa 4px);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: calc(100% - var(--bs-gutter-x)) 1px;
}
.u-listDesign1._checkmark > li::before {
  content: "\ea10";
}
.u-listDesign1._circle-right-fill > li::before {
  content: "\e904";
}
.u-listDesign1._reference-mark > li::before {
  content: "※";
}
.u-listDesign1._circle > li::before {
  content: "\e908";
}
.u-listDesign1._exclamation-circle > li::before {
  content: "\e90c";
}
.u-listDesign1._exclamation-mark > li::before {
  content: "\e90b";
}

/* リストデザイン3
-------------------------------------------------- */
.u-listDesign3 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.u-listDesign3 > li {
  flex: 0 0 auto;
  width: auto;
}
.u-listDesign3 > li::after {
  padding-right: 0.2rem;
  padding-left: 0.5rem;
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e901";
  margin: 0;
  line-height: 0;
}
.u-listDesign3 > li:last-child::after {
  content: " ";
  padding: 0;
}

/* リストデザイン6
-------------------------------------------------- */
/* ul.row.g-4.row-cols-1.row-cols-md-2.u-listDesign6>li.col*>.content>.inner */
.u-listDesign6 {
  font-size: 1.5em;
}
.u-listDesign6 > li > .content {
  transform: skewX(-10deg);
  width: 100%;
  height: 100%;
  padding: 0.4em 0.8em;
  font-weight: 500;
  color: #999;
  background-color: white;
  border-left: solid 6px #666;
  box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.2) inset;
}
.u-listDesign6 > li > .content > .inner {
  transform: skewX(10deg);
}
@media (max-width: 991.98px) {
  .u-listDesign6 {
    font-size: 1.1em;
  }
}

/* オーダーリスト1
-------------------------------------------------- */
/* ol.row.g-2.row-cols-1.row-cols-md-1.row-cols-lg-1.u-orderedList1.ls-0>li.col*>em */
.u-orderedList1 {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none !important; /* 数字を一旦消す */
  counter-reset: number; /* 数字をリセット */
}
.u-orderedList1 > li {
  display: flex;
  align-items: center;
  font-size: calc(1.3 * 0.9em);
}
.u-orderedList1 > li > b,
.u-orderedList1 > li > em {
  width: calc(100% - (1.3 * 1em));
  min-width: 0;
  font-weight: 600;
  border-bottom: dotted 3px #bbb;
  line-height: 1.5;
}
.u-orderedList1 > li::before {
  display: inline-block;
  width: calc(1.3 * 1.2em);
  height: calc(1.3 * 1.2em);
  padding: 0 0.3rem;
  margin-right: 0.2em;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: calc(1.56 * 1em);
  font-weight: bold;
  line-height: calc(1.3 * 1em);
  color: white;
  text-align: center;
  letter-spacing: 0;
  content: counter(number);
  counter-increment: number;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22layer1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20300%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%2378c323%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M292.5%2C149.5c0%2C39.35-22.717%2C77.446-57.826%2C80.543C227.446%2C266.185%2C189.35%2C292%2C150%2C292A142.5%2C142.5%2C0%2C0%2C1%2C7.5%2C149.5c0-26.5%2C12.391-40.272%2C37.174-53.7C40.543%2C37.978%2C97.8%2C7%2C150%2C7A142.5%2C142.5%2C0%2C0%2C1%2C292.5%2C149.5Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
@media (max-width: 991.98px) {
  .u-orderedList1 > li {
    font-size: calc(1.3 * 1em);
  }
}

/* オーダーリスト2
-------------------------------------------------- */
/* ol.row.g-2.row-cols-1.row-cols-md-2.u-orderedList2.ls-0>li.col*>em */
.u-orderedList2 {
  --u-orderedList2_borderColor: #ddd;
  display: flex;
  flex-wrap: wrap;
  list-style-type: none !important;
  counter-reset: number;
}
.u-orderedList2._nb > li::after {
  content: none;
}
.u-orderedList2 > li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-bottom: 0.5rem;
}
.u-orderedList2 > li > em,
.u-orderedList2 > li > b {
  flex: 1;
  min-width: 0;
  font-weight: 700;
  line-height: 1.3;
}
.u-orderedList2 > li::before {
  width: calc(1.5 * 1em);
  height: calc(1.5 * 1em);
  margin-right: 0.5em;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: calc(1.5 * 1em);
  font-weight: bold;
  line-height: calc(1.5 * 1em);
  color: white;
  text-align: center;
  content: counter(number);
  counter-increment: number;
  background-color: #0177FB;
  border-radius: 50%;
}
.u-orderedList2 > li::after {
  content: "";
  margin-top: 0.3rem;
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--u-orderedList2_borderColor);
}
@media (max-width: 575.98px) {
  .u-orderedList2 > li {
    font-size: calc(1 * 1rem);
  }
  .u-orderedList2 > li > em,
  .u-orderedList2 > li > b {
    max-width: calc(100% - (1 * 1rem));
  }
  .u-orderedList2 > li::before {
    margin-right: 0.5%;
    font-size: calc(1 * 1rem);
  }
}

/* 定款
-------------------------------------------------- */
/*
.aoi>h3.shou+h4.jyoubun-midashi+ul.jyou>li{###}>ul>li
*/
.aoi .shou {
  padding-top: 1.5rem;
  margin-bottom: 0.3rem;
  font-size: 1.5rem;
  font-weight: 700;
  counter-increment: syo_num;
}
.aoi .shou::before {
  margin-right: 1rem;
  content: "第" counter(syo_num) "条";
}
.aoi .shou:first-of-type {
  padding-top: 0;
}
.aoi .jyoubun-midashi {
  padding-top: 0.5rem;
  padding-left: 1rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
}
.aoi ul.jyou {
  counter-reset: ko_num;
  counter-increment: jyo_num;
}
.aoi ul.jyou > li {
  padding-bottom: 0.3rem;
  padding-left: calc(2em + 1em);
  text-indent: calc(-2em - 1em);
  counter-increment: ko_num;
}
.aoi ul.jyou > li:nth-of-type(1)::before {
  display: inline-block;
  width: 2em;
  margin-right: 1rem;
  font-weight: bold;
  text-align: right;
  content: "";
}
.aoi ul.jyou > li::before {
  display: inline-block;
  width: 2em;
  margin-right: 1rem;
  text-align: right;
  content: counter(ko_num);
}
.aoi ul.jyou > li > ul {
  padding-left: calc(2em + 2em);
  counter-reset: gou_num1;
}
.aoi ul.jyou > li > ul > li {
  counter-increment: gou_num1;
}
.aoi ul.jyou > li > ul > li::before {
  margin-right: 1rem;
  content: "(" counter(gou_num1) ")";
}
.aoi ul.jyou > li > ul > li > ul {
  padding-left: calc(2em + 2em);
  counter-reset: gou_num2;
}
.aoi ul.jyou > li > ul > li > ul > li {
  counter-increment: gou_num2;
}
.aoi ul.jyou > li > ul > li > ul > li::before {
  margin-right: 1rem;
  content: "[" counter(gou_num2) "]";
}
@media (max-width: 575.98px) {
  .aoi .shou {
    font-size: 1.1rem;
  }
  .aoi .jyoubun-midashi {
    padding-left: 0;
    font-size: 0.8rem;
  }
}

/* テーブルデザイン1
-------------------------------------------------- */
/* table.u-table1>tbody>tr>(th*3)^(tr>td*3)*3 */
.u-table1 {
  width: 100%;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
}
.u-table1 th {
  padding: 10px;
  font-weight: 900;
  color: white;
  text-align: center;
  background-color: #183289;
  border: solid thin #ccc;
}
.u-table1 td {
  padding: 10px;
  vertical-align: top;
  border: solid thin #ccc;
}
.u-table1 tr:nth-child(odd) {
  background-color: #fbfbfb;
}
.u-table1 tr:nth-child(even) {
  background-color: white;
}

/* カレンダーCMS
-------------------------------------------------- */
.calendar-cms {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
}
.calendar-cms.jc-start {
  justify-content: flex-start;
}
.calendar-cms.jc-center {
  justify-content: center;
}
.calendar-cms.jc-end {
  justify-content: flex-end;
}
.calendar-cms > .calendar {
  padding: 10px;
}
.calendar-cms > .calendar > .calendar_head::before {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e953";
}
.calendar-cms > .calendar > .calendar_body > table {
  width: 100%;
  text-align: center;
  letter-spacing: 0;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
}
.calendar-cms > .calendar > .calendar_body > table tr {
  border-top: solid thin #aaa;
  border-bottom: solid thin #aaa;
}
.calendar-cms > .calendar > .calendar_body > table th {
  padding: 0.5em 1em;
  font-weight: 400;
  color: white;
  background-color: #555;
}
.calendar-cms > .calendar > .calendar_body > table td {
  padding: 0.5em 1em;
  vertical-align: middle;
  background-color: white;
}
.calendar-cms > .calendar > .calendar_body td.calendar.holiday:not(.kara) {
  background-color: #f2dde3;
}
.calendar-cms > .calendar > .calendar_body td.calendar.sun:not(.kara) {
  background-color: #f2dde3;
}
.calendar-cms > .calendar > .calendar_body td.calendar.thu:not(.kara) {
  background-color: #f2dde3;
}
.calendar-cms._col-1 > .calendar {
  width: 100%;
}
.calendar-cms._col-2 > .calendar {
  width: 50%;
}
.calendar-cms._col-3 > .calendar {
  width: 33.3333333333%;
}
@media (max-width: 575.98px) {
  .calendar-cms._col-1 > .calendar {
    width: 100%;
  }
  .calendar-cms._col-2 > .calendar {
    width: 100%;
  }
  .calendar-cms._col-3 > .calendar {
    width: 100%;
  }
}

button#is-previous,
button#is-following {
  display: inline-block;
  cursor: pointer;
  background-color: transparent;
  border: none;
}

.cal1 {
  color: #feecbd;
}

.cal2 {
  color: lightpink;
}

.cal3 {
  color: #94cad3;
}

.cal4 {
  color: #c38a4c;
}

/* 画像のリサイズ
-------------------------------------------------- */
/* a.u-ratio._cover._ratio-16x9>img[src=img/top1.jpg] */
.u-ratio {
  display: block;
  overflow: hidden;
  background-color: #f0f0f0;
  aspect-ratio: 4/3;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 15rem 15rem;
  position: relative;
}
.u-ratio._shrink {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 90% 100%, 90% 90%, 0% 90%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 90% 100%, 90% 90%, 0% 90%, 0 100%);
}
.u-ratio._shrink::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "VIEW";
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 1rem;
  line-height: 1;
  padding: 1.2rem 3rem;
  border: solid thin currentColor;
  color: white;
  opacity: 0;
  z-index: 3;
  filter: blur(5px);
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.u-ratio > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.u-ratio._cover > img {
  -o-object-fit: cover;
     object-fit: cover;
}
.u-ratio._contain > img {
  -o-object-fit: contain;
     object-fit: contain;
}
a.u-ratio:hover {
  opacity: 1;
}
a.u-ratio:hover > img {
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform: scale(1.1);
}

a.u-ratio._shrink:hover > img {
  filter: brightness(50%) blur(5px);
}
a.u-ratio._shrink:hover::before {
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  filter: blur(0);
  opacity: 1;
}

.u-ratio._ratio-1x1 {
  aspect-ratio: 1;
}
.u-ratio._ratio-2x1 {
  aspect-ratio: 2;
}
.u-ratio._ratio-4x3 {
  aspect-ratio: 1.3333333333;
}
.u-ratio._ratio-5x4 {
  aspect-ratio: 1.25;
}
.u-ratio._ratio-16x9 {
  aspect-ratio: 1.7777777778;
}
.u-ratio._ratio-21x9 {
  aspect-ratio: 2.3333333333;
}
.u-ratio._ratio-31x9 {
  aspect-ratio: 3.4444444444;
}
.u-ratio._ratio-1x2 {
  aspect-ratio: 0.5;
}
.u-ratio._ratio-3x4 {
  aspect-ratio: 0.75;
}
.u-ratio._ratio-9x16 {
  aspect-ratio: 0.5625;
}
.u-ratio._ratio-9x21 {
  aspect-ratio: 0.4285714286;
}
.u-ratio._ratio-h {
  aspect-ratio: 1.35;
}
.u-ratio._ratio-v {
  aspect-ratio: 0.75;
}
.u-ratio._ratio-unset {
  aspect-ratio: unset;
}
@media (min-width: 576px) {
  .u-ratio._ratio-md-1x1 {
    aspect-ratio: 1;
  }
  .u-ratio._ratio-md-2x1 {
    aspect-ratio: 2;
  }
  .u-ratio._ratio-md-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-ratio._ratio-md-5x4 {
    aspect-ratio: 1.25;
  }
  .u-ratio._ratio-md-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-ratio._ratio-md-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-ratio._ratio-md-31x9 {
    aspect-ratio: 3.4444444444;
  }
  .u-ratio._ratio-md-1x2 {
    aspect-ratio: 0.5;
  }
  .u-ratio._ratio-md-3x4 {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-md-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-ratio._ratio-md-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-ratio._ratio-md-h {
    aspect-ratio: 1.35;
  }
  .u-ratio._ratio-md-v {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-md-unset {
    aspect-ratio: unset;
  }
}
@media (min-width: 992px) {
  .u-ratio._ratio-lg-1x1 {
    aspect-ratio: 1;
  }
  .u-ratio._ratio-lg-2x1 {
    aspect-ratio: 2;
  }
  .u-ratio._ratio-lg-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-ratio._ratio-lg-5x4 {
    aspect-ratio: 1.25;
  }
  .u-ratio._ratio-lg-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-ratio._ratio-lg-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-ratio._ratio-lg-31x9 {
    aspect-ratio: 3.4444444444;
  }
  .u-ratio._ratio-lg-1x2 {
    aspect-ratio: 0.5;
  }
  .u-ratio._ratio-lg-3x4 {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-lg-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-ratio._ratio-lg-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-ratio._ratio-lg-h {
    aspect-ratio: 1.35;
  }
  .u-ratio._ratio-lg-v {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-lg-unset {
    aspect-ratio: unset;
  }
}
@media (min-width: 1200px) {
  .u-ratio._ratio-xl-1x1 {
    aspect-ratio: 1;
  }
  .u-ratio._ratio-xl-2x1 {
    aspect-ratio: 2;
  }
  .u-ratio._ratio-xl-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-ratio._ratio-xl-5x4 {
    aspect-ratio: 1.25;
  }
  .u-ratio._ratio-xl-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-ratio._ratio-xl-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-ratio._ratio-xl-31x9 {
    aspect-ratio: 3.4444444444;
  }
  .u-ratio._ratio-xl-1x2 {
    aspect-ratio: 0.5;
  }
  .u-ratio._ratio-xl-3x4 {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-xl-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-ratio._ratio-xl-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-ratio._ratio-xl-h {
    aspect-ratio: 1.35;
  }
  .u-ratio._ratio-xl-v {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-xl-unset {
    aspect-ratio: unset;
  }
}
@media (min-width: 1400px) {
  .u-ratio._ratio-xxl-1x1 {
    aspect-ratio: 1;
  }
  .u-ratio._ratio-xxl-2x1 {
    aspect-ratio: 2;
  }
  .u-ratio._ratio-xxl-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-ratio._ratio-xxl-5x4 {
    aspect-ratio: 1.25;
  }
  .u-ratio._ratio-xxl-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-ratio._ratio-xxl-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-ratio._ratio-xxl-31x9 {
    aspect-ratio: 3.4444444444;
  }
  .u-ratio._ratio-xxl-1x2 {
    aspect-ratio: 0.5;
  }
  .u-ratio._ratio-xxl-3x4 {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-xxl-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-ratio._ratio-xxl-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-ratio._ratio-xxl-h {
    aspect-ratio: 1.35;
  }
  .u-ratio._ratio-xxl-v {
    aspect-ratio: 0.75;
  }
  .u-ratio._ratio-xxl-unset {
    aspect-ratio: unset;
  }
}

/* タイムライン1
-------------------------------------------------- */
/*
ol.u-timeline1._countup>(li[data-prefix="STEP"]>.timeline__inner>dl>dt>h3.htitle0a-3{###}^dd>p{###})*3
*/
ol.u-timeline1 {
  list-style: none;
  counter-reset: timeline 0;
}
ol.u-timeline1 > li {
  display: flex;
  counter-increment: timeline 1;
}
ol.u-timeline1 > li::before {
  content: attr(data-prefix);
  display: block;
  flex: 0 0 auto;
  order: 1;
  font-size: 1.7em;
  line-height: 1;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-weight: bold;
  width: 4em;
  text-align: right;
  padding-right: 0.5em;
}
ol.u-timeline1 > li::after {
  content: "";
  display: block;
  flex: 0 0 auto;
  order: 2;
  border-radius: 50%;
  background-color: #0177FB;
  width: calc(1.7em * 0.5);
  height: calc(1.7em * 0.5);
  margin-top: calc(1.7em * 0.5);
  transform: translateX(calc(50% + (2px * 0.5))) translateY(-50%);
}
ol.u-timeline1 > li .timeline__inner {
  flex: 1 1 auto;
  padding: 0 0 3rem 1rem;
  border-left: solid 2px #0177FB;
  order: 3;
}
ol.u-timeline1 > li:first-of-type::before {
  padding-top: 3rem;
}
ol.u-timeline1 > li:first-of-type::after {
  margin-top: calc(3rem + calc(1.7em * 0.5));
}
ol.u-timeline1 > li:first-of-type .timeline__inner {
  padding-top: 3rem;
}
ol.u-timeline1 > li:last-of-type .timeline__inner {
  padding-bottom: 3rem;
}
ol.u-timeline1._countup > li::before {
  content: attr(data-prefix) counter(timeline);
}
@media (max-width: 575.98px) {
  ol.u-timeline1 > li {
    position: relative;
  }
  ol.u-timeline1 > li::before {
    position: absolute;
    top: 0;
    left: 0;
    text-align: left;
    width: 100%;
    padding-left: calc(1.7em * 0.5 + 0.5rem);
  }
  ol.u-timeline1 > li .timeline__inner {
    padding-top: 2.2em;
  }
  ol.u-timeline1 > li:first-of-type .timeline__inner {
    padding-top: calc(3rem + 1.7em + 0.5em);
  }
}

/* タイムライン2
-------------------------------------------------- */
/*
ol.u-timeline2>(li>.timeline__inner>dl>dt>h3.htitle0a-3{###}^dd>p{###})*3
*/
ol.u-timeline2 {
  list-style: none;
}
ol.u-timeline2 > li {
  position: relative;
  display: flex;
  counter-increment: timeline 1;
  align-items: flex-end;
  background-color: #f0f0f0;
  margin-bottom: 1rem;
  overflow: hidden;
  border-radius: 0 0.5rem 0 0.5rem;
}
ol.u-timeline2 > li::before {
  content: attr(data-prefix);
  display: block;
  flex: 0 0 auto;
  font-size: 4em;
  line-height: 1;
  letter-spacing: 0;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-weight: 600;
  text-align: right;
  margin-right: -3rem;
  margin-left: -0.5rem;
  margin-bottom: -1rem;
  opacity: 0.1;
  color: inherit;
}
ol.u-timeline2 > li:last-of-type {
  margin-bottom: 0;
}
ol.u-timeline2 > li .timeline__inner {
  flex: 1 1 auto;
  padding: 1rem;
}
@media (max-width: 991.98px) {
  ol.u-timeline2 > li {
    padding-top: 4rem;
  }
  ol.u-timeline2 > li::before {
    position: absolute;
    top: 0;
    left: 0;
  }
}

/* タイムラインカード1
-------------------------------------------------- */
.u-timelineCard1 {
  position: relative;
}
.u-timelineCard1 > .num {
  position: relative;
  z-index: 3;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 3em;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.8;
  transform: translateY(30%);
}
.u-timelineCard1 > .img {
  padding: 0 0.5rem 0.5rem;
  text-align: center;
}
.u-timelineCard1 > .title {
  padding: 0.5rem 1rem;
  font-size: 1.2em;
  font-weight: 700;
  line-height: 1.2;
  color: #0177FB;
}
.u-timelineCard1 > .text {
  padding: 0 1rem;
  font-size: 0.9em;
}
.u-timelineCard1._light > .num {
  color: inherit;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
  opacity: 1;
}
.u-timelineCard1._light > .title {
  color: inherit;
}

/* よくある質問1
-------------------------------------------------- */
/*  .u-faq1>(dl>dt{###}+dd{###})*3 */
.u-faq1 {
  display: block;
}
.u-faq1 > dl {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  padding: 15px 0;
  counter-increment: faq_num;
  border-top: solid thin #aaa;
}
.u-faq1 > dl > dt,
.u-faq1 > dl > dd {
  width: calc(100% - 6.5rem);
  padding: 0 1rem;
  margin: 0.8rem 0;
  border-left: solid thin #aaa;
}
.u-faq1 > dl > dt {
  order: 2;
  font-size: 1.4em;
  font-weight: 700;
  color: #999;
}
.u-faq1 > dl > dd {
  order: 4;
}
.u-faq1 > dl:last-child {
  border-bottom: solid thin #aaa;
}
.u-faq1 > dl::before, .u-faq1 > dl::after {
  display: block;
  width: 6.5rem;
  padding-right: 1rem;
  margin: 5px 0;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-weight: 600;
  text-align: right;
  letter-spacing: 0;
  content: "";
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}
.u-faq1 > dl::before {
  order: 1;
  font-size: calc(1.7 * 1rem);
  color: #315096;
  content: "Que" counter(faq_num) ".";
}
.u-faq1 > dl::after {
  order: 3;
  font-size: calc(1.7 * 1.1rem);
  color: #dc3545;
  content: "Ans" counter(faq_num) ".";
}
@media (max-width: 575.98px) {
  .u-faq1 > dl {
    padding: 20px 0;
  }
  .u-faq1 > dl > dt,
  .u-faq1 > dl > dd {
    width: calc(100% - 25px);
    padding-top: 0;
    padding-right: 0;
    margin-top: 0;
    margin-left: auto;
  }
}

/* 格子上の背景
-------------------------------------------------- */
.u-bgGrid {
  background-size: 20px 20px;
}
.u-bgGrid._both {
  background-image: linear-gradient(#555 1px, transparent 0), linear-gradient(90deg, #555 1px, transparent 0);
}
.u-bgGrid._h {
  background-image: linear-gradient(#555 1px, transparent 0);
}
.u-bgGrid._v {
  background-image: linear-gradient(90deg, #555 1px, transparent 0);
}

/* スクロール
-------------------------------------------------- */
.u-vscroll {
  overflow-y: auto;
  /* スクロールの背景の設定 */
  /* スクロールのつまみ部分の設定 */
}
.u-vscroll::-webkit-scrollbar {
  width: 3px;
  height: 3px;
}
.u-vscroll::-webkit-scrollbar-track {
  background-color: #eee;
}
.u-vscroll::-webkit-scrollbar-thumb {
  background-color: #0177FB;
}
.u-vscroll._h-50 > * {
  height: calc(50 * 1px);
}
.u-vscroll._max-h-50 > * {
  max-height: calc(50 * 1px);
}
.u-vscroll._h-100 > * {
  height: calc(100 * 1px);
}
.u-vscroll._max-h-100 > * {
  max-height: calc(100 * 1px);
}
.u-vscroll._h-150 > * {
  height: calc(150 * 1px);
}
.u-vscroll._max-h-150 > * {
  max-height: calc(150 * 1px);
}
.u-vscroll._h-200 > * {
  height: calc(200 * 1px);
}
.u-vscroll._max-h-200 > * {
  max-height: calc(200 * 1px);
}
.u-vscroll._h-250 > * {
  height: calc(250 * 1px);
}
.u-vscroll._max-h-250 > * {
  max-height: calc(250 * 1px);
}
.u-vscroll._h-300 > * {
  height: calc(300 * 1px);
}
.u-vscroll._max-h-300 > * {
  max-height: calc(300 * 1px);
}
.u-vscroll._h-350 > * {
  height: calc(350 * 1px);
}
.u-vscroll._max-h-350 > * {
  max-height: calc(350 * 1px);
}
.u-vscroll._h-400 > * {
  height: calc(400 * 1px);
}
.u-vscroll._max-h-400 > * {
  max-height: calc(400 * 1px);
}
.u-vscroll._h-450 > * {
  height: calc(450 * 1px);
}
.u-vscroll._max-h-450 > * {
  max-height: calc(450 * 1px);
}
@media (min-width: 576px) {
  .u-vscroll._h-md-50 > * {
    height: calc(50 * 1px);
  }
  .u-vscroll._max-h-md-50 > * {
    max-height: calc(50 * 1px);
  }
  .u-vscroll._h-md-100 > * {
    height: calc(100 * 1px);
  }
  .u-vscroll._max-h-md-100 > * {
    max-height: calc(100 * 1px);
  }
  .u-vscroll._h-md-150 > * {
    height: calc(150 * 1px);
  }
  .u-vscroll._max-h-md-150 > * {
    max-height: calc(150 * 1px);
  }
  .u-vscroll._h-md-200 > * {
    height: calc(200 * 1px);
  }
  .u-vscroll._max-h-md-200 > * {
    max-height: calc(200 * 1px);
  }
  .u-vscroll._h-md-250 > * {
    height: calc(250 * 1px);
  }
  .u-vscroll._max-h-md-250 > * {
    max-height: calc(250 * 1px);
  }
  .u-vscroll._h-md-300 > * {
    height: calc(300 * 1px);
  }
  .u-vscroll._max-h-md-300 > * {
    max-height: calc(300 * 1px);
  }
  .u-vscroll._h-md-350 > * {
    height: calc(350 * 1px);
  }
  .u-vscroll._max-h-md-350 > * {
    max-height: calc(350 * 1px);
  }
  .u-vscroll._h-md-400 > * {
    height: calc(400 * 1px);
  }
  .u-vscroll._max-h-md-400 > * {
    max-height: calc(400 * 1px);
  }
  .u-vscroll._h-md-450 > * {
    height: calc(450 * 1px);
  }
  .u-vscroll._max-h-md-450 > * {
    max-height: calc(450 * 1px);
  }
}
@media (min-width: 992px) {
  .u-vscroll._h-lg-50 > * {
    height: calc(50 * 1px);
  }
  .u-vscroll._max-h-lg-50 > * {
    max-height: calc(50 * 1px);
  }
  .u-vscroll._h-lg-100 > * {
    height: calc(100 * 1px);
  }
  .u-vscroll._max-h-lg-100 > * {
    max-height: calc(100 * 1px);
  }
  .u-vscroll._h-lg-150 > * {
    height: calc(150 * 1px);
  }
  .u-vscroll._max-h-lg-150 > * {
    max-height: calc(150 * 1px);
  }
  .u-vscroll._h-lg-200 > * {
    height: calc(200 * 1px);
  }
  .u-vscroll._max-h-lg-200 > * {
    max-height: calc(200 * 1px);
  }
  .u-vscroll._h-lg-250 > * {
    height: calc(250 * 1px);
  }
  .u-vscroll._max-h-lg-250 > * {
    max-height: calc(250 * 1px);
  }
  .u-vscroll._h-lg-300 > * {
    height: calc(300 * 1px);
  }
  .u-vscroll._max-h-lg-300 > * {
    max-height: calc(300 * 1px);
  }
  .u-vscroll._h-lg-350 > * {
    height: calc(350 * 1px);
  }
  .u-vscroll._max-h-lg-350 > * {
    max-height: calc(350 * 1px);
  }
  .u-vscroll._h-lg-400 > * {
    height: calc(400 * 1px);
  }
  .u-vscroll._max-h-lg-400 > * {
    max-height: calc(400 * 1px);
  }
  .u-vscroll._h-lg-450 > * {
    height: calc(450 * 1px);
  }
  .u-vscroll._max-h-lg-450 > * {
    max-height: calc(450 * 1px);
  }
}
@media (min-width: 1200px) {
  .u-vscroll._h-xl-50 > * {
    height: calc(50 * 1px);
  }
  .u-vscroll._max-h-xl-50 > * {
    max-height: calc(50 * 1px);
  }
  .u-vscroll._h-xl-100 > * {
    height: calc(100 * 1px);
  }
  .u-vscroll._max-h-xl-100 > * {
    max-height: calc(100 * 1px);
  }
  .u-vscroll._h-xl-150 > * {
    height: calc(150 * 1px);
  }
  .u-vscroll._max-h-xl-150 > * {
    max-height: calc(150 * 1px);
  }
  .u-vscroll._h-xl-200 > * {
    height: calc(200 * 1px);
  }
  .u-vscroll._max-h-xl-200 > * {
    max-height: calc(200 * 1px);
  }
  .u-vscroll._h-xl-250 > * {
    height: calc(250 * 1px);
  }
  .u-vscroll._max-h-xl-250 > * {
    max-height: calc(250 * 1px);
  }
  .u-vscroll._h-xl-300 > * {
    height: calc(300 * 1px);
  }
  .u-vscroll._max-h-xl-300 > * {
    max-height: calc(300 * 1px);
  }
  .u-vscroll._h-xl-350 > * {
    height: calc(350 * 1px);
  }
  .u-vscroll._max-h-xl-350 > * {
    max-height: calc(350 * 1px);
  }
  .u-vscroll._h-xl-400 > * {
    height: calc(400 * 1px);
  }
  .u-vscroll._max-h-xl-400 > * {
    max-height: calc(400 * 1px);
  }
  .u-vscroll._h-xl-450 > * {
    height: calc(450 * 1px);
  }
  .u-vscroll._max-h-xl-450 > * {
    max-height: calc(450 * 1px);
  }
}
@media (min-width: 1400px) {
  .u-vscroll._h-xxl-50 > * {
    height: calc(50 * 1px);
  }
  .u-vscroll._max-h-xxl-50 > * {
    max-height: calc(50 * 1px);
  }
  .u-vscroll._h-xxl-100 > * {
    height: calc(100 * 1px);
  }
  .u-vscroll._max-h-xxl-100 > * {
    max-height: calc(100 * 1px);
  }
  .u-vscroll._h-xxl-150 > * {
    height: calc(150 * 1px);
  }
  .u-vscroll._max-h-xxl-150 > * {
    max-height: calc(150 * 1px);
  }
  .u-vscroll._h-xxl-200 > * {
    height: calc(200 * 1px);
  }
  .u-vscroll._max-h-xxl-200 > * {
    max-height: calc(200 * 1px);
  }
  .u-vscroll._h-xxl-250 > * {
    height: calc(250 * 1px);
  }
  .u-vscroll._max-h-xxl-250 > * {
    max-height: calc(250 * 1px);
  }
  .u-vscroll._h-xxl-300 > * {
    height: calc(300 * 1px);
  }
  .u-vscroll._max-h-xxl-300 > * {
    max-height: calc(300 * 1px);
  }
  .u-vscroll._h-xxl-350 > * {
    height: calc(350 * 1px);
  }
  .u-vscroll._max-h-xxl-350 > * {
    max-height: calc(350 * 1px);
  }
  .u-vscroll._h-xxl-400 > * {
    height: calc(400 * 1px);
  }
  .u-vscroll._max-h-xxl-400 > * {
    max-height: calc(400 * 1px);
  }
  .u-vscroll._h-xxl-450 > * {
    height: calc(450 * 1px);
  }
  .u-vscroll._max-h-xxl-450 > * {
    max-height: calc(450 * 1px);
  }
}

/* テキストリンク
-------------------------------------------------- */
.u-textLink {
  display: inline-block;
  margin-right: 0.3rem;
  font-weight: 700;
  border-bottom: solid thin #ddd;
}
.u-textLink::after {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\ea42";
  margin-left: 0.3rem;
  text-decoration: none;
}
.u-textLink[target=_blank]::after {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e905";
  margin-left: 0.3rem;
  text-decoration: none;
}
.u-textLink.stretched-link::before {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\ea42";
  margin-right: 0.3rem;
  text-decoration: none;
}
.u-textLink.stretched-link::after {
  opacity: 0;
}
.u-textLink:hover {
  border-bottom: solid thin #777;
  opacity: 1;
}

/* 文字のハイライト
-------------------------------------------------- */
.u-marker {
  display: inline;
  font-weight: bold;
  line-height: 1.2;
  color: inherit;
  background-image: linear-gradient(transparent 70%, rgba(255, 165, 0, 0.3) 70%);
}

/* 丸いアイコン
-------------------------------------------------- */
.u-round {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 50%;
  border: solid 2px white;
  aspect-ratio: 1;
}
.u-round > .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  display: block;
  width: 100%;
  transform: translate(-50%, -50%);
}
.u-round > img {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
}
.u-round > ._hover {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%);
}
.u-round::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-image: radial-gradient(#cc0000, #ff4d4d);
  background-position: left top;
  background-size: 200% 200%;
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%);
}
.u-round:hover {
  opacity: 1;
}
.u-round:hover > ._hover {
  transform: translate(-50%, -50%) scale(1.2);
}
.u-round:hover::after {
  animation-name: animation;
  animation-duration: 10s;
  animation-play-state: running;
  animation-timing-function: linear;
  animation-delay: 0s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@keyframes animation {
  0% {
    background-position: left top;
    transform: translate(-50%, -50%) rotate(0);
  }
  25% {
    background-position: right top;
  }
  50% {
    background-position: right bottom;
  }
  75% {
    background-position: left bottom;
  }
  100% {
    background-position: left top;
    transform: translate(-50%, -50%) rotate(1turn);
  }
}

/* background-image統一
-------------------------------------------------- */
.u-bgiCover {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.u-bgiCover._blend {
  background-color: rgba(255, 255, 255, 0.8);
  background-blend-mode: lighten;
}

.u-bgiContain {
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.u-bgiLeft {
  background-color: #faf5ea;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 90%;
}
@media (max-width: 991.98px) {
  .u-bgiLeft {
    background-color: rgba(250, 245, 234, 0.7);
    background-blend-mode: lighten;
  }
}

.u-bgiRight {
  background-color: #faf5ea;
  background-repeat: no-repeat;
  background-position: right 50px bottom 50px;
  background-size: 350px auto;
}

.u-bgiBoth {
  background-image: url("../img/bg-body1.svg"), url("../img/bg-body2.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: left top, right bottom;
  background-size: 450px auto, 450px auto;
}
.u-bgiBoth._lighten {
  background-color: rgba(255, 255, 255, 0.8) !important;
  background-blend-mode: lighten;
}
@media (max-width: 575.98px) {
  .u-bgiBoth {
    background-color: rgba(255, 255, 255, 0.8);
    background-size: 50% auto, 50% auto;
    background-blend-mode: lighten;
  }
}

.u-bgiRepeat {
  background-repeat: repeat;
  background-attachment: fixed;
  background-position: center;
  background-size: 200px auto;
}
@media (max-width: 991.98px) {
  .u-bgiRepeat {
    background-attachment: scroll;
    background-size: 100px auto;
  }
}

.u-bgiRepeatX {
  background-repeat: repeat-x;
  background-position: center bottom;
  background-size: 1280px;
}
@media (max-width: 991.98px) {
  .u-bgiRepeatX {
    background-size: 900px;
  }
}

.u-bgiRepeatY {
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100%;
}

.u-bgiNoRepeat {
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 400px auto;
}

.u-bgiAttachment {
  background-attachment: fixed;
  background-size: cover;
}
@media (max-width: 991.98px) {
  .u-bgiAttachment._repeat {
    background-size: 300%;
  }
}
@media (max-width: 991.98px) {
  .u-bgiAttachment {
    background-attachment: scroll;
  }
}

/* 角丸図形
-------------------------------------------------- */
.u-bdrad {
  overflow: hidden;
  border-radius: 20px;
}
.u-bdrad._left {
  border-radius: 20px 0 0 20px;
}
.u-bdrad._right {
  border-radius: 0 20px 20px 0;
}
@media (max-width: 991.98px) {
  .u-bdrad {
    border-radius: 10px !important;
  }
}

/* object-fit
-------------------------------------------------- */
.u-ofcover {
  width: 100%;
  height: 100%;
  font-family: "object-fit: cover;";
  -o-object-fit: cover;
     object-fit: cover;
}

.u-ofcontain {
  width: 100%;
  height: 100%;
  font-family: "object-fit: contain;";
  -o-object-fit: contain;
     object-fit: contain;
}

/* 幅指定
-------------------------------------------------- */
.u-width {
  max-width: 100%;
}
.u-width._w-auto {
  width: auto;
}
.u-width._w-50 {
  width: 50px;
}
.u-width._w-100 {
  width: 100px;
}
.u-width._w-150 {
  width: 150px;
}
.u-width._w-200 {
  width: 200px;
}
.u-width._w-250 {
  width: 250px;
}
.u-width._w-300 {
  width: 300px;
}
.u-width._w-350 {
  width: 350px;
}
.u-width._w-400 {
  width: 400px;
}
.u-width._w-450 {
  width: 450px;
}
.u-width._w-500 {
  width: 500px;
}
.u-width._w-550 {
  width: 550px;
}
.u-width._w-600 {
  width: 600px;
}
.u-width._w-650 {
  width: 650px;
}
.u-width._w-700 {
  width: 700px;
}
.u-width._w-750 {
  width: 750px;
}
.u-width._w-800 {
  width: 800px;
}
.u-width._w-850 {
  width: 850px;
}
.u-width._w-900 {
  width: 900px;
}
.u-width._w-950 {
  width: 950px;
}
.u-width._w-1000 {
  width: 1000px;
}
@media (min-width: 576px) {
  .u-width._w-md-auto {
    width: auto;
  }
  .u-width._w-md-50 {
    width: 50px;
  }
  .u-width._w-md-100 {
    width: 100px;
  }
  .u-width._w-md-150 {
    width: 150px;
  }
  .u-width._w-md-200 {
    width: 200px;
  }
  .u-width._w-md-250 {
    width: 250px;
  }
  .u-width._w-md-300 {
    width: 300px;
  }
  .u-width._w-md-350 {
    width: 350px;
  }
  .u-width._w-md-400 {
    width: 400px;
  }
  .u-width._w-md-450 {
    width: 450px;
  }
  .u-width._w-md-500 {
    width: 500px;
  }
  .u-width._w-md-550 {
    width: 550px;
  }
  .u-width._w-md-600 {
    width: 600px;
  }
  .u-width._w-md-650 {
    width: 650px;
  }
  .u-width._w-md-700 {
    width: 700px;
  }
  .u-width._w-md-750 {
    width: 750px;
  }
  .u-width._w-md-800 {
    width: 800px;
  }
  .u-width._w-md-850 {
    width: 850px;
  }
  .u-width._w-md-900 {
    width: 900px;
  }
  .u-width._w-md-950 {
    width: 950px;
  }
  .u-width._w-md-1000 {
    width: 1000px;
  }
}
@media (min-width: 992px) {
  .u-width._w-lg-auto {
    width: auto;
  }
  .u-width._w-lg-50 {
    width: 50px;
  }
  .u-width._w-lg-100 {
    width: 100px;
  }
  .u-width._w-lg-150 {
    width: 150px;
  }
  .u-width._w-lg-200 {
    width: 200px;
  }
  .u-width._w-lg-250 {
    width: 250px;
  }
  .u-width._w-lg-300 {
    width: 300px;
  }
  .u-width._w-lg-350 {
    width: 350px;
  }
  .u-width._w-lg-400 {
    width: 400px;
  }
  .u-width._w-lg-450 {
    width: 450px;
  }
  .u-width._w-lg-500 {
    width: 500px;
  }
  .u-width._w-lg-550 {
    width: 550px;
  }
  .u-width._w-lg-600 {
    width: 600px;
  }
  .u-width._w-lg-650 {
    width: 650px;
  }
  .u-width._w-lg-700 {
    width: 700px;
  }
  .u-width._w-lg-750 {
    width: 750px;
  }
  .u-width._w-lg-800 {
    width: 800px;
  }
  .u-width._w-lg-850 {
    width: 850px;
  }
  .u-width._w-lg-900 {
    width: 900px;
  }
  .u-width._w-lg-950 {
    width: 950px;
  }
  .u-width._w-lg-1000 {
    width: 1000px;
  }
}
@media (min-width: 1200px) {
  .u-width._w-xl-auto {
    width: auto;
  }
  .u-width._w-xl-50 {
    width: 50px;
  }
  .u-width._w-xl-100 {
    width: 100px;
  }
  .u-width._w-xl-150 {
    width: 150px;
  }
  .u-width._w-xl-200 {
    width: 200px;
  }
  .u-width._w-xl-250 {
    width: 250px;
  }
  .u-width._w-xl-300 {
    width: 300px;
  }
  .u-width._w-xl-350 {
    width: 350px;
  }
  .u-width._w-xl-400 {
    width: 400px;
  }
  .u-width._w-xl-450 {
    width: 450px;
  }
  .u-width._w-xl-500 {
    width: 500px;
  }
  .u-width._w-xl-550 {
    width: 550px;
  }
  .u-width._w-xl-600 {
    width: 600px;
  }
  .u-width._w-xl-650 {
    width: 650px;
  }
  .u-width._w-xl-700 {
    width: 700px;
  }
  .u-width._w-xl-750 {
    width: 750px;
  }
  .u-width._w-xl-800 {
    width: 800px;
  }
  .u-width._w-xl-850 {
    width: 850px;
  }
  .u-width._w-xl-900 {
    width: 900px;
  }
  .u-width._w-xl-950 {
    width: 950px;
  }
  .u-width._w-xl-1000 {
    width: 1000px;
  }
}
@media (min-width: 1400px) {
  .u-width._w-xxl-auto {
    width: auto;
  }
  .u-width._w-xxl-50 {
    width: 50px;
  }
  .u-width._w-xxl-100 {
    width: 100px;
  }
  .u-width._w-xxl-150 {
    width: 150px;
  }
  .u-width._w-xxl-200 {
    width: 200px;
  }
  .u-width._w-xxl-250 {
    width: 250px;
  }
  .u-width._w-xxl-300 {
    width: 300px;
  }
  .u-width._w-xxl-350 {
    width: 350px;
  }
  .u-width._w-xxl-400 {
    width: 400px;
  }
  .u-width._w-xxl-450 {
    width: 450px;
  }
  .u-width._w-xxl-500 {
    width: 500px;
  }
  .u-width._w-xxl-550 {
    width: 550px;
  }
  .u-width._w-xxl-600 {
    width: 600px;
  }
  .u-width._w-xxl-650 {
    width: 650px;
  }
  .u-width._w-xxl-700 {
    width: 700px;
  }
  .u-width._w-xxl-750 {
    width: 750px;
  }
  .u-width._w-xxl-800 {
    width: 800px;
  }
  .u-width._w-xxl-850 {
    width: 850px;
  }
  .u-width._w-xxl-900 {
    width: 900px;
  }
  .u-width._w-xxl-950 {
    width: 950px;
  }
  .u-width._w-xxl-1000 {
    width: 1000px;
  }
}

/* 高さ指定
-------------------------------------------------- */
.u-height {
  position: relative;
  overflow: hidden;
}
.u-height._shadow {
  position: relative;
  padding-bottom: 2rem;
  padding-right: 2rem;
}
.u-height._shadow::after {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 0;
  display: block;
  width: calc(100% - 2rem);
  height: calc(100% - 2rem);
  content: "";
  background-color: #666;
}
.u-height._shadow > * {
  position: relative;
  z-index: 2;
}
@media (max-width: 575.98px) {
  .u-height._shadow {
    padding-bottom: 1rem;
    padding-right: 1rem;
  }
  .u-height._shadow::after {
    width: calc(100% - 1rem);
    height: calc(100% - 1rem);
  }
}
.u-height._h-auto {
  height: auto;
}
.u-height._h-50 {
  height: 50px;
}
.u-height._h-100 {
  height: 100px;
}
.u-height._h-150 {
  height: 150px;
}
.u-height._h-200 {
  height: 200px;
}
.u-height._h-250 {
  height: 250px;
}
.u-height._h-300 {
  height: 300px;
}
.u-height._h-350 {
  height: 350px;
}
.u-height._h-400 {
  height: 400px;
}
.u-height._h-450 {
  height: 450px;
}
.u-height._h-500 {
  height: 500px;
}
.u-height._h-550 {
  height: 550px;
}
.u-height._h-600 {
  height: 600px;
}
.u-height._h-650 {
  height: 650px;
}
.u-height._h-700 {
  height: 700px;
}
.u-height._h-750 {
  height: 750px;
}
.u-height._h-800 {
  height: 800px;
}
.u-height._h-850 {
  height: 850px;
}
.u-height._h-900 {
  height: 900px;
}
.u-height._h-950 {
  height: 950px;
}
.u-height._h-1000 {
  height: 1000px;
}
@media (min-width: 576px) {
  .u-height._h-md-auto {
    height: auto;
  }
  .u-height._h-md-50 {
    height: 50px;
  }
  .u-height._h-md-100 {
    height: 100px;
  }
  .u-height._h-md-150 {
    height: 150px;
  }
  .u-height._h-md-200 {
    height: 200px;
  }
  .u-height._h-md-250 {
    height: 250px;
  }
  .u-height._h-md-300 {
    height: 300px;
  }
  .u-height._h-md-350 {
    height: 350px;
  }
  .u-height._h-md-400 {
    height: 400px;
  }
  .u-height._h-md-450 {
    height: 450px;
  }
  .u-height._h-md-500 {
    height: 500px;
  }
  .u-height._h-md-550 {
    height: 550px;
  }
  .u-height._h-md-600 {
    height: 600px;
  }
  .u-height._h-md-650 {
    height: 650px;
  }
  .u-height._h-md-700 {
    height: 700px;
  }
  .u-height._h-md-750 {
    height: 750px;
  }
  .u-height._h-md-800 {
    height: 800px;
  }
  .u-height._h-md-850 {
    height: 850px;
  }
  .u-height._h-md-900 {
    height: 900px;
  }
  .u-height._h-md-950 {
    height: 950px;
  }
  .u-height._h-md-1000 {
    height: 1000px;
  }
}
@media (min-width: 992px) {
  .u-height._h-lg-auto {
    height: auto;
  }
  .u-height._h-lg-50 {
    height: 50px;
  }
  .u-height._h-lg-100 {
    height: 100px;
  }
  .u-height._h-lg-150 {
    height: 150px;
  }
  .u-height._h-lg-200 {
    height: 200px;
  }
  .u-height._h-lg-250 {
    height: 250px;
  }
  .u-height._h-lg-300 {
    height: 300px;
  }
  .u-height._h-lg-350 {
    height: 350px;
  }
  .u-height._h-lg-400 {
    height: 400px;
  }
  .u-height._h-lg-450 {
    height: 450px;
  }
  .u-height._h-lg-500 {
    height: 500px;
  }
  .u-height._h-lg-550 {
    height: 550px;
  }
  .u-height._h-lg-600 {
    height: 600px;
  }
  .u-height._h-lg-650 {
    height: 650px;
  }
  .u-height._h-lg-700 {
    height: 700px;
  }
  .u-height._h-lg-750 {
    height: 750px;
  }
  .u-height._h-lg-800 {
    height: 800px;
  }
  .u-height._h-lg-850 {
    height: 850px;
  }
  .u-height._h-lg-900 {
    height: 900px;
  }
  .u-height._h-lg-950 {
    height: 950px;
  }
  .u-height._h-lg-1000 {
    height: 1000px;
  }
}
@media (min-width: 1200px) {
  .u-height._h-xl-auto {
    height: auto;
  }
  .u-height._h-xl-50 {
    height: 50px;
  }
  .u-height._h-xl-100 {
    height: 100px;
  }
  .u-height._h-xl-150 {
    height: 150px;
  }
  .u-height._h-xl-200 {
    height: 200px;
  }
  .u-height._h-xl-250 {
    height: 250px;
  }
  .u-height._h-xl-300 {
    height: 300px;
  }
  .u-height._h-xl-350 {
    height: 350px;
  }
  .u-height._h-xl-400 {
    height: 400px;
  }
  .u-height._h-xl-450 {
    height: 450px;
  }
  .u-height._h-xl-500 {
    height: 500px;
  }
  .u-height._h-xl-550 {
    height: 550px;
  }
  .u-height._h-xl-600 {
    height: 600px;
  }
  .u-height._h-xl-650 {
    height: 650px;
  }
  .u-height._h-xl-700 {
    height: 700px;
  }
  .u-height._h-xl-750 {
    height: 750px;
  }
  .u-height._h-xl-800 {
    height: 800px;
  }
  .u-height._h-xl-850 {
    height: 850px;
  }
  .u-height._h-xl-900 {
    height: 900px;
  }
  .u-height._h-xl-950 {
    height: 950px;
  }
  .u-height._h-xl-1000 {
    height: 1000px;
  }
}
@media (min-width: 1400px) {
  .u-height._h-xxl-auto {
    height: auto;
  }
  .u-height._h-xxl-50 {
    height: 50px;
  }
  .u-height._h-xxl-100 {
    height: 100px;
  }
  .u-height._h-xxl-150 {
    height: 150px;
  }
  .u-height._h-xxl-200 {
    height: 200px;
  }
  .u-height._h-xxl-250 {
    height: 250px;
  }
  .u-height._h-xxl-300 {
    height: 300px;
  }
  .u-height._h-xxl-350 {
    height: 350px;
  }
  .u-height._h-xxl-400 {
    height: 400px;
  }
  .u-height._h-xxl-450 {
    height: 450px;
  }
  .u-height._h-xxl-500 {
    height: 500px;
  }
  .u-height._h-xxl-550 {
    height: 550px;
  }
  .u-height._h-xxl-600 {
    height: 600px;
  }
  .u-height._h-xxl-650 {
    height: 650px;
  }
  .u-height._h-xxl-700 {
    height: 700px;
  }
  .u-height._h-xxl-750 {
    height: 750px;
  }
  .u-height._h-xxl-800 {
    height: 800px;
  }
  .u-height._h-xxl-850 {
    height: 850px;
  }
  .u-height._h-xxl-900 {
    height: 900px;
  }
  .u-height._h-xxl-950 {
    height: 950px;
  }
  .u-height._h-xxl-1000 {
    height: 1000px;
  }
}

/* コンテナ1
-------------------------------------------------- */
.u-container1 {
  position: relative;
  padding: 4rem;
  line-height: 2;
  background-color: #eee;
}
.u-container1::before {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e977";
  position: absolute;
  top: 1.5rem;
  left: 1.5rem;
  display: block;
  font-size: 1.5em;
  color: #ccc;
  text-align: left;
}
.u-container1::after {
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e978";
  position: absolute;
  right: 1.5rem;
  bottom: 1.5rem;
  display: block;
  padding-top: 15px;
  font-size: 1.5em;
  color: #ccc;
  text-align: right;
}
.u-container1._lignt {
  color: white;
}
.u-container1._lignt::before {
  color: white;
}
.u-container1._lignt::after {
  color: white;
}
@media (max-width: 991.98px) {
  .u-container1 {
    padding: 4rem 2rem;
  }
}

/* コンテナ2
-------------------------------------------------- */
.u-container2 {
  --inset: 0.8rem;
  position: relative;
  padding: 0 var(--inset) var(--inset) 0;
}
.u-container2 > .inner {
  position: relative;
  z-index: 1;
  padding: calc(var(--inset) * 3);
  background-color: white;
  border: solid 3px #0177FB;
}
.u-container2::after {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 0;
  display: block;
  width: calc(100% - var(--inset));
  height: calc(100% - var(--inset));
  content: "";
  background-image: radial-gradient(#7bded9 40%, transparent 40%);
  background-size: 6px 6px;
}
@media (max-width: 575.98px) {
  .u-container2 {
    --inset: 1rem;
  }
  .u-container2 > .inner {
    padding: calc(var(--inset) * 2) calc(var(--inset) * 1);
  }
}

/* コンテナ3
-------------------------------------------------- */
.u-container3 {
  --inset: 0.8rem;
  position: relative;
  padding: 0 var(--inset);
}
.u-container3 > .inner {
  position: relative;
  z-index: 2;
  padding: calc(var(--inset) * 3);
  background-color: #f0f0f0;
}
.u-container3::after {
  background-color: #80bbfd;
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(-2deg);
  width: calc(100% - var(--inset) * 2);
  z-index: 1;
}
@media (max-width: 991.98px) {
  .u-container3 {
    padding: 0 var(--inset) var(--inset) 0;
  }
  .u-container3 > .inner {
    padding: calc(var(--inset) * 2);
  }
  .u-container3::after {
    left: unset;
    top: unset;
    bottom: 0;
    right: 0;
    transform: translate(0, 0) rotate(0);
    width: calc(100% - var(--inset));
    height: calc(100% - var(--inset));
  }
}

/* バナーリンク1
-------------------------------------------------- */
/* a.u-bnrlink1._circle>div.bg>img[src="<?= \$sample; ?>"]^div.inner>h4.title-main{タイトル}+p.title-sub{title} */
.u-bnrlink1 {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-bnrlink1._polygon {
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.u-bnrlink1._polygon:hover {
  -webkit-clip-path: polygon(0 0, 100% 10%, 100% 100%, 0 90%);
          clip-path: polygon(0 0, 100% 10%, 100% 100%, 0 90%);
}
.u-bnrlink1._circle:hover {
  border-radius: 50%;
}
.u-bnrlink1::before {
  position: relative;
  z-index: 1;
  display: block;
  content: "";
  background-color: rgba(0, 0, 0, 0.4);
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  height: 100%;
}
.u-bnrlink1::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 200%;
  height: 200%;
  content: "";
  background-image: linear-gradient(to left, white, #0177FB);
  background-size: 100%;
  opacity: 0;
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  translate: -50% -50%;
  rotate: 0turn;
}
.u-bnrlink1 > .bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-bnrlink1 > .bg > img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.u-bnrlink1 > .inner {
  position: absolute;
  bottom: 0;
  left: 0.3rem;
  z-index: 3;
  width: calc(100% - 0.6rem);
  height: auto;
  padding: 1.5rem;
  line-height: 1.4;
  letter-spacing: 0;
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-bnrlink1 > .inner .title-main {
  font-size: 1.1rem;
  font-weight: 500;
  color: white;
}
.u-bnrlink1 > .inner .title-sub {
  margin-bottom: 0;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1;
  color: white;
  text-transform: none;
}
.u-bnrlink1 > .inner .dummy-btn {
  position: absolute;
  bottom: -20px;
  left: 20px;
  display: inline-block;
  padding: 0.3rem 1rem 0;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 0.8rem;
  color: white;
  border: solid thin white;
  opacity: 0;
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-bnrlink1:hover {
  opacity: 0.9;
  transition: all 0.7s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.u-bnrlink1:hover::after {
  opacity: 0.9;
  transition: all 0.7s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  animation-name: bnrlink1;
  animation-duration: 8s;
  animation-timing-function: ease-in-out;
  animation-delay: 0s;
  animation-iteration-count: infinite;
  animation-direction: normal;
}
.u-bnrlink1:hover > .bg {
  opacity: 0;
  transition: all 0.7s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  scale: 1.2;
  rotate: -30deg;
}
.u-bnrlink1:hover > .inner {
  bottom: 50%;
  transition: all 0.7s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  translate: 0 50%;
}
.u-bnrlink1:hover > .inner .dummy-btn {
  opacity: 1;
  transition: all 0.7s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
@media (max-width: 575.98px) {
  .u-bnrlink1 .inner {
    padding: 1rem;
  }
  .u-bnrlink1 .inner .title-main {
    font-size: 0.9rem;
  }
  .u-bnrlink1 .inner .title-sub {
    font-size: 1.6rem;
  }
}
@keyframes bnrlink1 {
  from {
    background-position: 0% 0%;
    rotate: 0turn;
  }
  to {
    rotate: 1turn;
  }
}
.u-bnrlink1._ratio-1x1 {
  aspect-ratio: 1;
}
.u-bnrlink1._ratio-4x3 {
  aspect-ratio: 1.3333333333;
}
.u-bnrlink1._ratio-16x9 {
  aspect-ratio: 1.7777777778;
}
.u-bnrlink1._ratio-16x11 {
  aspect-ratio: 1.4545454545;
}
.u-bnrlink1._ratio-21x9 {
  aspect-ratio: 2.3333333333;
}
.u-bnrlink1._ratio-3x4 {
  aspect-ratio: 0.75;
}
.u-bnrlink1._ratio-9x16 {
  aspect-ratio: 0.5625;
}
.u-bnrlink1._ratio-9x21 {
  aspect-ratio: 0.4285714286;
}
.u-bnrlink1._ratio-unset {
  aspect-ratio: unset;
}
.u-bnrlink1._ratio-fill {
  aspect-ratio: unset;
  height: 100%;
}
@media (min-width: 576px) {
  .u-bnrlink1 {
    height: auto;
  }
  .u-bnrlink1._ratio-md-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrlink1._ratio-md-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrlink1._ratio-md-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrlink1._ratio-md-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrlink1._ratio-md-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrlink1._ratio-md-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrlink1._ratio-md-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrlink1._ratio-md-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrlink1._ratio-md-unset {
    aspect-ratio: unset;
  }
  .u-bnrlink1._ratio-md-fill {
    aspect-ratio: unset;
  }
}
@media (min-width: 992px) {
  .u-bnrlink1 {
    height: auto;
  }
  .u-bnrlink1._ratio-lg-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrlink1._ratio-lg-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrlink1._ratio-lg-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrlink1._ratio-lg-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrlink1._ratio-lg-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrlink1._ratio-lg-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrlink1._ratio-lg-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrlink1._ratio-lg-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrlink1._ratio-lg-unset {
    aspect-ratio: unset;
  }
  .u-bnrlink1._ratio-lg-fill {
    aspect-ratio: unset;
  }
}
@media (min-width: 1200px) {
  .u-bnrlink1 {
    height: auto;
  }
  .u-bnrlink1._ratio-xl-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrlink1._ratio-xl-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrlink1._ratio-xl-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrlink1._ratio-xl-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrlink1._ratio-xl-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrlink1._ratio-xl-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrlink1._ratio-xl-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrlink1._ratio-xl-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrlink1._ratio-xl-unset {
    aspect-ratio: unset;
  }
  .u-bnrlink1._ratio-xl-fill {
    aspect-ratio: unset;
  }
}
@media (min-width: 1400px) {
  .u-bnrlink1 {
    height: auto;
  }
  .u-bnrlink1._ratio-xxl-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrlink1._ratio-xxl-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrlink1._ratio-xxl-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrlink1._ratio-xxl-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrlink1._ratio-xxl-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrlink1._ratio-xxl-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrlink1._ratio-xxl-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrlink1._ratio-xxl-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrlink1._ratio-xxl-unset {
    aspect-ratio: unset;
  }
  .u-bnrlink1._ratio-xxl-fill {
    aspect-ratio: unset;
  }
}

/* バナーリンク2
-------------------------------------------------- */
/* a.u-bnrLink2._ratio-16x9._dark>div.inner.text-center>p.en.mb-0{###}+h4{###}+hr.bnr-divider+em.dummy-btn.en.fs-7{Read more}^img[src="img/top1.jpg"].bgi */
.u-bnrLink2 {
  position: relative;
  display: block;
  height: auto;
  overflow: hidden;
  aspect-ratio: 1.7777777778;
  width: 100%;
}
.u-bnrLink2 > .bgi {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 100%;
  height: 100%;
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
}
.u-bnrLink2 > .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 3;
  width: 90%;
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%);
}
.u-bnrLink2 > .inner .bnr-divider {
  width: 5rem;
  margin-right: auto;
  margin-left: auto;
}
.u-bnrLink2 > .inner > .dummy-btn {
  display: inline-block;
  padding: 0 1rem;
}
.u-bnrLink2::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: block;
  width: 300%;
  height: 100%;
  content: "";
  transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-bnrLink2:hover {
  opacity: 1;
}
.u-bnrLink2:hover > .bgi {
  filter: blur(5px) grayscale(100%) brightness(140%);
  transition: all 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%) scale(1.2);
}
.u-bnrLink2:hover > .inner {
  transition: all 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate(-50%, -50%) scale(1.1);
}
.u-bnrLink2:hover > .inner > .dummy-btn {
  transition: all 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-bnrLink2:hover::before {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translateX(-60%);
}
.u-bnrLink2._light > .inner {
  color: #212529;
}
.u-bnrLink2._light > .inner .bnr-divider {
  background-color: #212529;
}
.u-bnrLink2._light > .inner > .dummy-btn {
  border: solid thin #212529;
}
.u-bnrLink2._light::before {
  background-image: linear-gradient(105deg, rgba(248, 249, 250, 0.5) 50%, rgba(248, 249, 250, 0.2) 50%);
}
.u-bnrLink2._light:hover > .inner > .dummy-btn {
  color: #f8f9fa;
  background-color: #0177FB;
}
.u-bnrLink2._dark > .inner {
  color: #f8f9fa;
}
.u-bnrLink2._dark > .inner .bnr-divider {
  background-color: #f8f9fa;
}
.u-bnrLink2._dark > .inner > .dummy-btn {
  border: solid thin #f8f9fa;
}
.u-bnrLink2._dark::before {
  background-image: linear-gradient(105deg, rgba(33, 37, 41, 0.6) 50%, rgba(33, 37, 41, 0.2) 50%);
}
.u-bnrLink2._dark:hover > .inner > .dummy-btn {
  color: #212529;
  background-color: #f8f9fa;
}
.u-bnrLink2._ratio-1x1 {
  aspect-ratio: 1;
}
.u-bnrLink2._ratio-4x3 {
  aspect-ratio: 1.3333333333;
}
.u-bnrLink2._ratio-16x9 {
  aspect-ratio: 1.7777777778;
}
.u-bnrLink2._ratio-16x11 {
  aspect-ratio: 1.4545454545;
}
.u-bnrLink2._ratio-21x9 {
  aspect-ratio: 2.3333333333;
}
.u-bnrLink2._ratio-3x4 {
  aspect-ratio: 0.75;
}
.u-bnrLink2._ratio-9x16 {
  aspect-ratio: 0.5625;
}
.u-bnrLink2._ratio-9x21 {
  aspect-ratio: 0.4285714286;
}
.u-bnrLink2._ratio-unset {
  aspect-ratio: unset;
}
.u-bnrLink2._ratio-fill {
  aspect-ratio: unset;
  height: 100%;
}
@media (min-width: 576px) {
  .u-bnrLink2 {
    height: auto;
  }
  .u-bnrLink2._ratio-md-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrLink2._ratio-md-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrLink2._ratio-md-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrLink2._ratio-md-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrLink2._ratio-md-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrLink2._ratio-md-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrLink2._ratio-md-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrLink2._ratio-md-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrLink2._ratio-md-unset {
    aspect-ratio: unset;
  }
  .u-bnrLink2._ratio-md-fill {
    aspect-ratio: unset;
  }
}
@media (min-width: 992px) {
  .u-bnrLink2 {
    height: auto;
  }
  .u-bnrLink2._ratio-lg-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrLink2._ratio-lg-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrLink2._ratio-lg-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrLink2._ratio-lg-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrLink2._ratio-lg-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrLink2._ratio-lg-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrLink2._ratio-lg-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrLink2._ratio-lg-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrLink2._ratio-lg-unset {
    aspect-ratio: unset;
  }
  .u-bnrLink2._ratio-lg-fill {
    aspect-ratio: unset;
  }
}
@media (min-width: 1200px) {
  .u-bnrLink2 {
    height: auto;
  }
  .u-bnrLink2._ratio-xl-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrLink2._ratio-xl-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrLink2._ratio-xl-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrLink2._ratio-xl-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrLink2._ratio-xl-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrLink2._ratio-xl-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrLink2._ratio-xl-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrLink2._ratio-xl-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrLink2._ratio-xl-unset {
    aspect-ratio: unset;
  }
  .u-bnrLink2._ratio-xl-fill {
    aspect-ratio: unset;
  }
}
@media (min-width: 1400px) {
  .u-bnrLink2 {
    height: auto;
  }
  .u-bnrLink2._ratio-xxl-1x1 {
    aspect-ratio: 1;
  }
  .u-bnrLink2._ratio-xxl-4x3 {
    aspect-ratio: 1.3333333333;
  }
  .u-bnrLink2._ratio-xxl-16x9 {
    aspect-ratio: 1.7777777778;
  }
  .u-bnrLink2._ratio-xxl-16x11 {
    aspect-ratio: 1.4545454545;
  }
  .u-bnrLink2._ratio-xxl-21x9 {
    aspect-ratio: 2.3333333333;
  }
  .u-bnrLink2._ratio-xxl-3x4 {
    aspect-ratio: 0.75;
  }
  .u-bnrLink2._ratio-xxl-9x16 {
    aspect-ratio: 0.5625;
  }
  .u-bnrLink2._ratio-xxl-9x21 {
    aspect-ratio: 0.4285714286;
  }
  .u-bnrLink2._ratio-xxl-unset {
    aspect-ratio: unset;
  }
  .u-bnrLink2._ratio-xxl-fill {
    aspect-ratio: unset;
  }
}

.u-bnrlink5 {
  display: block;
  text-align: center;
}
.u-bnrlink5 .image {
  padding: 20px 0 0;
}
.u-bnrlink5 .image > img {
  transition: all 0.4s ease;
  width: 40%;
}
.u-bnrlink5 h4 {
  font-size: 1.2rem;
  letter-spacing: 0;
}
.u-bnrlink5 .angle {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.u-bnrlink5 .angle > em {
  font-size: 1.2rem;
}
.u-bnrlink5 .angle > img {
  width: 2rem;
  margin-left: 0.8rem;
  transition: all 0.4s ease;
}
.u-bnrlink5:hover {
  opacity: 1;
}
.u-bnrlink5:hover .image > img {
  transform: translateY(-15%);
  transition: all 0.4s ease;
}
.u-bnrlink5:hover .angle > img {
  transform: translatex(20%);
  transition: all 0.4s ease;
}
@media (max-width: 991.98px) {
  .u-bnrlink5 h4 {
    font-size: 1rem;
  }
}

/* インフィニティスライド用スタイル
-------------------------------------------------- */
.infinite-wrap {
  overflow: hidden;
}
.infinite-wrap .infinite {
  display: none;
}
.infinite-wrap .infinite > li {
  width: 350px;
  aspect-ratio: 1;
  margin: 10px;
}
.infinite-wrap .infinite > li > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 991.98px) {
  .infinite-wrap .infinite > li {
    width: 250px;
  }
}

/* テキストの装飾
-------------------------------------------------- */
.u-decoX {
  position: relative;
  display: inline-block;
  margin: 0 calc(1 * 1em + 0.5em);
}
.u-decoX::before {
  position: absolute;
  right: calc(100% + 0.4em);
  bottom: 50%;
  font-size: calc(1 * 1em);
  content: "―";
  transform: translateY(50%);
}
.u-decoX::after {
  position: absolute;
  bottom: 50%;
  left: calc(100% + 0.4em);
  font-size: calc(1 * 1em);
  content: "―";
  transform: translateY(50%);
}
.u-decoX._slash::before, .u-decoX._slash::after {
  bottom: 50%;
  display: inline-block;
  width: 2em;
  height: 100%;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.u-decoX._slash::before {
  background-image: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 200'><defs><style>.cls-1{fill:%230177FB;}</style></defs><polygon class='cls-1' points='115.5 8.5 51.5 26.5 145.5 192.5 115.5 8.5'/><polygon class='cls-1' points='5.5 125.5 41.5 85.5 131.5 195.5 5.5 125.5'/></svg>");
}
.u-decoX._slash::after {
  background-image: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 200'><defs><style>.cls-1{fill:%230177FB;}</style></defs><polygon class='cls-1' points='35.5 8.5 99.5 26.5 5.5 192.5 35.5 8.5'/><polygon class='cls-1' points='145.5 125.5 109.5 85.5 19.5 195.5 145.5 125.5'/></svg>");
}

/* SNS風コンテナ
-------------------------------------------------- */
/*
.u-sns1>.inner-left>figure.u-snsimg>img[src="img/s_female.webp"alt="イメージ"]+figcaption{###}^.u-snsbody>p{###}
*/
.u-sns1 {
  --bg-color: #eee;
  _display: inline-block;
  /* clearfix */
  width: 100%;
  /* clearfix */
}
.u-sns1._light {
  --bg-color: white;
}
.u-sns1 * {
  box-sizing: border-box;
}
.u-sns1::after {
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  content: ".";
}
.u-sns1 .inner-left,
.u-sns1 .inner-right {
  display: flex;
  flex-wrap: wrap;
  width: 95%;
  padding: 20px;
}
.u-sns1 .inner-left .u-snsimg,
.u-sns1 .inner-right .u-snsimg {
  width: 15%;
}
.u-sns1 .inner-left .u-snsimg > img,
.u-sns1 .inner-right .u-snsimg > img {
  width: 100%;
  border: solid thin #999;
  border-radius: 100%;
}
.u-sns1 .inner-left .u-snsimg > figcaption,
.u-sns1 .inner-right .u-snsimg > figcaption {
  font-size: 0.8em;
  text-align: center;
}
.u-sns1 .inner-left .u-snsbody,
.u-sns1 .inner-right .u-snsbody {
  position: relative;
  width: 80%;
  padding: 20px;
  background-color: var(--bg-color);
}
.u-sns1 .inner-left .u-snsbody::before, .u-sns1 .inner-left .u-snsbody::after,
.u-sns1 .inner-right .u-snsbody::before,
.u-sns1 .inner-right .u-snsbody::after {
  position: absolute;
  content: "";
}
.u-sns1 .inner-left {
  float: left;
}
.u-sns1 .inner-left .u-snsbody {
  margin-left: 5%;
  background-color: var(--bg-color);
  filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.1));
}
.u-sns1 .inner-left .u-snsbody::before {
  top: 22px;
  left: -20px;
  border: 10px solid transparent;
  border-right: solid 10px var(--bg-color);
}
.u-sns1 .inner-left .u-snsstamp {
  position: relative;
  margin-top: 15px;
  padding-left: 20%;
  width: 100%;
  display: grid;
  flex-wrap: wrap;
  grid-template-columns: repeat(4, 25%);
  gap: 5px;
}
.u-sns1 .inner-left .u-snsstamp .stamp-inner {
  overflow: hidden;
  border: solid thin #999;
  border-radius: 20px;
  aspect-ratio: 3/4;
  margin-right: 0.5rem;
}
.u-sns1 .inner-left .u-snsstamp .stamp-inner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.u-sns1 .inner-right {
  float: right;
}
.u-sns1 .inner-right .u-snsimg {
  order: 2;
}
.u-sns1 .inner-right .u-snsbody {
  order: 1;
  margin-right: 5%;
  background: #9cd6e7;
}
.u-sns1 .inner-right .u-snsbody::after {
  top: 22px;
  right: -20px;
  border: 10px solid transparent;
  border-left: solid 10px #9cd6e7;
}

/* ナビタブ
-------------------------------------------------- */
/*  .u-toast>nav#is-navTabs.u-navTabs[aria-labelledby="tabMenu"]>button[type="button" role="tab" data-target="#topic$"]{トピック}*4^ul#is-navPanels.u-navPanels>#topic$[role="tabPanel"]*4>p{トピック} */
.u-toast .u-navTabs {
  position: relative;
  display: flex;
  justify-content: space-around;
  padding: 0 0.5rem;
}
.u-toast .u-navTabs > button {
  display: inline-block;
  flex: 1 0 0%;
  padding: 0.3rem 0;
  margin: 0 0.5rem;
  color: #f8f9fa;
  text-align: center;
  background-color: #0177FB;
  border-color: #0177FB;
  border-style: solid;
  border-top-width: 3px;
  border-right-width: 3px;
  border-bottom-width: 0;
  border-left-width: 3px;
  border-radius: 5px 5px 0 0;
}
.u-toast .u-navTabs > button.active {
  color: #0177FB;
  background-color: white;
  transition: all 0.3s ease;
}
.u-toast .u-navTabs::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 3px;
  content: "";
  background-color: #0177FB;
}
.u-toast .u-navPanels {
  background-color: white;
  border-color: #0177FB;
  border-style: solid;
  border-top-width: 0;
  border-right-width: 3px;
  border-bottom-width: 3px;
  border-left-width: 3px;
}
@media (max-width: 575.98px) {
  .u-toast .u-navTabs {
    padding: 0;
  }
  .u-toast .u-navTabs > button {
    margin: 0 0.2rem;
  }
}

/* フォームの装飾
-------------------------------------------------- */
.u-form1 button[type=submit] {
  min-width: 200px;
  padding: 10px 30px;
  font-weight: 600;
  color: white;
  background-color: #0177FB;
  border: solid thin #0177FB;
}
.u-form1 button[type=submit]::before {
  margin-right: 0.5rem;
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e906";
  font-size: 1.2em;
  line-height: 1;
}
.u-form1 button[type=submit]:hover {
  color: #0177FB;
  background-color: white;
  transition: all 0.3s ease;
}
.u-form1 button[type=submit].light {
  min-width: 150px;
  padding: 10px 30px;
  border: solid thin white;
}
.u-form1 button[type=submit].light:hover {
  color: #555;
  background-color: white;
  transition: all 0.3s ease;
}
.form-defList > dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: baseline;
  padding: 0.6rem 0.3rem;
  border-top: solid thin #bbb;
}
.form-defList > dl > dt {
  display: flex;
  align-items: flex-start;
  width: 15rem;
  padding-right: 0.2rem;
  font-weight: 600;
}
.form-defList > dl > dt > b {
  flex: 0 1 auto;
  padding-top: 0.2rem;
  line-height: 1;
}
.form-defList > dl > dt:not(.disabled)::before {
  display: inline-block;
  flex: 0 0 auto;
  padding: 0 0.5rem;
  margin-right: 0.3rem;
  font-size: 0.7rem;
  color: white;
  content: "任意";
  background-color: #198754;
}
.form-defList > dl > dt.required::before {
  content: "必須";
  background-color: #dc3545;
}
.form-defList > dl > dd {
  width: calc(100% - 15rem);
}
.form-defList > dl:last-of-type {
  border-bottom: solid thin #bbb;
}
@media (max-width: 991.98px) {
  .form-defList > dl > dt {
    width: 100%;
    padding-bottom: 0.5rem;
  }
  .form-defList > dl > dd {
    width: 100%;
  }
}

#thanks .hide-on-page-thanks {
  display: none;
}

/* プライバシーポリシー
-------------------------------------------------- */
.prv {
  font-size: 0.8rem;
}
.prv strong {
  display: block;
  margin: 8px 0;
  font-weight: 700;
  color: #888;
  text-decoration: none;
  border-bottom: 1px dotted #888;
}
.prv strong::before {
  margin-right: 5px;
  font-family: "createfont" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\ea42";
}

/* 縦書き
-------------------------------------------------- */
.writing-mode._h {
  writing-mode: horizontal-tb;
}
.writing-mode._v {
  writing-mode: vertical-rl;
}
@media (max-width: 991.98px) {
  .writing-mode {
    writing-mode: horizontal-tb !important;
  }
  .writing-mode._mh {
    writing-mode: horizontal-tb !important;
  }
  .writing-mode._mv {
    writing-mode: vertical-rl !important;
  }
}

/****************************************************************
汎用CSS
****************************************************************/
/* コンテナのラッパー
-------------------------------------------------- */
.division {
  --bg-color: rgba(240, 240, 240, 0.8);
  position: relative;
  z-index: 2;
  padding: 6rem 0;
}
.division ._lead {
  position: absolute;
  top: 3rem;
  left: 50%;
  width: 100%;
  overflow: hidden;
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  font-size: 12vw;
  font-weight: 400;
  line-height: 1;
  color: #aaa;
  text-align: center;
  letter-spacing: 0.6rem;
  opacity: 0.1;
  transform: translateX(-50%);
}
.division::after {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -2;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  transform: translate(-50%, -50%);
}
.division.bg::after {
  content: none;
}
.division:nth-of-type(even)::after {
  background-color: var(--bg-color);
}
.division._transparent::after {
  background-color: transparent;
}
.division._skew {
  padding: 8rem 0;
  margin-bottom: -4.1rem;
}
.division._skew:nth-of-type(odd) {
  -webkit-clip-path: polygon(0 0, 100% 4rem, 100% 100%, 0 calc(100% - 4rem));
          clip-path: polygon(0 0, 100% 4rem, 100% 100%, 0 calc(100% - 4rem));
}
.division._skew:nth-of-type(even) {
  -webkit-clip-path: polygon(0 0, 100% 4rem, 100% 100%, 0 calc(100% - 4rem));
          clip-path: polygon(0 0, 100% 4rem, 100% 100%, 0 calc(100% - 4rem));
}
.division._skew:first-of-type {
  padding-top: 6rem;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 4rem));
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 4rem));
}
.division._skew:last-of-type {
  padding-bottom: 6rem;
  margin-bottom: 0;
  -webkit-clip-path: polygon(0 0, 100% 4rem, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 4rem, 100% 100%, 0 100%);
}
.division._wave {
  --svg-code-upper: url("data:image/svg+xml;charset=utf8,%3csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1980 88.868%22%3e%3cpath d=%22M1980,33.271s-529.203,71.619-998.525,1.789C506.27-35.646-2.005,34.14-2.005,34.14v54.728H1980V33.271Z%22 style=%22fill:%23faf5ea;%22/%3e%3c/svg%3e");
  --svg-code-lower: url("data:image/svg+xml;charset=utf8,%3csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1980 88.868%22%3e%3cpath d=%22M-2.005,55.597s529.203-71.619,998.525-1.789c475.205,70.706,983.48,.92,983.48,.92V0H-2.005V55.597Z%22 style=%22fill:%23faf5ea;%22/%3e%3c/svg%3e");
  position: relative;
}
.division._wave:nth-of-type(odd) {
  z-index: 1;
  padding: 10rem 0;
}
.division._wave:nth-of-type(even) {
  background-color: var(--bg-color);
  z-index: 2;
}
.division._wave:nth-of-type(even)::before, .division._wave:nth-of-type(even)::after {
  position: absolute;
  left: 0;
  z-index: -3;
  display: block;
  width: 100vw;
  content: "";
  background-color: var(--bg-color);
  -webkit-mask-size: 1980px auto;
          mask-size: 1980px auto;
  -webkit-mask-repeat: repeat-x;
          mask-repeat: repeat-x;
  height: 6rem;
  transform: none;
}
@media (min-width: 1400px) {
  .division._wave:nth-of-type(even)::before, .division._wave:nth-of-type(even)::after {
    padding-top: 10%;
    background-size: 100% auto;
  }
}
.division._wave:nth-of-type(even)::before {
  bottom: calc(100% - 1px);
  -webkit-mask-image: var(--svg-code-upper);
          mask-image: var(--svg-code-upper);
  -webkit-mask-position: center bottom;
          mask-position: center bottom;
}
.division._wave:nth-of-type(even)::after {
  top: calc(100% - 1px);
  -webkit-mask-image: var(--svg-code-lower);
          mask-image: var(--svg-code-lower);
  -webkit-mask-position: center top;
          mask-position: center top;
}
.division._wave:first-of-type {
  padding-top: 6rem;
}
.division._wave:last-of-type {
  padding-bottom: 8rem;
  margin-bottom: 0;
}
.division._wave:last-of-type::after {
  content: none;
  transform: translateY(0);
}
@media (max-width: 575.98px) {
  .division._wave:nth-of-type(odd) {
    padding: 4rem 0;
    margin: 0;
  }
  .division._wave:nth-of-type(even) {
    padding: 4rem 0;
    margin: 0;
  }
  .division._wave:nth-of-type(even)::before, .division._wave:nth-of-type(even)::after {
    content: none;
  }
}
@media (max-width: 575.98px) {
  .division {
    padding: 3rem 0;
  }
  .division > ._skew:nth-of-type(odd) {
    -webkit-clip-path: polygon(0 0, 100% 2rem, 100% 100%, 0 calc(100% - 2rem));
            clip-path: polygon(0 0, 100% 2rem, 100% 100%, 0 calc(100% - 2rem));
  }
  .division > ._skew:nth-of-type(even) {
    -webkit-clip-path: polygon(0 0, 100% 2rem, 100% 100%, 0 calc(100% - 2rem));
            clip-path: polygon(0 0, 100% 2rem, 100% 100%, 0 calc(100% - 2rem));
  }
  .division > ._skew:first-of-type {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 2rem));
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 2rem));
  }
  .division > ._skew:last-of-type {
    -webkit-clip-path: polygon(0 0, 100% 2rem, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 2rem, 100% 100%, 0 100%);
  }
}

.aa {
  padding-top: 6rem;
  margin-top: -6rem;
}
@media (max-width: 991.98px) {
  .aa {
    padding-top: 100px;
    margin-top: -100px;
  }
}

/* 背景色
-------------------------------------------------- */
.bg-harf {
  background-image: linear-gradient(to left, transparent 50%, #fcf8f0 50%);
}

.bg-harfv {
  background-image: linear-gradient(173deg, transparent 30%, #eee 30%);
}
@media (max-width: 991.98px) {
  .bg-harfv {
    background-image: linear-gradient(173deg, transparent 20%, #eee 20%);
  }
}

.bg-harfr {
  --bg-harfr: #bac2dc;
  background-image: linear-gradient(to right, transparent 30%, var(--bg-harfr) 30%);
}

.bg-harfl {
  --bg-harfl: #bac2dc;
  background-image: linear-gradient(to left, transparent 30%, var(--bg-harfl) 30%);
}

.bg-harfll {
  background-image: linear-gradient(to left, transparent 60%, #faf5ea 60%);
}

.bg-gradient1 {
  background-image: linear-gradient(to right bottom, #1a85fb, #67adfd);
}

.bg-stripe {
  background: repeating-linear-gradient(45deg, white, white 10px, #f6f9fe 10px, #f6f9fe 20px);
}

.bg-stripe-thin {
  background-image: repeating-linear-gradient(to right, white, white 1px, transparent 1px, transparent 20px), repeating-linear-gradient(to bottom, white, white 1px, transparent 1px, transparent 20px);
}

.bg-ichimatsu {
  background: linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%, #eee 100%) 0 0, linear-gradient(45deg, #eee 25%, white 25%, white 75%, #eee 75%, #eee 100%) 20px 20px;
  background-size: 40px 40px;
}

.bg-cms-6150 {
  background-color: #0177FB !important;
}

.bg-cms-6151 {
  background-color: #183289 !important;
}

.bg-cms {
  background-color: #0177FB;
}

/* aos カスタム
-------------------------------------------------- */
[data-aos=img-observe] {
  --overlay-color: #0177FB;
  position: relative;
  overflow: hidden;
}
[data-aos=img-observe]::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  transform: translateX(-100%);
  animation-name: slidebeforeReverse;
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-play-state: running;
  animation-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
}
@keyframes slidebeforeReverse {
  0% {
    transform: translateX(100%);
  }
  50% {
    background-color: var(--overlay-color);
    transform: translateX(0);
  }
  100% {
    background-color: var(--overlay-color);
    transform: translateX(-100%);
  }
}
[data-aos=img-observe] > * {
  opacity: 0;
  animation-name: slideimgReverse;
  animation-delay: 0s;
  animation-direction: normal;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-play-state: running;
  animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
}
@keyframes slideimgReverse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
[data-aos=img-observe].aos-animate::before {
  animation-name: slidebefore;
}
@keyframes slidebefore {
  0% {
    background-color: var(--overlay-color);
    transform: translateX(-100%);
  }
  50% {
    background-color: var(--overlay-color);
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}
[data-aos=img-observe].aos-animate > * {
  animation-name: slideimg;
}
@keyframes slideimg {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
    transform: translateX(-30%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

[data-aos=slide-up-nop] {
  overflow: hidden;
}
[data-aos=slide-up-nop] > * {
  animation-name: slideupnopReverse;
  animation-direction: normal;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-play-state: running;
  animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
}
@keyframes slideupnopReverse {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(200%);
  }
}
[data-aos=slide-up-nop].aos-animate > * {
  animation-name: slideupnop;
}
@keyframes slideupnop {
  0% {
    transform: translateY(200%);
  }
  100% {
    transform: translateY(0);
  }
}

[data-aos=blur-in] {
  opacity: 0;
  filter: blur(10px);
  transform: scale(0.95);
  animation-name: blurinReverse;
  animation-direction: normal;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-play-state: running;
  animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
}
@keyframes blurinReverse {
  0% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
  100% {
    opacity: 0;
    filter: blur(10px);
    transform: scale(0.95);
  }
}
[data-aos=blur-in].aos-animate {
  animation-name: blurin;
}
@keyframes blurin {
  0% {
    opacity: 0;
    filter: blur(10px);
    transform: scale(0.95);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}

.is-particles {
  position: absolute;
  width: 500px;
  border-radius: 50%;
  transition: all 1s cubic-bezier(0.34, 1.26, 0.64, 1);
  transform: scale(10);
  aspect-ratio: 1/1;
}
.is-particles[data-inview=visible] {
  transform: scale(1);
}
@media (max-width: 991.98px) {
  .is-particles {
    width: 250px;
  }
}

/* ページトップに戻るボタン
-------------------------------------------------- */
.suggest {
  --width: 0;
  --ratio: 0;
  position: fixed;
  right: 1em;
  bottom: 1em;
  z-index: 996;
  width: var(--width);
  aspect-ratio: var(--ratio);
}
.suggest.arrow {
  --width: 35px;
  --ratio: 0.236;
  overflow: hidden;
}
.suggest.circle {
  --width: 70px;
  --ratio: 1;
  visibility: hidden;
  opacity: 0;
  transition: opacity 1s, visibility 0s ease 1s, transform 1s;
}
.suggest.triangle {
  --width: 80px;
  --ratio: 1;
}
.suggest.poping {
  --width: 70px;
  --ratio: 1;
}
.suggest svg {
  width: 100%;
}
.suggest .__inner--arrow {
  display: flex;
  flex-wrap: wrap;
  transition: all 1s ease;
}
.suggest .__inner--arrow .__button--scroll-down,
.suggest .__inner--arrow .__button--page-top,
.suggest .__inner--arrow .__inner--circle {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: inherit;
  display: inline-block;
  text-align: inherit;
  align-items: initial;
  cursor: pointer;
  background-color: initial;
  margin: 0;
  padding: 0;
  border: none;
  width: 100%;
  display: block;
  transition: all 1s ease;
  cursor: pointer;
}
.suggest .__inner--arrow .__button--scroll-down {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
  order: 1;
}
.suggest .__inner--arrow .__button--page-top {
  visibility: hidden;
  opacity: 0;
  transition: opacity 1s, visibility 0s ease 1s, transform 1s;
  order: 2;
}
.suggest .__inner--circle .__button--page-top {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: inherit;
  display: inline-block;
  text-align: inherit;
  align-items: initial;
  cursor: pointer;
  background-color: initial;
  margin: 0;
  padding: 0;
  border: none;
  width: 100%;
  display: block;
  transition: all 1s ease;
  visibility: hidden;
  opacity: 0;
  transition: opacity 1s, visibility 0s ease 1s, transform 1s;
  transform: translateY(20%);
}
.suggest .__inner--triangle .__button--page-top {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: inherit;
  display: inline-block;
  text-align: inherit;
  align-items: initial;
  cursor: pointer;
  background-color: initial;
  margin: 0;
  padding: 0;
  border: none;
  width: 100%;
  display: block;
  transition: all 1s ease;
  visibility: hidden;
  opacity: 0;
  transition: opacity 1s, visibility 0s ease 1s, transform 1s;
  transform: translateX(200%);
}
.suggest .__inner--poping {
  transition: all 1s ease;
  visibility: hidden;
  opacity: 0;
  transition: opacity 1s, visibility 0s ease 1s, transform 1s;
  animation-name: inner--poping;
  animation-duration: 2s;
  animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
  animation-delay: 0s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: forwards;
  animation-play-state: running;
}
@keyframes inner--poping {
  0% {
    transform: translateY(0%);
  }
  40% {
    transform: translateY(-10%);
  }
  60% {
    transform: translateY(0%);
  }
  80% {
    transform: translateY(-5%);
  }
  100% {
    transform: translateY(0%);
  }
}
.suggest .__inner--poping .__button--page-top {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: inherit;
  display: inline-block;
  text-align: inherit;
  align-items: initial;
  cursor: pointer;
  background-color: initial;
  margin: 0;
  padding: 0;
  border: none;
  width: 100%;
  display: block;
}
.suggest.is-attached.circle {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
}
.suggest.is-attached .__inner--arrow {
  transform: translateY(-50%);
}
.suggest.is-attached .__inner--arrow .__button--scroll-down {
  visibility: hidden;
  opacity: 0;
  transition: opacity 1s, visibility 0s ease 1s, transform 1s;
}
.suggest.is-attached .__inner--arrow .__button--page-top {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
}
.suggest.is-attached .__inner--circle .__button--page-top {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
  transform: translateY(0);
}
.suggest.is-attached .__inner--triangle .__button--page-top {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
  transform: translateX(0);
}
.suggest.is-attached .__inner--poping {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
}
@media (max-width: 991.98px) {
  .suggest {
    bottom: 8em;
  }
}
@media (max-width: 575.98px) {
  .suggest {
    bottom: 2em;
  }
  .suggest.circle {
    --width: 60px;
  }
}

/* その他
-------------------------------------------------- */
.u-clip._right {
  -webkit-clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
}
.u-clip._left {
  -webkit-clip-path: polygon(5% 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(5% 0, 100% 0, 100% 100%, 0 100%);
}
@media (max-width: 991.98px) {
  .u-clip._right, .u-clip._left {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}

.u-skew {
  position: relative;
  height: 400px;
  -webkit-clip-path: polygon(5% 0, 100% 0, 95% 100%, 0 100%);
          clip-path: polygon(5% 0, 100% 0, 95% 100%, 0 100%);
}
.u-skew > * {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}
.u-skew img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 575.98px) {
  .u-skew {
    height: 250px;
    -webkit-clip-path: none;
            clip-path: none;
  }
}

[data-lazy=vertical],
[data-lazy=horizontal] {
  z-index: -1;
  overflow: hidden;
}

.animate {
  animation-play-state: running;
  animation-delay: 0s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
.animate._rotate {
  animation-name: animate--rotate;
  animation-duration: 2.5s;
  animation-timing-function: ease-out;
}
@keyframes animate--rotate {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(3turn);
  }
}
.animate._fuwafuwa {
  animation-name: animate--fuwafuwa;
  animation-duration: 1.5s;
  animation-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
@keyframes animate--fuwafuwa {
  0% {
    transform: translate(0, 10px);
  }
  50% {
    transform: translate(0, -10px);
  }
  100% {
    transform: translate(0, 10px);
  }
}
.animate._popping {
  animation-name: animate--popping;
  animation-duration: 2s;
  animation-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
@keyframes animate--popping {
  0% {
    transform: translateY(0) rotate(0);
  }
  20% {
    transform: translateY(-20%) rotate(5deg);
  }
  40% {
    transform: translateY(0) rotate(0);
  }
  55% {
    transform: translateY(-15%) rotate(-5deg);
  }
  70% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
.animate._swing {
  transform-origin: center top;
  animation-name: animate--swing;
  animation-duration: 2s;
  animation-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
@keyframes animate--swing {
  0% {
    transform: rotate(0);
  }
  20% {
    transform: rotate(6deg);
  }
  40% {
    transform: rotate(-4deg);
  }
  60% {
    transform: rotate(3deg);
  }
  80% {
    transform: rotate(-1deg);
  }
  100% {
    transform: rotate(0);
  }
}
.animate._flow {
  animation-name: animate--flow;
  animation-duration: 35s;
  animation-timing-function: linear;
}
@keyframes animate--flow {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}

.nav-tabs .nav-item {
  width: 33.3333% !important;
}
.nav-tabs .nav-item .nav-link {
  width: 100%;
  text-align: center;
}

.simpleParallaxCenter {
  position: relative;
}
.simpleParallaxCenter > .simpleParallax {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.modal-container {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999;
  display: none;
  width: 100%;
  height: 100vh;
  opacity: 0;
}
.modal-container > .underlay {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
.modal-container > .body {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 900px;
  max-width: 95%;
  max-height: 90%;
  overflow-x: hidden;
  overflow-y: scroll;
  background-color: white;
  transform: translate(-50%, -50%);
  padding: 100px 50px;
}
.modal-container > .body::-webkit-scrollbar {
  width: 5px;
  height: 3px;
}
.modal-container > .body::-webkit-scrollbar-track {
  background-color: #ddd;
}
.modal-container > .body::-webkit-scrollbar-thumb {
  background-color: #555;
}
@media (max-width: 575.98px) {
  .modal-container > .body {
    padding: 50px 10px;
  }
}

.googlemaps iframe,
.googlemaps object,
.googlemaps embed {
  filter: grayscale(100%);
  transition: all 0.7s ease;
}
.googlemaps iframe:hover,
.googlemaps object:hover,
.googlemaps embed:hover {
  filter: grayscale(0%);
}

.floating_banner {
  display: block;
  position: fixed;
  bottom: 30%;
  right: 0;
  z-index: 5;
}
.floating_banner > li {
  margin-bottom: 0.3rem;
}
.floating_banner > li > a {
  display: block;
  width: 100%;
  line-height: 1;
  text-align: center;
  color: white;
  letter-spacing: 0;
  background-color: rgba(1, 119, 251, 0.8);
  padding: 1rem 0.3rem 1rem 0.7rem;
}

/* cmsのボタン装飾
-------------------------------------------------- */
.blog-cms .pages {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: 1fr;
  font-size: 0.8em;
  overflow: hidden;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0;
}
.blog-cms .pages > .page_next > a,
.blog-cms .pages > .page_prev > a {
  border: solid thin #0177FB;
  padding: 0.5rem 0.2rem;
  display: block;
}
.blog-cms .pages > .page_next > a:hover,
.blog-cms .pages > .page_prev > a:hover {
  color: white;
  background-color: #0177FB;
  transition: all 0.3s ease;
}
.blog-cms .pages > .page_next::before,
.blog-cms .pages > .page_prev::before {
  font-family: "Bellefair", "Times New Roman", "yumincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", "serif";
  display: block;
}
.blog-cms._detail .pages > .page_next {
  grid-column: 1/7;
}
.blog-cms._detail .pages > .page_next::before {
  content: "NEWER";
  text-align: left;
}
.blog-cms._detail .pages > .page_prev {
  grid-column: 7/13;
}
.blog-cms._detail .pages > .page_prev::before {
  content: "OLDER";
  text-align: right;
}
.blog-cms._list .pages {
  font-size: 0.9em;
}
.blog-cms._list .pages > .page_next {
  grid-column: 10/13;
}
.blog-cms._list .pages > .page_next::before {
  content: "OLDER";
  text-align: right;
}
.blog-cms._list .pages > .page_prev {
  grid-column: 1/4;
}
.blog-cms._list .pages > .page_prev::before {
  content: "NEWER";
  text-align: left;
}
@media (min-width: 992px) {
  .blog-cms._detail .pages > .page_next {
    grid-column: 1/6;
  }
  .blog-cms._detail .pages > .page_prev {
    grid-column: 8/13;
  }
  .blog-cms._list .pages > .page_next {
    grid-column: 9/13;
  }
  .blog-cms._list .pages > .page_prev {
    grid-column: 1/5;
  }
}

.now-lording {
  position: relative;
  overflow: hidden;
  display: block;
  background-color: #bbb;
  width: 100%;
  height: 100%;
  opacity: 0.3;
}
.now-lording::before {
  content: "";
  display: block;
  position: absolute;
  width: 20%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.3);
  top: 0;
  left: 0;
  animation: now-lording 1.5s linear 0s infinite normal forwards;
}
@keyframes now-lording {
  0% {
    left: 0;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 110%;
  }
}

[data-ajax=wrapper] [data-ajax=contents] {
  opacity: 0;
  transition: all 0.3s ease;
}
[data-ajax=wrapper].did-load [data-ajax=dummy] {
  display: none;
}
[data-ajax=wrapper].did-load [data-ajax=contents] {
  opacity: 1;
}

.bg-current {
  background-color: currentColor;
}

.text-current {
  color: currentColor;
}

.border-primary {
  border-color: #0177FB !important;
}

.border-secondary {
  border-color: #183289 !important;
}

.border-tertiary {
  border-color: #ff0000 !important;
}

.border-success {
  border-color: #198754 !important;
}

.border-info {
  border-color: #0dcaf0 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-white {
  border-color: white !important;
}

.border-dark {
  border-color: #212529 !important;
}

.border-black {
  border-color: black !important;
}

.border-beige {
  border-color: #faf5ea !important;
}

.border-teal {
  border-color: #fffcb9 !important;
}

.border-gray {
  border-color: #666 !important;
}

.border-primary-tint {
  border-color: #e6f1ff !important;
}

.border-secondary-tint {
  border-color: #e8ebf3 !important;
}

.border-tertiary-tint {
  border-color: #ffe6e6 !important;
}

.border-gray-tint {
  border-color: #f0f0f0 !important;
}

.border-primary-shade {
  border-color: #013c7e !important;
}

.border-secondary-shade {
  border-color: #0c1945 !important;
}

.border-tertiary-shade {
  border-color: maroon !important;
}

.border-gray-shade {
  border-color: #0a0a0a !important;
}

.border-primary-transparent {
  border-color: rgba(1, 119, 251, 0.7) !important;
}

.border-secondary-transparent {
  border-color: rgba(24, 50, 137, 0.7) !important;
}

.border-tertiary-transparent {
  border-color: rgba(255, 0, 0, 0.7) !important;
}

.border-gray-transparent {
  border-color: rgba(102, 102, 102, 0.9) !important;
}

.border-dark-transparent {
  border-color: rgba(33, 37, 41, 0.9) !important;
}

.border-light-transparent {
  border-color: rgba(248, 249, 250, 0.9) !important;
}

.border-light-transparent-thin {
  border-color: rgba(248, 249, 250, 0.3) !important;
}

.bg-blend-light {
  background-color: rgba(255, 255, 255, 0.8) !important;
  background-blend-mode: lighten !important;
}

.bg-blend-dark {
  background-color: rgba(0, 0, 0, 0.5) !important;
  background-blend-mode: multiply !important;
}

.bg-black-00 {
  background-color: rgba(0, 0, 0, 0) !important;
}

.bg-black-01 {
  background-color: rgba(0, 0, 0, 0.1) !important;
}

.bg-black-02 {
  background-color: rgba(0, 0, 0, 0.2) !important;
}

.bg-black-03 {
  background-color: rgba(0, 0, 0, 0.3) !important;
}

.bg-black-04 {
  background-color: rgba(0, 0, 0, 0.4) !important;
}

.bg-black-05 {
  background-color: rgba(0, 0, 0, 0.5) !important;
}

.bg-black-06 {
  background-color: rgba(0, 0, 0, 0.6) !important;
}

.bg-black-07 {
  background-color: rgba(0, 0, 0, 0.7) !important;
}

.bg-black-08 {
  background-color: rgba(0, 0, 0, 0.8) !important;
}

.bg-black-09 {
  background-color: rgba(0, 0, 0, 0.9) !important;
}

.bg-black-10 {
  background-color: black !important;
}

@media (min-width: 576px) {
  .bg-black-md-00 {
    background-color: rgba(0, 0, 0, 0) !important;
  }
  .bg-black-md-01 {
    background-color: rgba(0, 0, 0, 0.1) !important;
  }
  .bg-black-md-02 {
    background-color: rgba(0, 0, 0, 0.2) !important;
  }
  .bg-black-md-03 {
    background-color: rgba(0, 0, 0, 0.3) !important;
  }
  .bg-black-md-04 {
    background-color: rgba(0, 0, 0, 0.4) !important;
  }
  .bg-black-md-05 {
    background-color: rgba(0, 0, 0, 0.5) !important;
  }
  .bg-black-md-06 {
    background-color: rgba(0, 0, 0, 0.6) !important;
  }
  .bg-black-md-07 {
    background-color: rgba(0, 0, 0, 0.7) !important;
  }
  .bg-black-md-08 {
    background-color: rgba(0, 0, 0, 0.8) !important;
  }
  .bg-black-md-09 {
    background-color: rgba(0, 0, 0, 0.9) !important;
  }
  .bg-black-md-10 {
    background-color: black !important;
  }
}
@media (min-width: 992px) {
  .bg-black-lg-00 {
    background-color: rgba(0, 0, 0, 0) !important;
  }
  .bg-black-lg-01 {
    background-color: rgba(0, 0, 0, 0.1) !important;
  }
  .bg-black-lg-02 {
    background-color: rgba(0, 0, 0, 0.2) !important;
  }
  .bg-black-lg-03 {
    background-color: rgba(0, 0, 0, 0.3) !important;
  }
  .bg-black-lg-04 {
    background-color: rgba(0, 0, 0, 0.4) !important;
  }
  .bg-black-lg-05 {
    background-color: rgba(0, 0, 0, 0.5) !important;
  }
  .bg-black-lg-06 {
    background-color: rgba(0, 0, 0, 0.6) !important;
  }
  .bg-black-lg-07 {
    background-color: rgba(0, 0, 0, 0.7) !important;
  }
  .bg-black-lg-08 {
    background-color: rgba(0, 0, 0, 0.8) !important;
  }
  .bg-black-lg-09 {
    background-color: rgba(0, 0, 0, 0.9) !important;
  }
  .bg-black-lg-10 {
    background-color: black !important;
  }
}
.form-control:focus {
  border-color: #0177FB !important;
  box-shadow: 0 0 0 0.25rem rgba(1, 119, 251, 0.3) !important;
}
.form-control[readonly] {
  background-color: white !important;
}

.form-check-input:checked {
  background-color: #0177FB !important;
  border-color: #0177FB !important;
}
.form-check-input:focus {
  border-color: #0177FB !important;
  box-shadow: 0 0 0 0.25rem rgba(1, 119, 251, 0.3) !important;
}

.accordion-button:not(.collapsed) {
  background-color: rgba(1, 119, 251, 0.1) !important;
  box-shadow: inset 0 -1px 0 rgba(1, 119, 251, 0.5) !important;
}
.accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230177FB'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}
.accordion-button:focus {
  border-color: rgba(1, 119, 251, 0.1) !important;
  box-shadow: 0 0 0 0.25rem rgba(1, 119, 251, 0.5) !important;
}

.conveyor-slider {
  --duration: 40s;
  overflow: hidden;
  display: flex;
  align-items: center;
  width: 100%;
}
.conveyor-slider ._inner {
  flex: 0 0 auto;
  overflow: hidden;
}
.conveyor-slider._right2left ._inner {
  animation: conveyor-slider var(--duration) infinite linear 1s both;
}
@keyframes conveyor-slider {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.conveyor-slider._left2right {
  flex-direction: row-reverse;
}
.conveyor-slider._left2right ._inner {
  animation: conveyor-slider-reverse var(--duration) infinite linear 1s both;
}
@keyframes conveyor-slider-reverse {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}

.infinity-slides {
  overflow: hidden;
  width: 100%;
}
.infinity-slides .infinity-slides__wapper {
  display: flex;
}
.infinity-slides .infinity-slides__wapper .infinity-slides__slide {
  display: flex;
}

.u-bgyt {
  position: relative;
}
.u-bgyt iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 150%;
}

.form-contents .submit-btn{
  background: #0177FB!important;
  border: solid 2px #0177FB!important;
}
.form-contents :not(.pattern-exclusion) button:hover {
  color: #0177FB!important;
  background: #fff!important;
  border: solid 2px #0177FB!important;
}
.form-contents .submit-btn:hover::before {
      background-color: #0177FB!important;
}

.form-contents dl dt:not(.pattern-exclusion) span.optional::before {
  padding:0 5px 0;
  margin-right: 5px;
  font-size: 11px;
  border-radius: 2px;
  position: relative;
  top: -2px;
}
.form-contents dl dt:not(.pattern-exclusion) span.optional::before {
  content: '任意';
  color: #fff!important;
  background: #198754!important;
border: solid 2px #198754!important;
}

.form-contents {
  padding-top: 0!important;
}

.form-contents form dl {
  margin-bottom: 0!important;
}

.form-contents dl dd label {
  display:inline-block;
}

