@charset 'UTF-8';
@charset "UTF-8";


a, a::before, a::after, button, button::before, button::after {
transition: 0.3s;
}
img {
max-width: 100%;
}
main {
display: block;
position: relative;
z-index: 4;
}
.sp {
display: none;
}
@media screen and (max-width: 959px) {
.sp {
display: block;
}
}
@media screen and (max-width: 959px) {
.pc {
display: none;
}
}
.ggmap {
position: relative;
overflow: hidden;
}
.ggmap:before {
content: "";
padding-bottom: 56.25%;
display: block;
}
.ggmap iframe, .ggmap object, .ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
@media screen and (max-width: 959px) {
.ggmap:before {
content: "";
padding-bottom: 56.25%;
display: block;
}
}
.title01 {
line-height: 1.25;
margin: 0 0 20px;
font-size: 2.8888888889rem;
font-weight: 700;
display: flex;
flex-direction: column;
align-items: flex-start;
}
.title01 span {
font-size: 1.3333333333rem;
background: linear-gradient(-74deg, #3046A0 0%, #1F2F8E 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
.title01 {
margin: 0 0 32px;
font-size: 1.5555555556rem;
line-height: 1.35;
}
}
.title02 {
font-size: 2.5555555556rem;
line-height: 1.25;
text-align: left;
margin: 0 0 70px;
padding: 0 0 25px;
color: #1F2F8E;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/title.svg) no-repeat bottom left/89px;
font-weight: 700;
}
@media screen and (max-width: 767px) {
.title02 {
font-size: 1.7777777778rem;
margin: 0 0 30px;
padding: 0 0 16px;
line-height: 1.35;
}
}
.link-gesture a {
position: relative;
padding: 6px 40px 16px 0;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
font-size: 1rem;
font-weight: 700;
}
.link-gesture a:before {
content: "";
position: absolute;
bottom: 0;
right: 0;
width: 157px;
height: 15px;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/link-gesture.svg) no-repeat right bottom/cover;
}
.link-gesture a:hover:before {
right: -16px;
}
@media screen and (max-width: 959px) {
.link-gesture a {
font-size: 0.8888888889rem;
padding: 2vw 50px 2vw 0;
}
}
.button01 {
position: relative;
z-index: 1;
}
.button01 a, .button01 button, .button01 input {
position: relative;
display: inline-block;
background: #1F2F8E;
width: 100%;
max-width: 320px;
padding: 24px 40px;
border-radius: 8px;
line-height: 1;
font-size: 1.1111111111rem;
font-weight: 700;
overflow: hidden;
z-index: 1;
border: 1px solid #1F2F8E;
color: #fff;
}
.button01 a:before, .button01 button:before, .button01 input:before {
content: "";
position: absolute;
right: 20px;
top: 50%;
transform: translateY(-50%);
background: #fff;
transition: 0.3s;
width: 13px;
height: 13px;
border-radius: 13px;
bottom: 0;
}
@media screen and (min-width: 1191px) {
.button01 a:hover, .button01 button:hover, .button01 input:hover {
background: #fff;
color: #1F2F8E;
}
.button01 a:hover:before, .button01 button:hover:before, .button01 input:hover:before {
right: 0px;
border-radius: 1000px;
width: 1000px;
height: 1000px;
z-index: -1;
}
}
@media screen and (max-width: 969) {
.button01 a, .button01 button, .button01 input {
width: 300px;
max-width: 100%;
min-width: 0;
padding: 15px 25px 15px 20px;
font-size: 16px;
}
}
.button01.blue a, .button01.blue input, .button01.blue button {
color: #fff;
background: #1F2F8E;
border: none;
cursor: pointer;
}
.button01.blue a:before, .button01.blue a:after, .button01.blue input:before, .button01.blue input:after, .button01.blue button:before, .button01.blue button:after {
background: #fff;
}
.btnlist {
display: flex;
justify-content: center;
}
.btnlist li:first-child {
margin: 0 30px 0 0;
}
@media screen and (max-width: 767px) {
.btnlist {
display: block;
}
.btnlist li:first-child {
margin: 0 0 16px;
}
}
.pager ul {
display: flex;
justify-content: center;
}
.pager ul li {
width: 45px;
height: 45px;
margin: 0 20px 0 0;
}
.pager ul li:last-child {
margin: 0;
}
.pager ul li a {
display: flex;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
color: #1F2F8E;
position: relative;
border: 1px solid #1F2F8E;
border-radius: 8px;
letter-spacing: 0;
}
@media screen and (min-width: 1191px) {
.pager ul li a:hover {
background: #3046A0;
color: #fff;
}
}
.pager ul li.true a {
background: #1F2F8E;
pointer-events: none;
color: #fff;
}
@media screen and (max-width: 767px) {
.pager ul li {
width: 32px;
height: 32px;
}
.pager ul li a {
font-size: 0.7777777778rem;
}
}
html {
box-sizing: border-box;
}
*, *:before, *:after {
box-sizing: inherit;
}
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-style: normal;
font-weight: normal;
font-size: 100%;
vertical-align: baseline;
-webkit-margin-before: 0em;
-webkit-margin-after: 0em;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
html {
overflow-y: scroll;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: "";
content: none;
}
input, textarea {
margin: 0;
padding: 0;
}
ol, ul {
list-style: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
caption, th {
text-align: left;
}
a:focus {
outline: none;
}
.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
}
.clearfix {
min-height: 1px;
}
* html .clearfix {
height: 1px; /*/*/}
.both {
clear: both;
}
.inline_block {
display: inline-block;
*display: inline;
*zoom: 1;
}/**/.cf {
zoom: 1;
}
.cf:before, .cf:after {
content: "";
display: table;
}
.cf:after {
clear: both;
}
* {
list-style: none;
}
* {
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
min-width: 0;
min-height: 0;
} a {
text-decoration: none;
color: inherit;
}
@media (min-width: 1280px) {
a[href^="tel:"] {
pointer-events: none;
}
}
*::-moz-selection {
background: rgba(103, 195, 246, 0.6);
}
*::selection {
background: rgba(103, 195, 246, 0.6);
}
*::-moz-selection {
background: rgba(103, 195, 246, 0.6);
}
:root {
font-size: 18px;
}
@media screen and (max-width: 1280px) {
:root {
font-size: clamp(14px, 4.267vw, 17px);
}
}
img {
max-width: 100%;
height: auto;
}
body {
overflow: hidden;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
font-weight: 500;
-webkit-font-smoothing: antialiased;
-webkit-text-size-adjust: 100%;
background: #fff;
color: #2D2D2D;
position: relative;
line-height: 1.6;
letter-spacing: 0.1em;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}
#header {
position: absolute;
width: 100%;
z-index: 99999999;
padding: 60px 0 40px;
transition: all 0.2s 0s ease;
}
#header .menu:after {
content: none;
}
#header #head_menu {
z-index: 1;
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
display: flex;
justify-content: space-between;
align-items: center;
}
@media screen and (max-width: 1920px) {
#header #head_menu {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#header #head_menu {
width: calc(100% - 16vw);
}
}
#header #head_menu .logo {
width: 240px;
margin-right: 80px;
left: 0;
right: 0;
}
@media screen and (max-width: 1479px) {
#header #head_menu .logo {
width: 220px;
margin-right: 50px;
}
}
#header #head_menu .logo a {
display: block;
}
#header #head_menu .logo a img {
width: 100%;
height: 100%;
}
#header #head_menu .menu {
display: flex;
flex-direction: column;
justify-content: center;
background: #fff;
border-radius: 8px;
}
#header #head_menu .menu .gnavi {
display: flex;
justify-content: center;
}
#header #head_menu .menu .gnavi ul {
display: flex;
padding: 0 40px;
}
#header #head_menu .menu .gnavi ul li {
width: auto;
margin: 12px 12px;
cursor: pointer;
}
#header #head_menu .menu .gnavi ul li a, #header #head_menu .menu .gnavi ul li span {
font-size: 1rem;
padding: 16px 0;
font-weight: 700;
display: inline-block;
text-align: center;
color: #1F2F8E;
}
@media screen and (max-width: 1359px) {
#header #head_menu .menu .gnavi ul li a, #header #head_menu .menu .gnavi ul li span {
font-size: 0.8888888889rem;
}
}
@media screen and (min-width: 1191px) {
#header #head_menu .menu .gnavi ul li a:hover, #header #head_menu .menu .gnavi ul li span:hover {
opacity: 0.6777;
}
}
#header #head_menu .menu .gnavi ul li.contact a {
padding: 16px 32px;
color: #fff;
background-color: #1F2F8E;
border-radius: 80px;
}
#header #head_menu .menu .gnavi ul li:last-child {
margin-right: 0;
}
#header #head_menu .menu .gnavi ul li:first-child {
margin-left: 0;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children span {
position: relative;
padding-right: 20px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children span:before {
content: "";
display: inline-block;
vertical-align: middle;
color: #2D2D2D;
line-height: 1;
width: 8px;
height: 8px;
border: 2px solid currentColor;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateY(-50%) rotate(135deg);
position: absolute;
right: 0;
top: 50%;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul {
display: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li {
display: none;
width: calc(25% - 15px);
margin: 0 0 16px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li a {
display: flex;
align-items: center;
border-radius: 8px;
width: 100%;
background: #fff;
cursor: pointer;
pointer-events: auto;
margin: 0;
font-size: 1rem;
padding: 15px;
position: relative;
z-index: 1;
text-align: left;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li a img {
display: block;
margin-right: 8px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li a span {
text-align: left;
flex: 1;
width: 100%;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li a span:before {
content: none;
}
@media screen and (min-width: 1191px) {
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true span:before {
transform: rotate(315deg);
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul {
display: flex;
flex-wrap: wrap;
justify-content: space-evenly;
width: 100%;
left: 0;
position: absolute;
top: calc(100% + 60px);
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li {
display: flex;
text-align: center;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild a {
background: #fff;
position: relative;
padding-right: 20px;
z-index: 2;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild a:before {
content: "";
display: inline-block;
vertical-align: middle;
color: #2D2D2D;
line-height: 1;
width: 8px;
height: 8px;
border: 2px solid currentColor;
border-left: 0;
border-bottom: 0;
box-sizing: border-box;
transform: translateY(-50%) rotate(135deg);
position: absolute;
right: 0;
top: 50%;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild ul {
width: 100%;
position: absolute;
top: 100%;
left: 50%;
transform: translateX(-50%);
justify-content: center;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild ul li {
display: none;
position: relative;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true {
color: #1F2F8E;
font-weight: 700;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true span:before {
transform: rotate(315deg);
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true ul {
transform: translateX(-50%);
left: 50%;
top: calc(100% + 30px);
width: 100vw;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true ul li {
display: block;
text-align: center;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true ul li a {
background: #fff;
padding: 12px 24px;
border-radius: 80px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true ul li a:before, #header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true ul li a:after {
content: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li.menu-item-has-grandchild.true ul li:after {
content: "";
border-radius: 80px;
opacity: 0.33;
position: absolute;
top: -1px;
left: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
background: #1F2F8E;
z-index: -1;
}
}
#header #head_menu #nav-toggle {
display: none;
}
#header .menubg {
width: 100vw;
height: 0;
background: #fff;
position: absolute;
left: 0;
top: 0;
z-index: -1;
opacity: 0;
transition: opacity 0.3s 0s ease;
}
#header .menubg:before {
content: "";
width: 100%;
height: 100%;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
position: absolute;
left: 0;
top: 184px;
opacity: 1;
}
#header .menubg.true {
height: 100vw;
opacity: 0.99;
}
.ft-linklist {
display: flex;
justify-content: space-between;
padding: 75px 0;
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
}
@media screen and (max-width: 1920px) {
.ft-linklist {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
.ft-linklist {
width: calc(100% - 16vw);
}
}
.ft-linklist ul {
display: flex;
}
.ft-linklist .logolist li {
margin-right: 24px;
}
.ft-linklist .logolist li:last-child {
margin: 0;
}
.ft-linklist .logolist li a img {
display: block;
width: auto;
height: 50px;
}
#footer {
z-index: 3;
position: relative;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
padding: 120px 0 0;
}
#footer .ft-linklist {
padding: 40px 0;
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
margin-bottom: 100px;
background: #fff;
}
@media screen and (max-width: 1920px) {
#footer .ft-linklist {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#footer .ft-linklist {
width: calc(100% - 16vw);
}
}
#footer .ft-linklist ul {
display: flex;
justify-content: center;
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
}
@media screen and (max-width: 1480px) {
#footer .ft-linklist ul {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#footer .ft-linklist ul {
width: calc(100% - 16vw);
}
}
#footer .ft-linklist .logolist li {
margin-right: 24px;
}
#footer .ft-linklist .logolist li:last-child {
margin: 0;
}
#footer .ft-linklist .logolist li a img {
display: block;
width: 160px;
height: 100px;
-o-object-fit: contain;
object-fit: contain;
}
#footer .inner {
position: relative;
}
#footer .inner .box {
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 100px;
}
@media screen and (max-width: 1920px) {
#footer .inner .box {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#footer .inner .box {
width: calc(100% - 16vw);
}
}
#footer .inner .logo img {
width: 240px;
height: auto;
}
#footer .inner .link-list .inner {
padding: 0;
display: flex;
justify-content: flex-end;
margin-left: 45px;
}
#footer .inner .link-list ul {
margin-left: 50px;
display: flex;
}
#footer .inner .link-list li {
margin-bottom: 16px;
}
#footer .inner .link-list li:first-child:after {
content: "|";
display: inline-block;
padding: 0 12px;
color: #fff;
}
#footer .inner .link-list li a {
text-decoration: underline;
font-size: 0.8333333333rem;
color: #fff;
}
@media screen and (min-width: 1191px) {
#footer .inner .link-list li a:hover {
text-decoration: none;
}
}
#footer .inner .copy {
background: #fff;
}
#footer .inner .copy .copy-inner {
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
padding: 24px 0;
display: block;
text-align: right;
}
@media screen and (max-width: 1920px) {
#footer .inner .copy .copy-inner {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#footer .inner .copy .copy-inner {
width: calc(100% - 16vw);
}
}
#footer .inner .copy .copy-inner .pc {
display: inline;
padding: 0;
display: none;
}
@media screen and (max-width: 959px) {
#footer {
padding: 48px 0 0;
}
#footer .ft-linklist {
padding: 24px 0;
margin-bottom: 40px;
}
#footer .ft-linklist ul {
display: flex;
justify-content: center;
flex-wrap: wrap;
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
}
}
@media screen and (max-width: 959px) and (max-width: 1480px) {
#footer .ft-linklist ul {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) and (max-width: 959px) {
#footer .ft-linklist ul {
width: calc(100% - 16vw);
}
}
@media screen and (max-width: 959px) {
#footer .ft-linklist .logolist li {
margin-right: 24px;
}
#footer .ft-linklist .logolist li:last-child {
margin: 0;
}
#footer .ft-linklist .logolist li a img {
display: block;
width: 160px;
height: 100px;
-o-object-fit: contain;
object-fit: contain;
}
#footer .inner {
position: relative;
}
#footer .inner .box {
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
margin-bottom: 40px;
}
}
@media screen and (max-width: 959px) and (max-width: 1920px) {
#footer .inner .box {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) and (max-width: 959px) {
#footer .inner .box {
width: calc(100% - 16vw);
}
}
@media screen and (max-width: 959px) {
#footer .inner .logo img {
width: 180px;
height: auto;
}
#footer .inner .link-list .inner {
padding: 0;
display: flex;
justify-content: flex-end;
margin-left: 0;
}
#footer .inner .link-list ul {
margin: 16px 0 0;
display: flex;
}
#footer .inner .link-list li {
margin-bottom: 16px;
}
#footer .inner .link-list li:first-child:after {
content: "|";
display: inline-block;
padding: 0 12px;
color: #fff;
}
#footer .inner .link-list li a {
text-decoration: underline;
font-size: 0.7777777778rem;
color: #fff;
}
}
@media screen and (max-width: 959px) and (min-width: 1191px) {
#footer .inner .link-list li a:hover {
text-decoration: none;
}
}
@media screen and (max-width: 959px) {
#footer .inner .copy {
background: #fff;
}
#footer .inner .copy .copy-inner {
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
padding: 24px 0;
display: block;
text-align: right;
}
}
@media screen and (max-width: 959px) and (max-width: 1920px) {
#footer .inner .copy .copy-inner {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) and (max-width: 959px) {
#footer .inner .copy .copy-inner {
width: calc(100% - 16vw);
}
}
@media screen and (max-width: 959px) {
#footer .inner .copy .copy-inner .pc {
display: none;
padding: 0;
}
}
@media screen and (max-width: 1280px) {
body {
overflow: hidden;
display: block;
}
#header {
padding: 32px 0;
opacity: 0;
transition: all 0.5s 0s ease;
top: auto;
}
#header .menubg {
display: none;
}
#header.true {
opacity: 1;
}
#header #head_menu {
overflow: visible;
display: block;
height: auto;
position: static;
}
#header #head_menu .logo {
width: 100%;
text-align: left;
}
#header #head_menu .logo a {
display: inline-block;
width: 180px;
position: relative;
}
#header #head_menu .logo.true {
top: 10px;
}
#header #head_menu .menu {
display: flex;
flex-wrap: wrap-reverse;
align-items: flex-end;
padding: 65px 0 0 50px;
width: 0;
height: 100vh;
position: absolute;
top: 0;
background: rgba(255, 255, 255, 0.67777);
transition: all 0.3s 0s ease;
z-index: -1;
opacity: 0;
right: -50px;
-webkit-overflow-scrolling: touch;
}
#header #head_menu .menu:after {
content: "";
background: #1F2F8E;
width: 0;
height: 100vh;
position: absolute;
top: 0;
right: -100px;
opacity: 0;
transition: all 0.3s 0.2s ease;
z-index: -2;
}
#header #head_menu .menu .inner {
overflow: hidden;
height: 100vh;
width: 100%;
}
#header #head_menu .menu .gnavi {
overflow: hidden;
position: relative;
z-index: -1;
background: none;
display: block;
width: 100%;
padding: 0;
height: calc(100% - 120px);
opacity: 0;
margin-bottom: 120px;
transition: all 0.3s 0.4s ease;
}
#header #head_menu .menu .gnavi .reservation {
display: none;
}
#header #head_menu .menu .gnavi ul {
display: block;
margin: 0;
width: auto;
}
#header #head_menu .menu .gnavi ul li {
width: 100%;
height: 100%;
display: none;
margin: 0;
padding: 5px 30px 15px;
}
#header #head_menu .menu .gnavi ul li span, #header #head_menu .menu .gnavi ul li a {
height: auto;
display: block;
color: #fff;
text-align: left;
padding: 0;
}
#header #head_menu .menu .gnavi ul li span span, #header #head_menu .menu .gnavi ul li a span {
text-align: left;
}
#header #head_menu .menu .gnavi ul li span:before, #header #head_menu .menu .gnavi ul li a:before {
content: none;
}
#header #head_menu .menu .gnavi ul li.contact a {
height: auto;
display: block;
color: #fff;
text-align: left;
padding: 0;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children a:before, #header #head_menu .menu .gnavi ul li.menu-item-has-children span:before {
content: "";
position: absolute;
top: 8px;
right: 7px;
width: 2px;
height: 16px;
border: none;
transform: rotate(0);
background: #fff;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children a:after, #header #head_menu .menu .gnavi ul li.menu-item-has-children span:after {
content: "";
width: 16px;
height: 2px;
background: #fff;
position: absolute;
right: 0;
top: 15px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul {
transform: translateX(0%);
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul:before {
content: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li {
width: 100%;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li a {
text-align: left;
border: none;
width: 100%;
padding: 10px 50px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children ul li a:after {
content: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true a:before, #header #head_menu .menu .gnavi ul li.menu-item-has-children.true span:before {
content: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul {
display: block;
width: calc(100% - 20px);
background: #fff;
padding: 10px 16px;
margin-top: 15px;
border-radius: 16px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul img {
display: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li {
display: block;
padding: 0;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li a span {
font-size: 14px;
font-weight: 700;
color: #1F2F8E;
padding: 8px 5px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul li a {
padding: 0;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild a {
position: relative;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild a:before {
content: "";
position: absolute;
top: 8px;
right: 7px;
width: 2px;
height: 16px;
border: none;
transform: rotate(0);
background: #3046A0;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild a:after {
left: auto;
opacity: 1;
content: "";
width: 16px;
height: 2px;
background: #3046A0;
position: absolute;
right: 0;
top: 15px;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild ul {
display: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild.true a:before {
content: none;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild.true ul {
display: block;
margin: 0 0 0 10px;
border-radius: 0;
padding: 10px 0px 10px 10px;
border-left: 1px solid #1F2F8E;
}
#header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild.true ul li a:before, #header #head_menu .menu .gnavi ul li.menu-item-has-children.true ul .menu-item-has-grandchild.true ul li a:after {
content: none;
}
#header.open #head_menu .menu {
width: 100%;
right: 0;
opacity: 1;
z-index: 10000000;
}
#header.open #head_menu .menu:after {
width: calc(100vw - 25px);
right: 0;
opacity: 1;
border-radius: 32px 0 0;
}
#header.open #head_menu .menu {
flex: 1;
display: flex;
flex-direction: column;
}
#header.open #head_menu .menu .btn-area {
margin: 0 0 40px;
padding: 0 10px;
display: flex;
}
#header.open #head_menu .menu .btn-area li {
width: calc(50% - 10px);
}
#header.open #head_menu .menu .btn-area li a {
display: block;
width: 100%;
border: 1px solid #fff;
font-size: 0.95rem;
padding: 15px 8px 15px 8px;
color: #fff;
line-height: 1;
position: relative;
text-align: center;
}
#header.open #head_menu .menu .btn-area li a svg {
display: none;
}
#header.open #head_menu .menu .btn-area li:first-child {
margin-right: 20px;
}
#header.open #head_menu .menu .gnavi {
opacity: 1;
z-index: 2;
}
#header.open #head_menu .menu .gnavi ul {
padding: 0;
}
#header.open #head_menu .menu .gnavi ul li {
display: block;
text-align: center;
}
#header.open #head_menu .menu .gnavi ul li a {
font-size: 1rem;
}
#header.open #head_menu .menu .gnavi ul li a span {
color: #fff;
line-height: 1;
font-size: 10px;
text-align: left;
}
#header.open #head_menu .menu .gnavi ul li ul {
position: static;
opacity: 1;
}
#header.open #head_menu .menu .gnavi ul li ul li {
opacity: 1;
}
#header.open #head_menu .menu .gnavi ul li ul li a {
background: transparent;
color: #fff;
}
#global-nav ul {
list-style: none;
position: absolute;
top: 100px;
left: 50%;
transform: translate(-50%, 0%);
margin: 0;
font-size: 14px;
width: 90%;
display: block;
}
#global-nav ul li {
float: none;
position: static;
width: 100%;
height: 52px;
border: none;
margin-bottom: 3px;
}
#global-nav ul li:last-child {
margin-bottom: 0;
}
#header #global-nav ul li a,
#header.fixed #global-nav ul li a {
width: 100%;
font-size: 14px;
display: block;
padding: 5px 0;
border: 1px solid #cec899;
background-color: #fff;
}
#header #global-nav ul li a:after,
#header.fixed #global-nav ul li a:after {
content: none;
}
#header #global-nav ul li a button,
#header.fixed #global-nav ul li a button {
font-size: 10px;
margin-top: 5px;
}
#header #head_menu #nav-toggle {
display: block;
}
.open #nav-toggle {
background: rgba(0, 0, 0, 0);
} .open #nav-toggle button {
background: #fff;
}
.open #nav-toggle button:nth-child(1) {
top: 11px;
transform: rotate(315deg);
width: calc(100% - 20px);
}
.open #nav-toggle button:nth-child(2) {
width: 0;
left: 50%;
opacity: 0;
}
.open #nav-toggle button:nth-child(3) {
top: 11px;
transform: rotate(-315deg);
width: calc(100% - 20px);
} .open#header #header_inner .contents #global-nav {
opacity: 1;
display: flex;
z-index: 999999;
}
.open#header #header_inner .contents #global-nav a {
pointer-events: auto;
} #nav-toggle {
display: block;
position: absolute;
right: 12px;
width: 54px;
height: 56px;
top: 18px;
cursor: pointer;
z-index: 99999999999;
padding: 15px 0 0 0;
}
#nav-toggle div {
position: relative;
}
#nav-toggle button {
display: block;
position: absolute;
height: 2px;
background: #1F2F8E;
transition: 0.33s ease-in-out;
right: 0;
border: none;
pointer-events: none;
border-radius: 10px;
}
#nav-toggle button:nth-child(1) {
width: calc(100% - 10px);
top: 0;
}
#nav-toggle button:nth-child(2) {
width: calc(100% - 10px);
top: 13px;
}
#nav-toggle button:nth-child(3) {
width: calc(100% - 10px);
top: 26px;
}
}
.is-fixed #header {
position: fixed;
padding: 20px 0 40px;
}
.is-fixed #header .menubg:before {
top: 124px;
}.slick-slider
{
position: relative;
display: block;
box-sizing: border-box;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-khtml-user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}
.slick-list
{
position: relative;
display: block;
overflow: hidden;
margin: 0;
padding: 0;
}
.slick-list:focus
{
outline: none;
}
.slick-list.dragging
{
cursor: pointer;
cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list
{
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
.slick-track
{
position: relative;
top: 0;
left: 0;
display: block;
margin-left: auto;
margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
display: table;
content: '';
}
.slick-track:after
{
clear: both;
}
.slick-loading .slick-track
{
visibility: hidden;
}
.slick-slide
{
display: none;
float: left;
height: 100%;
min-height: 1px;
}
[dir='rtl'] .slick-slide
{
float: right;
}
.slick-slide img
{
display: block;
}
.slick-slide.slick-loading img
{
display: none;
}
.slick-slide.dragging img
{
pointer-events: none;
}
.slick-initialized .slick-slide
{
display: block;
}
.slick-loading .slick-slide
{
visibility: hidden;
}
.slick-vertical .slick-slide
{
display: block;
height: auto;
border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
display: none;
}
 .slick-loading .slick-list
{
background: #fff url(https://sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/plugin/slick/ajax-loader.gif) center center no-repeat;
} @font-face
{
font-family: 'slick';
font-weight: normal;
font-style: normal;
src: url(https://sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/plugin/slick/fonts/slick.eot);
src: url(https://sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/plugin/slick/fonts/slick.eot?#iefix) format('embedded-opentype'), url(https://sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/plugin/slick/fonts/slick.woff) format('woff'), url(https://sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/plugin/slick/fonts/slick.ttf) format('truetype'), url(https://sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/plugin/slick/fonts/slick.svg#slick) format('svg');
} .slick-prev,
.slick-next
{
font-size: 0;
line-height: 0;
position: absolute;
top: 50%;
display: block;
width: 20px;
height: 20px;
padding: 0;
-webkit-transform: translate(0, -50%);
-ms-transform: translate(0, -50%);
transform: translate(0, -50%);
cursor: pointer;
color: transparent;
border: none;
outline: none;
background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
color: transparent;
outline: none;
background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
opacity: .25;
}
.slick-prev:before,
.slick-next:before
{
font-family: 'slick';
font-size: 20px;
line-height: 1;
opacity: .75;
color: white;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.slick-prev
{
left: -25px;
}
[dir='rtl'] .slick-prev
{
right: -25px;
left: auto;
}
.slick-prev:before
{
content: '←';
}
[dir='rtl'] .slick-prev:before
{
content: '→';
}
.slick-next
{
right: -25px;
}
[dir='rtl'] .slick-next
{
right: auto;
left: -25px;
}
.slick-next:before
{
content: '→';
}
[dir='rtl'] .slick-next:before
{
content: '←';
} .slick-dotted.slick-slider
{
margin-bottom: 30px;
}
.slick-dots
{
position: absolute;
bottom: -25px;
display: block;
width: 100%;
padding: 0;
margin: 0;
list-style: none;
text-align: center;
}
.slick-dots li
{
position: relative;
display: inline-block;
width: 20px;
height: 20px;
margin: 0 5px;
padding: 0;
cursor: pointer;
}
.slick-dots li button
{
font-size: 0;
line-height: 0;
display: block;
width: 20px;
height: 20px;
padding: 5px;
cursor: pointer;
color: transparent;
border: 0;
outline: none;
background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
opacity: 1;
}
.slick-dots li button:before
{
font-family: 'slick';
font-size: 6px;
line-height: 20px;
position: absolute;
top: 0;
left: 0;
width: 20px;
height: 20px;
content: '•';
text-align: center;
opacity: .25;
color: black;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
opacity: .75;
color: black;
}#top #firstview {
position: relative;
height: 920px;
overflow: hidden;
-webkit-clip-path: polygon(0 0, 100% 0, 100% 800px, 0% 100%);
clip-path: polygon(0 0, 100% 0, 100% 800px, 0% 100%); }
#top #firstview .bg {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
#top #firstview .bg img {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
#top #firstview .bg video {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
#top #firstview .bg .overlay {
width: 100%;
height: 100vh;
position: absolute;
top: 0;
left: 0;
background-image: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/mv_overlay.png);
background-color: rgba(0, 0, 0, 0.3);
background-size: 2px 2px;
z-index: 0;
}
#top #firstview .text, #top #firstview .illust, #top #firstview .slider {
position: absolute;
z-index: 2;
}
#top #firstview .text {
width: 900px;
left: 50vw;
top: calc(250px + 0.1vw);
opacity: 0.5;
margin-left: -450px;
}
#top #firstview .illust {
width: 61.354vw;
right: -13.542vw;
bottom: 0;
}
#top #firstview .slider {
width: 42vw;
height: 42vw;
margin: auto 0;
top: 0;
bottom: 0;
right: 3vw;
-webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
z-index: 4;
}
#top #firstview .slider img {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
@media screen and (max-width: 959px) {
#top #firstview {
position: relative;
height: auto;
overflow: hidden;
-webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 40px), 0% 100%);
clip-path: polygon(0 0, 100% 0, 100% calc(100% - 40px), 0% 100%); }
#top #firstview .bg {
height: 100%;
position: absolute;
z-index: -1;
top: 0;
left: 0;
}
#top #firstview .bg img {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
#top #firstview .bg video {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
#top #firstview .text, #top #firstview .illust, #top #firstview .slider {
position: absolute;
z-index: 2;
}
#top #firstview .illust {
z-index: 0;
}
#top #firstview .text {
width: 100vw;
display: block;
text-align: center;
position: static;
padding: 30vw 5vw 35vw;
margin-left: 0;
}
#top #firstview .illust {
width: 61.354vw;
right: -13.542vw;
bottom: 0;
}
#top #firstview .slider {
width: 32vw;
height: 32vw;
margin: 0;
top: auto;
top: calc(100px + 13vw);
right: 3vw;
-webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
z-index: 4;
}
#top #firstview .slider img {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
}
#top #concept-section {
position: relative;
z-index: 2;
padding: 150px 0;
}
#top #concept-section .inner {
position: relative;
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
display: flex;
justify-content: flex-end;
}
@media screen and (max-width: 1480px) {
#top #concept-section .inner {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#top #concept-section .inner {
width: calc(100% - 16vw);
}
}
#top #concept-section .inner .textbox {
width: 50%;
}
#top #concept-section .inner .textbox .title {
font-size: 2.4444444444rem;
line-height: 1.35;
font-weight: 700;
color: #1F2F8E;
margin: 0 0 64px;
}
#top #concept-section .inner .textbox .text {
margin: 0 0 64px;
}
#top #concept-section .inner .textbox .text p {
margin: 0 0 32px;
}
#top #concept-section .inner .textbox .text p:last-child {
margin: 0;
}
#top #concept-section .inner .imgbox0 {
position: absolute;
width: 954px;
top: -240px;
right: calc(50% + 17px);
}
@media screen and (min-width: 1700px) {
#top #concept-section .inner .imgbox0 {
width: calc(50vw + 102px);
top: -14vw;
}
}
@media screen and (min-width: 1700px) and (min-width: 1966px) {
#top #concept-section .inner .imgbox0 {
width: 1085px;
top: -275px;
}
}
@media screen and (max-width: 959px) {
#top #concept-section .inner .imgbox0 {
position: relative;
width: 133%;
max-width: 133%;
min-width: 133%;
top: 0;
right: 0;
margin: -18vw 0 -18vw -11vw;
}
}
#top #concept-section .inner .imgbox0 .img00 {
width: 100%;
height: auto;
}
#top #concept-section .inner .imgbox {
position: absolute;
width: calc(50vw - 164px);
right: calc(50% + 64px);
}
#top #concept-section .inner .imgbox img {
display: block;
position: absolute;
-webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
#top #concept-section .inner .imgbox .img01 {
width: 28.646vw;
height: auto;
top: -6vw;
right: 13.542vw;
}
#top #concept-section .inner .imgbox .img02 {
width: 20.313vw;
height: auto;
top: -13vw;
right: 3.542vw;
}
#top #concept-section .inner .imgbox .img03 {
width: 22.813vw;
height: auto;
top: 7vw;
right: 0;
}
#top #concept-section .inner .pattern01 {
top: -124px;
left: calc(100% - 8px);
}
#top #concept-section .inner .pattern02 {
bottom: -110px;
left: -270px;
}
#top #concept-section .bg {
position: absolute;
z-index: -1;
bottom: -120px;
right: -30vw;
}
#top #concept-section .pattern01, #top #concept-section .pattern02 {
position: absolute;
}
@media screen and (max-width: 959px) {
#top #concept-section {
position: relative;
z-index: 2;
padding: 64px 0;
}
#top #concept-section .inner {
position: relative;
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
display: block;
justify-content: flex-end;
}
}
@media screen and (max-width: 959px) and (max-width: 1480px) {
#top #concept-section .inner {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) and (max-width: 959px) {
#top #concept-section .inner {
width: calc(100% - 16vw);
}
}
@media screen and (max-width: 959px) {
#top #concept-section .inner .textbox {
width: 100%;
margin-bottom: 2em;
}
#top #concept-section .inner .textbox .title {
font-size: 1.5555555556rem;
line-height: 1.35;
font-weight: 700;
color: #1F2F8E;
margin: 0 0 32px;
}
#top #concept-section .inner .textbox .text {
margin: 0 0 40px;
}
#top #concept-section .inner .textbox .text p {
margin: 0 0 24px;
}
#top #concept-section .inner .textbox .text p:last-child {
margin: 0;
}
#top #concept-section .inner .imgbox {
position: relative;
width: 100%;
right: auto;
margin-bottom: 40px;
}
#top #concept-section .inner .imgbox img {
display: block;
position: static;
-webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
clip-path: polygon(0 0, 100% 0%, 100% 100%, 0% 100%);
}
#top #concept-section .inner .imgbox .img01 {
width: 67%;
height: auto;
top: -44vw;
right: -15.458vw;
}
#top #concept-section .inner .imgbox .img02 {
width: 33%;
height: 50%;
top: 0;
right: 0;
position: absolute;
-o-object-fit: cover;
object-fit: cover;
}
#top #concept-section .inner .imgbox .img03 {
width: 33%;
height: 50%;
top: auto;
bottom: 0;
right: 0;
position: absolute;
-o-object-fit: cover;
object-fit: cover;
}
#top #concept-section .inner .pattern01 {
top: -70px;
left: calc(100% - 8px);
}
#top #concept-section .inner .pattern02 {
bottom: -110px;
left: -270px;
}
#top #concept-section .bg {
position: absolute;
z-index: -1;
bottom: -70px;
right: -20vw;
}
#top #concept-section .pattern01, #top #concept-section .pattern02 {
position: absolute;
}
}
#top #service-section {
position: relative;
z-index: 1;
padding: 240px 0;
z-index: 3;
-webkit-clip-path: polygon(0 120px, 100% 0%, 100% calc(100% - 120px), 0% 100%);
clip-path: polygon(0 120px, 100% 0%, 100% calc(100% - 120px), 0% 100%);
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
}
#top #service-section:before {
content: "";
width: 70px;
height: 29px;
position: absolute;
left: 40px;
bottom: 100px;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/index/service-illst02.svg) no-repeat center/contain;
}
#top #service-section .titlearea {
position: relative;
display: flex;
color: #fff;
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
margin-bottom: 120px;
}
@media screen and (max-width: 1480px) {
#top #service-section .titlearea {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#top #service-section .titlearea {
width: calc(100% - 16vw);
}
}
#top #service-section .titlearea:before {
content: "";
width: 152px;
height: 155px;
position: absolute;
left: 100%;
top: -100px;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/index/service-illst01.svg) no-repeat center/contain;
}
#top #service-section .titlearea .title {
font-weight: 700;
font-size: 2.8888888889rem;
}
#top #service-section .titlearea .text {
flex: 1;
margin: 40px 0 0 40px;
font-size: 1.1111111111rem;
font-weight: 700;
}
#top #service-section .list {
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
display: flex;
align-items: flex-start;
justify-content: space-between;
}
@media screen and (max-width: 1920px) {
#top #service-section .list {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#top #service-section .list {
width: calc(100% - 16vw);
}
}
#top #service-section .list li {
width: calc(25% - 70px);
position: relative;
}
#top #service-section .list li:before {
content: "";
width: 40px;
height: 40px;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/mark-plus.svg) center/cover;
position: absolute;
z-index: 2;
transform: translateY(-50%);
right: -60px;
top: 50%;
}
#top #service-section .list li:last-child::before {
content: none;
}
#top #service-section .list li:first-child {
margin-top: 120px;
}
#top #service-section .list li:nth-child(2) {
margin-top: 200px;
}
#top #service-section .list li:nth-child(3) {
margin-top: 80px;
}
#top #service-section .list li a {
display: block;
position: relative;
height: 100%;
padding: 0 0 114px;
}
#top #service-section .list li a:hover {
opacity: 0.677777;
}
#top #service-section .list li .title {
writing-mode: vertical-rl;
text-orientation: upright;
padding: 32px 16px;
position: absolute;
top: -100px;
left: 0;
color: #1F2F8E;
background: #fff;
font-weight: 700;
z-index: 2;
font-size: 1rem;
transform: translateX(-50%);
}
#top #service-section .list li .img {
display: block;
position: relative;
}
#top #service-section .list li .img:before {
content: "";
display: block;
padding: 0 0 141.2%;
}
#top #service-section .list li .img img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
#top #service-section .list li .text {
margin-top: 24px;
color: #fff;
font-size: 0.8888888889rem;
display: block;
}
#top #service-section .list li .text span {
margin-top: 16px;
display: block;
font-size: 0.7222222222rem;
}
#top #service-section .list li .button {
position: absolute;
right: 0;
bottom: 0;
font-weight: 700;
color: #fff;
padding: 16px 76px 16px 0;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-w.svg) no-repeat center right/contain;
}
#top #service-section .bg {
position: absolute;
z-index: -1;
bottom: -120px;
right: -10vw;
}
@media screen and (max-width: 1349px) {
#top #service-section .list {
flex-wrap: wrap;
}
#top #service-section .list li {
width: calc(50% - 50px);
}
#top #service-section .list li:before {
content: none;
}
#top #service-section .list li:last-child {
margin-top: 120px;
}
#top #service-section .list li:first-child {
margin-top: 120px;
}
#top #service-section .list li:nth-child(2) {
margin-top: 120px;
}
#top #service-section .list li:nth-child(3) {
margin-top: 120px;
}
#top #service-section .list li a {
position: relative;
}
#top #service-section .list li .title {
writing-mode: vertical-rl;
padding: 32px 16px;
position: absolute;
top: -100px;
left: 0;
color: #1F2F8E;
background: #fff;
font-weight: 700;
z-index: 2;
font-size: 1.1666666667rem;
transform: translateX(-50%);
}
#top #service-section .list li .img {
display: block;
position: relative;
}
#top #service-section .list li .img:before {
content: "";
display: block;
padding: 0 0 70.8%;
}
#top #service-section .list li .img img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
}
@media screen and (max-width: 959px) {
#top #service-section {
-webkit-clip-path: polygon(0 40px, 100% 0%, 100% calc(100% - 40px), 0% 100%);
clip-path: polygon(0 40px, 100% 0%, 100% calc(100% - 40px), 0% 100%);
padding: 110px 0;
}
#top #service-section .titlearea {
position: relative;
display: block;
margin-bottom: 48px;
}
#top #service-section .titlearea .title {
font-weight: 700;
font-size: 1.5555555556rem;
}
#top #service-section .titlearea .text {
flex: 1;
margin: 16px 0 0 24px;
font-size: 1rem;
font-weight: 700;
}
#top #service-section .list {
flex-wrap: wrap;
}
#top #service-section .list li {
width: 100%;
}
#top #service-section .list li:last-child {
margin-top: 60px;
}
#top #service-section .list li:first-child {
margin-top: 60px;
}
#top #service-section .list li:nth-child(2) {
margin-top: 60px;
}
#top #service-section .list li:nth-child(3) {
margin-top: 60px;
}
#top #service-section .list li a {
position: relative;
padding: 0 0 80px;
}
#top #service-section .list li .title {
writing-mode: vertical-rl;
padding: 16px 8px;
position: absolute;
top: -40px;
left: 8px;
color: #1F2F8E;
background: #fff;
font-weight: 700;
z-index: 2;
font-size: 0.8888888889rem;
transform: translateX(calc);
}
#top #service-section .list li .img {
display: block;
position: relative;
}
#top #service-section .list li .img:before {
content: "";
display: block;
padding: 0 0 70.8%;
}
#top #service-section .list li .img img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
#top #service-section .bg {
position: absolute;
z-index: -1;
bottom: -40px;
right: -10vw;
}
}
#top #case-section {
padding: 150px 0;
max-width: 1720px;
width: 100%;
margin-left: auto;
margin-right: auto;
position: relative;
}
@media screen and (max-width: 1920px) {
#top #case-section {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#top #case-section {
width: calc(100% - 16vw);
}
}
#top #case-section .title {
font-size: 2.8888888889rem;
line-height: 1.35;
font-weight: 700;
text-align: center;
color: #1F2F8E;
margin: 0 0 64px;
}
#top #case-section .list {
display: flex;
justify-content: space-between;
margin: 0 0 64px;
}
#top #case-section .list:before {
content: "";
width: 212px;
height: 152px;
position: absolute;
right: -30px;
top: 100px;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/index/case-illust01.svg) no-repeat center/contain;
}
#top #case-section .list:after {
content: "";
width: 95px;
height: 50px;
position: absolute;
left: -30px;
bottom: 0;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/index/case-illust02.svg) no-repeat center/contain;
}
#top #case-section .list li {
width: calc(33.3333333333% - 40px);
}
#top #case-section .list li a {
display: block;
position: relative;
}
#top #case-section .list li a:before {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 1px;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
}
#top #case-section .list li a span {
display: block;
}
#top #case-section .list li a .img {
position: relative;
margin: 0 0 28px;
}
#top #case-section .list li a .img:before {
content: "";
display: block;
padding: 0 0 70.8%;
}
#top #case-section .list li a .img img {
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
position: absolute;
left: 0;
top: 0;
}
#top #case-section .list li a .list-title {
font-size: 1.3333333333rem;
font-weight: 700;
margin: 0 0 28px;
padding: 4px 56px 0 0;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat center right/42px;
transition: 0.3s;
}
#top #case-section .list li a .table {
display: flex;
padding: 24px 0;
position: relative;
}
#top #case-section .list li a .table:before {
content: "";
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 1px;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
}
#top #case-section .list li a .table .table-title {
width: 116px;
font-weight: 700;
}
#top #case-section .list li a .table .table-text {
flex: 1;
}
#top #case-section .list li a:hover .list-title {
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat center right 10px/42px;
}
#top #case-section .button01 {
text-align: center;
}
#top #case-section .button01 a {
text-align: left;
}
@media screen and (max-width: 959px) {
#top #case-section {
padding: 64px 0;
}
#top #case-section .title {
font-size: 1.5555555556rem;
line-height: 1.35;
font-weight: 700;
text-align: center;
color: #1F2F8E;
margin: 0 0 32px;
}
#top #case-section .list {
display: block;
justify-content: space-between;
margin: 0 0 32px;
}
#top #case-section .list li {
width: 100%;
}
#top #case-section .list li:nth-child(2) {
margin: 40px 0;
}
#top #case-section .list li a {
display: block;
position: relative;
}
#top #case-section .list li a:before {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 1px;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
}
#top #case-section .list li a span {
display: block;
}
#top #case-section .list li a .img {
margin: 0 0 24px;
}
#top #case-section .list li a .list-title {
font-size: 1.1666666667rem;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat center right/32px;
}
#top #case-section .list li a .table {
padding: 24px 0;
}
#top #case-section .list li a .table .table-title {
width: 116px;
font-weight: 700;
}
#top #case-section .list li a .table .table-text {
flex: 1;
}
#top #case-section .list li a:hover .list-title {
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat center right 10px/32px;
}
}
#top #sdgs-section {
padding: 210px 0 150px;
position: relative;
-webkit-clip-path: polygon(0 120px, 100% 0%, 100% 100%, 0% 100%);
clip-path: polygon(0 120px, 100% 0%, 100% 100%, 0% 100%);
}
#top #sdgs-section:before {
content: "";
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 400px;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/index/sdgs_cover.webp) fixed no-repeat top left/cover;
z-index: -1;
}
#top #sdgs-section .inner {
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
}
@media screen and (max-width: 1480px) {
#top #sdgs-section .inner {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#top #sdgs-section .inner {
width: calc(100% - 16vw);
}
}
#top #sdgs-section .inner .title {
margin: 0 0 200px;
font-size: 4rem;
font-weight: 700;
color: #fff;
}
#top #sdgs-section .inner .contents {
display: flex;
justify-content: space-between;
align-items: center;
}
#top #sdgs-section .inner .contents .img {
width: 50%;
}
#top #sdgs-section .inner .contents .text {
width: calc(50% - 64px);
}
#top #sdgs-section .inner .contents .text .contents-title {
font-weight: 700;
font-size: 1.5555555556rem;
margin: 0 0 48px;
}
@media screen and (max-width: 959px) {
#top #sdgs-section {
padding: 110px 0 64px;
position: relative;
-webkit-clip-path: polygon(0 40px, 100% 0%, 100% 100%, 0% 100%);
clip-path: polygon(0 40px, 100% 0%, 100% 100%, 0% 100%);
}
#top #sdgs-section:before {
content: "";
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 220px;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/index/sdgs_cover.webp) no-repeat top left/cover;
z-index: -1;
}
#top #sdgs-section .inner {
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
}
}
@media screen and (max-width: 959px) and (max-width: 1480px) {
#top #sdgs-section .inner {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) and (max-width: 959px) {
#top #sdgs-section .inner {
width: calc(100% - 16vw);
}
}
@media screen and (max-width: 959px) {
#top #sdgs-section .inner .title {
margin: 0 0 110px;
font-size: 1.5555555556rem;
font-weight: 700;
color: #fff;
}
#top #sdgs-section .inner .contents {
display: block;
}
#top #sdgs-section .inner .contents .img {
width: 100%;
}
#top #sdgs-section .inner .contents .text {
width: 100%;
}
#top #sdgs-section .inner .contents .text .contents-title {
font-weight: 700;
font-size: 1.3333333333rem;
margin: 0 0 32px;
}
}
#top #news-section {
padding: 150px 0;
max-width: 1280px;
width: 100%;
margin-left: auto;
margin-right: auto;
position: relative;
display: flex;
}
@media screen and (max-width: 1480px) {
#top #news-section {
width: calc(100% - 200px);
}
}
@media screen and (max-width: 959px) {
#top #news-section {
width: calc(100% - 16vw);
}
}
#top #news-section:before {
content: "";
width: 100vw;
height: 100%;
background: #F5F5FC;
position: absolute;
left: 0;
top: 0;
-webkit-clip-path: polygon(220px 0, 100% 0%, 100% 100%, 0% 100%);
clip-path: polygon(220px 0, 100% 0%, 100% 100%, 0% 100%);
z-index: -1;
}
#top #news-section .titlearea {
writing-mode: vertical-rl;
padding: 0 0 232px;
position: relative;
margin-right: 140px;
}
#top #news-section .titlearea .title {
font-size: 2.8888888889rem;
font-weight: 700;
line-height: 1;
}
#top #news-section .titlearea a {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
display: flex;
justify-content: center;
text-align: center;
align-items: center;
font-size: 1.1111111111rem;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat top center/contain;
padding-top: 60px;
}
#top #news-section .list {
flex: 1;
width: 100%;
}
#top #news-section .list li {
position: relative;
margin: 0 0 52px;
}
#top #news-section .list li:last-child {
margin: 0;
}
#top #news-section .list li:before {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 1px;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
}
#top #news-section .list li a {
display: flex;
align-items: center;
padding: 0 80px 52px 0;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat top 16px right/32px;
}
#top #news-section .list li a:hover {
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat top 16px right 16px/32px;
}
#top #news-section .list li a span {
display: block;
}
#top #news-section .list li a .status {
display: flex;
align-items: center;
margin-right: 40px;
font-size: 0.8888888889rem;
}
#top #news-section .list li a .status time {
display: block;
margin-right: 40px;
}
#top #news-section .list li a .status .category {
width: 220px;
padding: 16px;
text-align: center;
color: #fff;
font-weight: 700;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
}
#top #news-section .list li a .list-title {
flex: 1;
width: 100%;
font-size: 1.1666666667rem;
font-weight: 700;
}
@media screen and (max-width: 959px) {
#top #news-section {
padding: 64px 0;
}
#top #news-section:before {
content: "";
width: 100vw;
height: 100%;
background: #F5F5FC;
position: absolute;
left: 0;
top: 0;
-webkit-clip-path: polygon(40px 0, 100% 0%, 100% 100%, 0% 100%);
clip-path: polygon(40px 0, 100% 0%, 100% 100%, 0% 100%);
z-index: -1;
}
#top #news-section .titlearea {
writing-mode: vertical-rl;
padding: 0 0 232px;
position: relative;
margin-right: 32px;
}
#top #news-section .titlearea .title {
font-size: 1.5555555556rem;
font-weight: 700;
line-height: 1;
}
#top #news-section .titlearea a {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
display: flex;
justify-content: center;
text-align: center;
align-items: center;
font-size: 1.1111111111rem;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat top center/contain;
padding-top: 60px;
}
#top #news-section .list li {
position: relative;
margin: 0 0 24px;
}
#top #news-section .list li a {
display: block;
align-items: center;
padding: 0 0 24px 0;
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat bottom 32px right/32px;
}
#top #news-section .list li a:hover {
background: url(//sansen-shimizu.co.jp/wpfolder/wp-content/themes/sansen/images/common/btn-b.svg) no-repeat bottom 32px right/32px;
}
#top #news-section .list li a span {
display: block;
}
#top #news-section .list li a .status {
display: flex;
align-items: center;
margin: 0 0 16px;
font-size: 0.7222222222rem;
}
#top #news-section .list li a .status time {
display: block;
margin-right: 16px;
}
#top #news-section .list li a .status .category {
width: 124px;
padding: 16px;
text-align: center;
color: #fff;
font-weight: 700;
background: linear-gradient(74deg, #3046A0 0%, #1F2F8E 100%);
}
#top #news-section .list li a .list-title {
flex: 1;
width: 100%;
font-size: 1.1666666667rem;
font-weight: 700;
padding: 0 40px 0 0;
}
}