{"version":3,"sources":["webpack:///./src/assets/bg-3-2.jpeg","webpack:///./src/views/sections/Features.vue?a097","webpack:///src/views/sections/Features.vue","webpack:///./src/views/sections/Features.vue?0476","webpack:///../../../src/mixins/translatable/index.ts","webpack:///../../../src/components/VParallax/VParallax.ts","webpack:///./src/views/sections/Features.vue?eae6","webpack:///./src/views/sections/Features.vue?b124"],"names":["module","exports","render","_vm","this","_h","$createElement","_c","_self","attrs","staticClass","minHeight","class","_l","card","key","title","_b","staticRenderFns","cards","name","props","height","Number","data","elOffsetTop","parallax","parallaxDist","percentScrolled","scrollTop","windowHeight","windowBottom","computed","imgHeight","beforeDestroy","window","methods","calcDimensions","offset","$el","listeners","objHeight","Error","translate","parseInt","Math","baseMixins","mixins","alt","type","default","String","src","isBooted","styles","display","opacity","transform","mounted","init","img","$refs","imgData","style","ref","container","h","content","$slots","on","$listeners","component","VCard","VCol","VContainer","VParallax","VResponsive","VRow","VThemeProvider"],"mappings":"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","file":"js/chunk-7268e86e.1853e073.js","sourcesContent":["module.exports = __webpack_public_path__ + \"img/bg-3-2.e194d4a9.jpeg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-theme-provider',{attrs:{\"dark\":\"\"}},[_c('base-section',{staticClass:\"primary\",attrs:{\"id\":\"features\",\"space\":\"0\"}},[_c('v-parallax',{staticClass:\"white--text\",attrs:{\"id\":\"parallax-hero\",\"height\":_vm.minHeight,\"src\":require('@/assets/bg-3-2.jpeg'),\"gradient\":\"to right, rgba(5, 11, 240, .2), rgba(5, 11, 220, .2)\"}},[_c('a',{attrs:{\"id\":\"services\",\"name\":\"services\"}}),_c('base-section-heading-primary',{class:'mt-12 font-weight-bold',attrs:{\"title\":\"提供サービス\"}}),_c('v-responsive',{staticClass:\"mx-auto\",attrs:{\"max-width\":\"1350\"}},[_c('v-card',{attrs:{\"id\":\"features-wrapper\",\"light\":\"\"}},[_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',_vm._l((_vm.cards),function(card){return _c('v-col',{key:card.title,staticClass:\"pa-0\",attrs:{\"cols\":\"12\",\"sm\":\"4\",\"md\":\"3\"}},[_c('base-feature-info-card',_vm._b({attrs:{\"align\":\"center\",\"light\":\"\",\"color\":'blue',\"transparent-border\":true}},'base-feature-info-card',card,false))],1)}),1)],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../../node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./Features.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-plugin-babel/node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/@vue/cli-plugin-babel/node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../../node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./Features.vue?vue&type=script&lang=js&\"","import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'translatable',\n\n props: {\n height: Number,\n },\n\n data: () => ({\n elOffsetTop: 0,\n parallax: 0,\n parallaxDist: 0,\n percentScrolled: 0,\n scrollTop: 0,\n windowHeight: 0,\n windowBottom: 0,\n }),\n\n computed: {\n imgHeight (): number {\n return this.objHeight()\n },\n },\n\n beforeDestroy () {\n window.removeEventListener('scroll', this.translate, false)\n window.removeEventListener('resize', this.translate, false)\n },\n\n methods: {\n calcDimensions () {\n const offset = this.$el.getBoundingClientRect()\n\n this.scrollTop = window.pageYOffset\n this.parallaxDist = this.imgHeight - this.height\n this.elOffsetTop = offset.top + this.scrollTop\n this.windowHeight = window.innerHeight\n this.windowBottom = this.scrollTop + this.windowHeight\n },\n listeners () {\n window.addEventListener('scroll', this.translate, false)\n window.addEventListener('resize', this.translate, false)\n },\n /** @abstract **/\n objHeight (): number {\n throw new Error('Not implemented !')\n },\n translate () {\n this.calcDimensions()\n\n this.percentScrolled = (\n (this.windowBottom - this.elOffsetTop) /\n (parseInt(this.height) + this.windowHeight)\n )\n\n this.parallax = Math.round(this.parallaxDist * this.percentScrolled)\n },\n },\n})\n","// Style\nimport './VParallax.sass'\n\n// Mixins\nimport Translatable from '../../mixins/translatable'\n\n// Types\nimport { VNode, VNodeData } from 'vue/types/vnode'\nimport mixins from '../../util/mixins'\n\nconst baseMixins = mixins(\n Translatable\n)\ninterface options extends InstanceType {\n $refs: {\n img: HTMLImageElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'v-parallax',\n\n props: {\n alt: {\n type: String,\n default: '',\n },\n height: {\n type: [String, Number],\n default: 500,\n },\n src: String,\n },\n\n data: () => ({\n isBooted: false,\n }),\n\n computed: {\n styles (): object {\n return {\n display: 'block',\n opacity: this.isBooted ? 1 : 0,\n transform: `translate(-50%, ${this.parallax}px)`,\n }\n },\n },\n\n mounted () {\n this.init()\n },\n\n methods: {\n init () {\n const img = this.$refs.img\n\n if (!img) return\n\n if (img.complete) {\n this.translate()\n this.listeners()\n } else {\n img.addEventListener('load', () => {\n this.translate()\n this.listeners()\n }, false)\n }\n\n this.isBooted = true\n },\n objHeight () {\n return this.$refs.img.naturalHeight\n },\n },\n\n render (h): VNode {\n const imgData: VNodeData = {\n staticClass: 'v-parallax__image',\n style: this.styles,\n attrs: {\n src: this.src,\n alt: this.alt,\n },\n ref: 'img',\n }\n\n const container = h('div', {\n staticClass: 'v-parallax__image-container',\n }, [\n h('img', imgData),\n ])\n\n const content = h('div', {\n staticClass: 'v-parallax__content',\n }, this.$slots.default)\n\n return h('div', {\n staticClass: 'v-parallax',\n style: {\n height: `${this.height}px`,\n },\n on: this.$listeners,\n }, [container, content])\n },\n})\n","import { render, staticRenderFns } from \"./Features.vue?vue&type=template&id=f66328ac&\"\nimport script from \"./Features.vue?vue&type=script&lang=js&\"\nexport * from \"./Features.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Features.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VParallax } from 'vuetify/lib/components/VParallax';\nimport { VResponsive } from 'vuetify/lib/components/VResponsive';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VThemeProvider } from 'vuetify/lib/components/VThemeProvider';\ninstallComponents(component, {VCard,VCol,VContainer,VParallax,VResponsive,VRow,VThemeProvider})\n","import mod from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../../node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./Features.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/vuetify-loader/lib/loader.js??ref--18-0!../../../node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./Features.vue?vue&type=style&index=0&lang=css&\""],"sourceRoot":""}