html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{ margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; box-sizing: border-box; } html{ line-height: 1; } .clearfix:after{ content: ""; display: block; height: 0; clear: both; visibility: hidden; } .clearfix{ display: inline-table; } /* Hides from IE-mac \*/ * html .clearfix{ height: 1%; } .clearfix{ display: block; } /* End hide from IE-mac */ ol, ul{ list-style: none; } table{ border-collapse: collapse; border-spacing: 0; } .clear { clear: both; } caption, th, td{ text-align: left; font-weight: normal; vertical-align: middle; } q, blockquote{ quotes: none; } q:before, q:after, blockquote:before, blockquote:after{ content: ""; content: none; } a img { border: none; } article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary{ display: block; } *, :after, :before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } body{ font-family: 'Noto Sans JP', sans-serif; font-weight: 400; line-height: 1.5; -webkit-text-size-adjust: 100%; color: #000; } img{ height: auto; max-width: 100%; } a{ text-decoration: none; } @media screen and (max-width: 768px) { .hidden-sp{ display: none !important; } } @media screen and (min-width: 769px) { .hidden-pc{ display: none !important; } } $blue: #30468f; $green: #2a7e92; $lightskyblue: #87cefa; $lightGreen: #6aa5b3; /*------------------------------------------ サービス別レスポンシブ ------------------------------------------*/ /*youtube*/ .youtubeWrapper{ position: relative; width: 100%; padding-top: 56.25%; } .youtubeWrapper iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; } /*googlemap*/ .ggmapWrapper{ position: relative; /*padding-bottom: 56.25%;*/ height: 480px; overflow: hidden; } .ggmapWrapper iframe, .ggmapWrapper object, .ggmapWrapper embed{ position: absolute; top: -140px; left: 0; width: 100%; height: 600px; } .ggmapWrapper iframe{ height: 800px; } /*------------------------------------------ cmn ------------------------------------------*/ img{ vertical-align: top; } .hoverBtn{ -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; transition: 0.3s; } .hoverBtn:hover{ } @media screen and (max-width: 768px) { } /*------------------------------------------ body ------------------------------------------*/ body{ } #wrapper{ min-width: 980px; overflow-x: hidden; } @media screen and (max-width: 1279px) { } @media screen and (max-width: 768px) { body{ width: auto; min-width: inherit; } #wrapper{ min-width: inherit; overflow-x: hidden; } } /*------------------------------------------ header nav ------------------------------------------*/ /*PC*/ @media screen and (min-width: 1215px) { header{ width: 100%; height: 90px; padding: 0; margin-bottom: 20px; transition: 0.8s; position: fixed; left: 0; top: 0; z-index: 1000; .headerInner{ height: 100%; display: flex; justify-content: space-between; align-items: center; position: relative; .logoBox{ padding: 0 0 0 30px; position: relative; z-index: 100; a{ display: block; } } .headerTop{ display: none; } nav{ height: 100%; transition: 0.3s; display: flex !important; justify-content: flex-end; .navInner{ ul{ height: 100%; display: flex; justify-content: flex-end; align-items: center; transition: 0.3s; li{ display: flex; align-items: center; text-align: center; font-size: 14px; color: #FFF; letter-spacing: 0.1em; margin: 0 30px 0 0; a{ font-size: 14px; color: #FFF; transition: 0.3s; &:hover{ opacity: 0.8; text-decoration: underline; } } &.btn{ a{ width: 140px; height: 48px; display: flex; align-items: center; justify-content: center; font-size: 14px; color: #FFF; letter-spacing: 0.1em; border: 1px solid #FFF; transition: 0.3s; position: relative; &:hover{ background: $green; text-decoration: none; } } } } } } } } &.fix{ background: $blue; .headerInner{ } } } } /*SP*/ @media screen and (max-width: 1214px) { header{ width: 100%; height: 60px; padding: 0; position: fixed; top: 0; left: 0; z-index: 1000; transition: 0.3s; .headerInner{ width: 100%; height: 100%; display: flex; align-items: center; justify-content: space-between; .logoBox{ width: 140px; height: 27px; line-height: 1; opacity: 1; top: 16px; left: 20px; z-index: 1001; position: fixed; text-align: center; } .headerTop{ width: 25px; display: block; position: absolute; right: 20px; top: 18px; cursor: pointer; transition: 0.3s; .menuBtn{ width: 25px; height: 17px; position: relative; z-index: 1001; } } .headerBtn{ display: none; } nav{ display: none; width: 100%; height: 100vh; background: $blue; position: fixed; left: 0; top: 0; .navInner{ height: 100%; display: flex; align-items: center; justify-content: center; ul{ width: 100%; padding: 0; display: block; border-top: 1px solid #FFF; li{ display: block; width: 100%; margin: 0 !important; text-align: center; border-bottom: 1px solid #FFF; a{ padding: 15px 0; display: block; color: #FFF; } } } } } } &.fix{ height: 60px; background: $blue; box-shadow: 0 0 10px rgba(0,0,0,0.2); .headerInner{ .logoBox{ } } } } } /*------------------------------------------ menuTrigger ------------------------------------------*/ .menu-trigger, .menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box; } .menu-trigger { position: relative; width: 25px; height: 17px; } .menu-trigger span { position: absolute; left: 0; width: 100%; height: 2px; background: #FFF; } .menu-trigger.active span { background: #FFF; } .menu-trigger span:nth-of-type(1) { top: 0; } .menu-trigger span:nth-of-type(2) { top: 7px; width: 100%; } .menu-trigger span:nth-of-type(3) { bottom: 0; } .menu-trigger.active span:nth-of-type(1) { -webkit-transform: translateY(7px) rotate(45deg); transform: translateY(7px) rotate(45deg); } .menu-trigger.active span:nth-of-type(2) { -webkit-transform: rotate(45deg); transform: rotate(45deg); /*-webkit-animation: active-menu-bar02 .8s forwards; animation: active-menu-bar02 .8s forwards;*/ } @-webkit-keyframes active-menu-bar02 { 100% { height: 0; } } @keyframes active-menu-bar02 { 100% { height: 0; } } .menu-trigger.active span:nth-of-type(3) { -webkit-transform: translateY(-8px) rotate(-45deg); transform: translateY(-8px) rotate(-45deg); } /*------------------------------------------ #cmn ------------------------------------------*/ .innerBox{ max-width: 980px; margin: 0 auto; position: relative; z-index: 100; } @media screen and (max-width: 768px) { } /*------------------------------------------ #mv ------------------------------------------*/ .mvWrapper{ .mv{ height: 950px; position: relative; background: url("../img/mv.jpg") no-repeat center bottom / cover; h1{ max-width: 1400px; height: 100%; padding: 0 25px; margin: 0 auto; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; } } } @media screen and (max-width: 768px) { .mvWrapper{ .mv{ height: 70vh; padding: 30px; background: url("../img/mv_sp.jpg") no-repeat center bottom / cover; display: -ms-flex; display: flex; -ms-align-items: flex-end; align-items: flex-end; -ms-justify-content: flex-start; justify-content: flex-start; h1{ height: auto; padding: 0 25px 0 0; img{ width: 100%; max-width: 350px; } } } } } /*------------------------------------------ #cmn ------------------------------------------*/ .ttlBox{ padding-bottom: 10px; position: relative; &:before, &:after{ content: ""; display: block; position: absolute; left: 0; } &:before{ width: 30px; height: 4px; background: $blue; bottom: 0px; z-index: 2; } &:after{ width: 100%; height: 1px; background: #000; bottom: 2px; transform: translate(0, 50%); z-index: 1; } h2{ font-size: 55px; font-weight: 700; font-family: 'Barlow', sans-serif; color: $blue; } } @media screen and (max-width: 768px) { .ttlBox{ h2{ font-size: 30px; font-weight: 700; font-family: 'Barlow', sans-serif; color: $blue; } } } /*------------------------------------------ #contents_01 ------------------------------------------*/ .contents_bg_01{ padding: 110px 0; background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 960px) top 0px / 2000px 3836px; .contents_01{ .ttlBox{ margin-bottom: 70px; } .movieBox{ max-width: 700px; margin: 0 auto 70px auto; } .boxLR{ max-width: 760px; margin: 0 auto; display: -ms-flex; display: flex; .boxL{ min-width: 214px; max-width: 214px; margin-right: 65px; text-align: center; } .boxR{ -ms-flex: 1; flex: 1; h3{ margin-bottom: 50px; font-size: 40px; font-weight: 700; span{ border-bottom: 1px solid #000; } } p{ font-size: 20px; line-height: 2.2; } } } } } @media screen and (max-width: 768px) { .contents_bg_01{ padding: 50px 20px; background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 960px) top 0px / 2000px 3836px; .contents_01{ .ttlBox{ margin-bottom: 50px; } .movieBox{ max-width: 700px; margin: 0 auto 70px auto; } .boxLR{ max-width: 760px; margin: 0 auto; display: block; .boxL{ min-width: 214px; max-width: 214px; margin: 0 auto 30px auto; text-align: center; } .boxR{ h3{ margin-bottom: 30px; font-size: 20px; font-weight: 700; text-align: center; span{ border-bottom: 1px solid #000; } } p{ font-size: 16px; line-height: 2.2; } } } } } } /*------------------------------------------ #contents_02 ------------------------------------------*/ .contents_bg_02{ padding: 40px 0 65px 0; .bg_01{ background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 750px) bottom 0px / 2000px 3836px; } .bg_02{ background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1500px) top 0px / 2000px 3836px; } .bg_03{ background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1100px) top 0px / 2000px 3836px; } .contents_02{ .ttlBox{ margin-bottom: 105px; } h3{ font-size: 35px; font-weight: 500; text-align: center; } .bg_01{ padding-bottom: 150px; h3{ margin-bottom: 105px; } ul{ display: -ms-flex; display: flex; flex-wrap: wrap; justify-content: center; li{ -ms-flex: 1; flex: 1; min-width: 300px; max-width: 300px; margin: 0 40px 40px 0; &:nth-child(3n), &:last-child{ margin-right: 0; } a{ width: 100%; height: 66px; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 500; color: #FFF; background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $blue; transition: 0.3s; &:hover{ background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $green; } } &.big{ min-width: 400px; a{ background-color: $lightskyblue; color: $blue; &:hover{ background-color: $lightGreen; } } } } } } .bg_02{ padding-bottom: 95px; h3{ margin-bottom: 90px; position: relative; transform: translate(0, -50%); } .contents{ .box{ max-width: 1300px; margin: 0 auto 20px auto; position: relative; &:nth-child(odd){ background: $green; } &:nth-child(even){ background: $blue; } &:last-child{ margin-bottom: 0; } &:after{ content: ""; width: 124px; height: 124px; display: block; background: url("../img/tri.svg") no-repeat right bottom / 124px 124px; position: absolute; right: 0; bottom: 0; } .boxLR{ max-width: 980px; min-height: 500px; margin: 0 auto; position: relative; .boxL{ position: absolute; left: -100px; top: 64px; .inner{ position: relative; .num{ position: absolute; right: -47px; top: -30px; } } } .boxR{ width: 490px; min-height: 500px; padding: 64px 0 195px 0; margin-left: auto; color: #FFF; position: relative; h4{ margin-bottom: 10px; font-size: 30px; font-weight: 700; } p{ font-size: 16px; line-height: 1.75; } ul{ position: absolute; right: 0; bottom: 64px; width: 300px; transition: 0.3s; @media screen and (max-width: 1150px) { right: 50px; } @media screen and (max-width: 1080px) { right: 100px; } li{ border-bottom: 1px solid #FFF; position: relative; padding-bottom: 20px; margin-bottom: 20px; &:last-child{ margin-bottom: 0; } &:after{ content: ""; width: 20px; height: 3px; display: block; background: #FFF; position: absolute; right: 0; bottom: -2px; } a{ display: block; color: #FFF; background: url("../img/arrow_right_white.png") no-repeat right 0px center / 14px; transition: 0.3s; &:hover{ opacity: 0.8; } } } } } } } } } .bg_03{ .imgBox{ height: 680px; background: url("../img/bg_con_03.jpg") no-repeat center top / cover; transition: 0.3s; @media screen and (max-width: 1300px) { height: 500px; } } .box_map{ width: 100%; max-width: inherit; position: relative; top: -100px; margin-bottom: -35px; h4{ margin-bottom: 50px; font-size: 35px; padding-bottom: 10px; text-align: center; position: relative; &:after{ content: ""; width: 100%; max-width: 600px; height: 1px; display: block; background: #000; position: absolute; right: 50%; bottom: 0; transform: translate(50%, 0); } } form{ max-width: 700px; margin: 0 auto; } } } } } @media screen and (max-width: 768px) { .contents_bg_02{ padding: 50px 20px; .bg_01{ background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 750px) bottom 0px / 2000px 3836px; } .bg_02{ background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1500px) top 0px / 2000px 3836px; } .bg_03{ background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1100px) top 0px / 2000px 3836px; } .contents_02{ .ttlBox{ margin-bottom: 50px; } h3{ font-size: 20px; font-weight: 500; text-align: center; } .bg_01{ padding-bottom: 50px; h3{ margin-bottom: 30px; } ul{ display: block; li{ min-width: inherit; max-width: 300px; margin: 0 auto 20px auto; &:nth-child(3n){ margin: 0 auto 20px auto; } &:last-child{ margin: 0 auto; } a{ width: 100%; height: 66px; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; font-size: 18px; font-weight: 500; color: #FFF; background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $blue; transition: 0.3s; &:hover{ background: url("../img/arrow_right_white.png") no-repeat right 25px center / 14px $green; } } &.big{ min-width: inherit; } } } } .bg_02{ padding-bottom: 50px; h3{ margin-bottom: 30px; position: relative; transform: inherit; } .contents{ .box{ max-width: 1300px; margin: 0 auto 20px auto; position: relative; &:nth-child(odd){ background: $green; } &:nth-child(even){ background: $blue; } &:last-child{ margin-bottom: 0; } &:after{ content: ""; width: 50px; height: 50px; display: block; background: url("../img/tri.svg") no-repeat right bottom / 50px 50px; position: absolute; right: 0; bottom: 0; } .boxLR{ max-width: 980px; min-height: inherit; margin: 0 auto; position: relative; .boxL{ padding: 20px; position: inherit; left: inherit; top: inherit; .inner{ position: relative; .num{ position: absolute; right: -10px; top: -10px; } } } .boxR{ width: auto; min-height: inherit; padding: 0 20px 20px 20px; margin-left: inherit; color: #FFF; position: relative; h4{ margin-bottom: 10px; font-size: 20px; font-weight: 700; } p{ margin-bottom: 30px; font-size: 16px; line-height: 1.75; } ul{ position: inherit; right: inherit; bottom: inherit; width: auto; margin-right: 50px; li{ border-bottom: 1px solid #FFF; position: relative; padding-bottom: 15px; margin-bottom: 15px; &:last-child{ margin-bottom: 0; } &:after{ content: ""; width: 20px; height: 3px; display: block; background: #FFF; position: absolute; right: 0; bottom: -2px; } a{ display: block; color: #FFF; background: url("../img/arrow_right_white.png") no-repeat right 0px center / 14px; transition: 0.3s; &:hover{ opacity: 0.8; } } } } } } } } } .bg_03{ .imgBox{ height: auto; width: calc(100% + 40px); position: relative; left: -20px; background: none; } .box_map{ width: 100%; max-width: inherit; position: relative; top: -50px; margin-bottom: -35px; h4{ margin-bottom: 50px; font-size: 20px; padding-bottom: 10px; text-align: center; position: relative; &:after{ content: ""; width: 100%; max-width: 600px; height: 1px; display: block; background: #000; position: absolute; right: 50%; bottom: 0; transform: translate(50%, 0); } } form{ max-width: 700px; margin: 0 auto; } } } } } } /*------------------------------------------ #contents_03 ------------------------------------------*/ .contents_bg_03{ padding-bottom: 145px; background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 700px) bottom 0px / 2000px 3836px; .contents_03{ .ttlBox{ margin-bottom: 80px; } ul{ display: -ms-flex; display: flex; li{ -ms-flex: 1; flex: 1; min-width: 300px; max-width: 300px; &:not(:last-child){ margin-right: 40px; } a{ display: block; transition: 0.3s; &:hover{ opacity: 0.8; } } .box{ position: relative; .txtBox{ width: 100%; padding: 0 24px 24px 24px; position: absolute; left: 0; bottom: 0; color: #FFF; .txt_01{ max-width: 140px; padding-bottom: 10px; margin-bottom: 10px; font-size: 30px; font-weight: 700; border-bottom: 1px solid #FFF; } .txt_02{ font-size: 18px; } } &:before{ content: ""; width: 54px; height: 54px; display: block; position: absolute; right: 24px; bottom: 24px; border: 1px solid #FFF; background: url("../img/arrow_right_white.png") no-repeat center center / 14px; } } } } } } @media screen and (max-width: 768px) { .contents_bg_03{ padding: 0 20px 50px 20px; background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 700px) bottom 0px / 2000px 3836px; .contents_03{ .ttlBox{ margin-bottom: 50px; } ul{ display: block; li{ -ms-flex: 1; flex: 1; min-width: 250px; max-width: 300px; margin: 0 auto 20px auto; &:not(:last-child){ margin: 0 auto 20px auto; } a{ display: block; transition: 0.3s; &:hover{ opacity: 0.8; } } .box{ position: relative; .txtBox{ width: 100%; padding: 0 20px 20px 20px; position: absolute; left: 0; bottom: 0; color: #FFF; .txt_01{ max-width: 140px; padding-bottom: 10px; margin-bottom: 10px; font-size: 28px; font-weight: 700; border-bottom: 1px solid #FFF; } .txt_02{ font-size: 16px; } } &:before{ content: ""; width: 54px; height: 54px; display: block; position: absolute; right: 24px; bottom: 24px; border: 1px solid #FFF; background: url("../img/arrow_right_white.png") no-repeat center center / 14px; } } } } } } } /*------------------------------------------ #contents_04 ------------------------------------------*/ .contents_bg_04{ padding: 70px 0; background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1550px) top 0px / 2000px 3836px; .contents_04{ .ttlBox{ margin-bottom: 85px; } ul{ display: -ms-flex; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; li{ min-width: calc(100% / 3.01); max-width: calc(100% / 3.01); height: 210px; padding: 10px; &:nth-child(odd){ background: $green; } &:nth-child(even){ background: $lightGreen; } >div{ width: 100%; height: 100%; border: 1px solid #FFF; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; text-align: center; color: #FFF; >div{ p{ margin-bottom: 20px; font-size: 18px; font-weight: 700; .sTxt{ font-size: 14px; } } } } &:nth-child(1){ >div{ background: url("../img/num_con_05_01.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(2){ >div{ background: url("../img/num_con_05_02.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(3){ >div{ background: url("../img/num_con_05_03.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(4){ >div{ background: url("../img/num_con_05_04.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(5){ >div{ background: url("../img/num_con_05_05.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(6){ >div{ background: url("../img/num_con_05_06.png") no-repeat left 10px top 10px / 58px; } } } } } } @media screen and (max-width: 768px) { .contents_bg_04{ padding: 50px 20px; background: url("../img/bg_gray_01.svg") no-repeat left calc(50% - 1550px) top 0px / 2000px 3836px; .contents_04{ .ttlBox{ margin-bottom: 50px; } ul{ display: -ms-flex; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; li{ min-width: 100%; max-width: 100%; height: 210px; padding: 10px; &:nth-child(odd){ background: $green; } &:nth-child(even){ background: $lightGreen; } >div{ width: 100%; height: 100%; border: 1px solid #FFF; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; text-align: center; color: #FFF; >div{ p{ margin-bottom: 20px; font-size: 18px; font-weight: 700; .sTxt{ font-size: 14px; } } } } &:nth-child(1){ >div{ background: url("../img/num_con_05_01.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(2){ >div{ background: url("../img/num_con_05_02.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(3){ >div{ background: url("../img/num_con_05_03.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(4){ >div{ background: url("../img/num_con_05_04.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(5){ >div{ background: url("../img/num_con_05_05.png") no-repeat left 10px top 10px / 58px; } } &:nth-child(6){ >div{ background: url("../img/num_con_05_06.png") no-repeat left 10px top 10px / 58px; } } } } } } } /*------------------------------------------ #contents_05 ------------------------------------------*/ .contents_bg_05{ padding: 30px 0 100px 0; background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 100px) top -1500px / 2000px 3836px; .contents_05{ .ttlBox{ margin-bottom: 80px; } .qaWrapper{ dl{ margin-bottom: 15px; dt{ position: relative; padding: 20px 75px 20px 105px; background: url("../img/icon_q.png") no-repeat left 30px center / 20px $blue; font-size: 18px; font-weight: 700; color: #FFF; cursor: pointer; &:before{ content: ""; width: 1px; height: 38px; display: block; position: absolute; left: 80px; top: 50%; transform: translate(0, -50%); background: #FFF; } >span{ width: 18px; height: 18px; display: block; position: absolute; right: 30px; top: 50%; transform: translate(0, -50%); >span{ position: relative; width: 100%; height: 100%; display: block; &:before, &:after{ content: ""; width: 100%; height: 1px; display: block; background: #FFF; position: absolute; right: 50%; top: 50%; transform: translate(50%, -50%); transition: 0.3s; } &:after{ transform: translate(50%, -50%) rotate(90deg); } } } } dd{ display: none; position: relative; padding: 21px 75px 21px 105px; background: url("../img/icon_a.png") no-repeat left 30px center / 20px #FFF; font-size: 16px; font-weight: 500; border: 1px solid $blue; border-top: none; &:before{ content: ""; width: 1px; height: 38px; display: block; position: absolute; left: 80px; top: 50%; transform: translate(0, -50%); background: $blue; } } &.active{ dt{ >span>span:after{ transform: translate(50%, -50%) rotate(180deg); } } } } } } } @media screen and (max-width: 768px) { .contents_bg_05{ padding: 50px 20px; background: url("../img/bg_gray_02.svg") no-repeat right calc(50% - 100px) top -1500px / 2000px 3836px; .contents_05{ .ttlBox{ margin-bottom: 50px; } .qaWrapper{ dl{ margin-bottom: 15px; dt{ position: relative; padding: 20px 60px 20px 60px; background: url("../img/icon_q.png") no-repeat left 15px center / 20px $blue; font-size: 18px; font-weight: 700; color: #FFF; cursor: pointer; &:before{ content: ""; width: 1px; height: 38px; display: block; position: absolute; left: 45px; top: 50%; transform: translate(0, -50%); background: #FFF; } >span{ width: 18px; height: 18px; display: block; position: absolute; right: 30px; top: 50%; transform: translate(0, -50%); >span{ position: relative; width: 100%; height: 100%; display: block; &:before, &:after{ content: ""; width: 100%; height: 1px; display: block; background: #FFF; position: absolute; right: 50%; top: 50%; transform: translate(50%, -50%); transition: 0.3s; } &:after{ transform: translate(50%, -50%) rotate(90deg); } } } } dd{ display: none; position: relative; padding: 21px 20px 21px 60px; background: url("../img/icon_a.png") no-repeat left 15px center / 20px #FFF; font-size: 16px; font-weight: 500; border: 1px solid $blue; border-top: none; &:before{ content: ""; width: 1px; height: 38px; display: block; position: absolute; left: 45px; top: 50%; transform: translate(0, -50%); background: $blue; } } &.active{ dt{ >span>span:after{ transform: translate(50%, -50%) rotate(180deg); } } } } } } } } /*------------------------------------------ #contents_06 ------------------------------------------*/ .contents_bg_06{ padding: 90px 0 230px 0; background: url("../img/bg_foot.jpg") no-repeat center top / cover; .contents_06{ .btnBox{ a{ width: 100%; max-width: 500px; height: 120px; padding: 10px; margin: 0 auto; display: block; background: $lightGreen; transition: 0.3s; >span{ width: 100%; height: 100%; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; font-size: 32px; font-weight: 500; font-family: 'Barlow', sans-serif; color: #FFF; border: 1px solid #FFF; } &:hover{ background: $green; } } } } } @media screen and (max-width: 768px) { .contents_bg_06{ padding: 100px 20px; background: url("../img/bg_foot.jpg") no-repeat center top / cover; .contents_06{ .btnBox{ a{ width: 100%; max-width: 500px; height: 120px; padding: 10px; margin: 0 auto; display: block; background: $lightGreen; transition: 0.3s; >span{ width: 100%; height: 100%; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; font-size: 32px; font-weight: 500; font-family: 'Barlow', sans-serif; color: #FFF; border: 1px solid #FFF; } &:hover{ background: $green; } } } } } } /* ------------------------------ トップへ戻る ------------------------------ */ #toTop{ position: fixed; right: 20px; bottom: 10px; display: none; z-index: 200; } #toTop a:hover{ opacity: 0.8; } @media screen and (max-width: 768px) { #toTop{ right: 20px; bottom: 20px; img{ width: 60px; } } } /*------------------------------------------ footer ------------------------------------------*/ footer{ padding: 20px 40px; background: $blue; text-align: center; } footer *{ color: #FFF; font-size: 15px; } footer .innerBox{ max-width: 980px; } footer #links{ font-size: 15px; } footer #links a{ display: inline-block; font-size: 15px; } footer #links a:last-child{ margin-right: 0; } footer #links a:hover{ text-decoration: underline; } footer #copy{ } footer #copy small{ font-size: 13px; } @media screen and (max-width: 768px) { footer{ padding: 20px 5% 50px 5%; min-width: inherit; text-align: center; display: block; } footer #links{ padding: 30px 5% 0 5%; margin-bottom: 0; float: inherit; text-align: center; font-size: 12px; a{ display: inline-block; margin: 0 10px 20px 10px; &:last-child{ margin: 0 10px 20px 10px; } } } footer #copy{ float: inherit; small{ font-size: 12px; } } } /*------------------------------------------ モーダル ------------------------------------------*/ .modalContents{ display: none; } .modaal-container{ max-width: 100%; background: none; box-shadow: inherit; } .modaal-content-container{ padding: 0; } /*.modaal-inner-wrapper{ padding: 200px 0 100px 0; }*/ .modalInner{ max-width: 730px; margin: 0 auto; .box{ .btnBox{ a{ width: 100%; max-width: 200px; height: 60px; margin: 0 auto; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; border: 1px solid $blue; font-size: 18px; color: $blue; transition: 0.3s; cursor: pointer; &:hover{ background: $blue; color: #FFF; } } } } } .modaal-overlay{ background: rgba(255,255,255,0.9) !important; opacity: 1 !important; z-index: 1000; } .modalType_01{ max-width: 730px; margin: 0 auto; padding: 50px 0; .boxLR{ position: relative; .boxL{ position: absolute; left: 0; top: 0; } .boxR{ max-width: 290px; margin-left: auto; position: relative; z-index: 100; .topTxt{ padding: 20px 20px 40px 20px; margin-bottom: 20px; background: $blue; color: #FFF; .txt_01{ margin-bottom: 5px; font-size: 18px; } .txt_02{ font-size: 24px; font-weight: 700; } } .timeLine{ ul{ margin-bottom: 65px; position: relative; &:after{ content: ""; width: 1px; height: calc(100% - 24px); display: block; background: #808080; position: absolute; left: 78px; top: 12px; z-index: 1; } li{ position: relative; z-index: 2; &:not(:last-child){ margin-bottom: 35px; } dl{ display: -ms-flex; display: flex; dt{ min-width: 67px; max-width: 67px; height: 26px; padding: 1px 17px 0 0; margin: 0 28px 0 0; background: url("../img/bg_time.png") no-repeat center / 67px; text-align: right; position: relative; &:after{ content: ""; width: 10px; height: 10px; display: block; background: $green; border-radius: 10px; position: absolute; right: -17px; top: 8px; } } dd{ -ms-flex: 1; flex: 1; } } } } } } } } .modalType_02{ max-width: 730px; margin: 0 auto; padding: 50px 0; .topBox{ margin-bottom: 40px; .imgBox{ max-width: 500px; margin: 0 auto; position: relative; .txtBox{ width: 190px; min-height: 190px; padding: 20px; background: $blue; color: #FFF; position: absolute; right: -115px; bottom: -32px; .txt_01{ font-size: 28px; font-weight: 700; padding-bottom: 5px; margin-bottom: 10px; border-bottom: 1px solid #FFF; } .txt_02{ } } } } .bottomBox{ margin-bottom: 110px; .ttlBox{ margin-bottom: 40px; h2{ font-size: 30px; font-weight: 500; } } .contents{ dl{ &:not(:last-child){ margin-bottom: 40px; } dt{ padding: 0 0 0 60px; margin-bottom: 20px; position: relative; font-size: 16px; font-weight: 700; color: $blue; &:before{ width: 44px; height: 44px; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; font-size: 22px; color: #FFF; font-family: 'Barlow', sans-serif; background: $blue; position: absolute; left: 0; top: -10px; } } dd{ line-height: 1.75; padding: 0 0 0 60px; } &:nth-child(1) dt:before{ content: "Q1"; } &:nth-child(2) dt:before{ content: "Q2"; } &:nth-child(3) dt:before{ content: "Q3"; } } } } } @media screen and (max-width: 768px) { .modaal-inner-wrapper{ padding: 60px 5%; } } @media screen and (max-width: 767px) { .modaal-inner-wrapper{ padding: 60px 5%; } .modalType_01{ max-width: 730px; margin: 0 auto; padding: 50px 0; .boxLR{ position: relative; .boxL{ position: inherit; left: inherit; top: inherit; text-align: center; } .boxR{ max-width: 470px; margin: 0 auto; position: relative; z-index: 100; .topTxt{ padding: 20px 20px 40px 20px; margin-bottom: 20px; background: $blue; color: #FFF; .txt_01{ margin-bottom: 5px; font-size: 18px; } .txt_02{ font-size: 24px; font-weight: 700; } } .timeLine{ max-width: 290px; margin: 0 auto; ul{ margin-bottom: 65px; position: relative; &:after{ content: ""; width: 1px; height: calc(100% - 24px); display: block; background: #808080; position: absolute; left: 78px; top: 12px; z-index: 1; } li{ position: relative; z-index: 2; &:not(:last-child){ margin-bottom: 35px; } dl{ display: -ms-flex; display: flex; dt{ min-width: 67px; max-width: 67px; height: 26px; padding: 1px 17px 0 0; margin: 0 28px 0 0; background: url("../img/bg_time.png") no-repeat center / 67px; text-align: right; position: relative; &:after{ content: ""; width: 10px; height: 10px; display: block; background: $green; border-radius: 10px; position: absolute; right: -17px; top: 8px; } } dd{ -ms-flex: 1; flex: 1; } } } } } } } } .modalType_02{ max-width: 730px; margin: 0 auto; padding: 50px 0; .topBox{ margin-bottom: 40px; .imgBox{ max-width: 500px; margin: 0 auto; position: relative; text-align: center; .txtBox{ width: 150px; min-height: 130px; padding: 20px; background: $blue; color: #FFF; text-align: left; position: absolute; right: 0; bottom: -40px; .txt_01{ font-size: 22px; font-weight: 700; padding-bottom: 5px; margin-bottom: 10px; border-bottom: 1px solid #FFF; } .txt_02{ font-size: 14px; } } } } .bottomBox{ margin-bottom: 110px; .ttlBox{ margin-bottom: 40px; h2{ font-size: 30px; font-weight: 500; } } .contents{ dl{ &:not(:last-child){ margin-bottom: 40px; } dt{ padding: 0 0 0 60px; margin-bottom: 20px; position: relative; font-size: 16px; font-weight: 700; color: $blue; &:before{ width: 44px; height: 44px; display: -ms-flex; display: flex; -ms-align-items: center; align-items: center; -ms-justify-content: center; justify-content: center; font-size: 22px; color: #FFF; font-family: 'Barlow', sans-serif; background: $blue; position: absolute; left: 0; top: -10px; } } dd{ line-height: 1.75; padding: 0 0 0 60px; } &:nth-child(1) dt:before{ content: "Q1"; } &:nth-child(2) dt:before{ content: "Q2"; } &:nth-child(3) dt:before{ content: "Q3"; } } } } } }