@charset "UTF-8";


/* common
------------------------------------------------- */
figure,
picture {
    display: block;
	font-size: inherit;
	margin: 0;
	padding: 0;
}
figure img,
picture img {
    width: 100%;
    max-width: 100%;
    height: auto;
}
sup {
    font-size: 45%;
    vertical-align: super;
}

/* module
------------------------------------------------- */
.pcon { display: block; }
.spon { display: none; }
@media screen and (max-width:767px){
.pcon { display: none; }
.spon { display: block; }
}


/* a
------------------------------------------------- */
@media screen and (min-width:768px){
a {
    transition: 0.4s;
}
a.al:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}
}


/* layout
------------------------------------------------- */
.maincont {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    color: #242424;
}
.inner {
    max-width: 1160px;
    margin: 0 auto;
    position: relative;
}
.d-flex {
    display: flex;
}
.f-wrap {
    flex-wrap: wrap;
}
.f-rev {
    flex-direction: row-reverse;
}
.just-center {
    justify-content: center;
}
.just-between {
    justify-content: space-between;
}
.just-end {
    justify-content: flex-end;
}
.align-center {
    align-items: center;
}
.align-start {
    align-items: flex-start;
}
.align-end {
    align-items: flex-end;
}
@media screen and (max-width:767px){
.inner {
    width: 92%;
}
.d-flex {
    display: block;
}
}


/* headline
------------------------------------------------- */
.headline1 {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 25px;
}
.headline1 img {
    display: block;
    max-width: 100%;
    margin-bottom: 18px;
}
.headline2 {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: 35px;
}
.headline3 {
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    border-bottom: 1px solid #D8D8D8;
    padding-bottom: 25px;
    margin-bottom: 30px;
}
@media screen and (max-width:767px){
.headline1 {
    font-size: 14px;
    margin-bottom: 30px;
}
.headline1 img {
    margin-bottom: 14px;
}
.headline2 {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 30px;
}
.headline3 {
    font-size: 24px;
    padding-bottom: 20px;
    margin-bottom: 25px;
}
}


/* btnst
------------------------------------------------- */
.btnst a {
    display: inline-block;
    line-height: 64px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.62%22%20height%3D%227.787%22%20viewBox%3D%220%200%2013.62%207.787%22%3E%20%3Cpath%20id%3D%22Icon_ionic-ios-arrow-down%22%20data-name%3D%22Icon%20ionic-ios-arrow-down%22%20d%3D%22M13%2C16.686l5.15-5.154a.969.969%2C0%2C0%2C1%2C1.375%2C0%2C.982.982%2C0%2C0%2C1%2C0%2C1.379L13.689%2C18.75a.972.972%2C0%2C0%2C1-1.342.028L6.471%2C12.915a.973.973%2C0%2C0%2C1%2C1.375-1.379Z%22%20transform%3D%22translate(-6.188%20-11.246)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E') right 30px center no-repeat #343439;
    background-size: 14px auto;
    border: 2px solid #343439;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    padding: 0 96px 0 32px;
    text-decoration: none;
    box-sizing: border-box;
}
@media screen and (min-width:768px){
.btnst a:hover {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.62%22%20height%3D%227.787%22%20viewBox%3D%220%200%2013.62%207.787%22%3E%20%3Cpath%20id%3D%22Icon_ionic-ios-arrow-down%22%20data-name%3D%22Icon%20ionic-ios-arrow-down%22%20d%3D%22M13%2C16.686l5.15-5.154a.969.969%2C0%2C0%2C1%2C1.375%2C0%2C.982.982%2C0%2C0%2C1%2C0%2C1.379L13.689%2C18.75a.972.972%2C0%2C0%2C1-1.342.028L6.471%2C12.915a.973.973%2C0%2C0%2C1%2C1.375-1.379Z%22%20transform%3D%22translate(-6.188%20-11.246)%22%20fill%3D%22%23343439%22%2F%3E%3C%2Fsvg%3E');
    background-color: #fff;
    color: #343439;
}
}
@media screen and (max-width:767px){
.btnst a {
    display: block;
    background-position: right 25px center;
    background-size: 14px auto;
    font-size: 14px;
    text-align: left;
    padding: 0 0 0 30px;
}
}


/* fv
------------------------------------------------- */
.fv {
    width: 100%;
    text-align: left;
    position: relative;
    margin-bottom: 80px;
}
.fv .con {
    width: 25.694vw;
    position: absolute;
    left: 5.416vw;
    top: 9.586vw;
}
.fv .con p img {
    width: 100%;
    height: auto;
}
.fv .con h1 {
    font-size: 1.527vw;
    font-weight: 700;
    line-height: 1;
    margin-top: 4.722vw;
}
.fv .con h1 img {
    display: block;
    width: 15.833vw;
    margin-top: 0.972vw;
}
.fv .photo {
    width: 100%;
}
@media screen and (min-width:1921px){
.fv .con {
    width: 493px;
    left: 104px;
    top: 184px
}
.fv .con h1 {
    font-size: 29px;
    margin-top: 90px;
}
.fv .con h1 img {
    width: 304px;
    margin-top: 18px;
}
}
@media screen and (max-width:1159px){
.fv .con {
    width: 298px;
    left: 63px;
    top: 111px
}
.fv .con h1 {
    font-size: 17px;
    margin-top: 55px;
}
.fv .con h1 img {
    width: 183px;
    margin-top: 11px;
}
}
@media screen and (max-width:767px){
.fv {
    margin-bottom: 30px;
}
.fv .con {
    width: 64.533vw;
    left: 5.866vw;
    top: 7.733vw;
}
.fv .con h1 {
    font-size: 4.8vw;
    margin-top: 7.2vw;
}
.fv .con h1 img {
    width: 46.666vw;
    margin-top: 2.933vw;
}
}


/* about
------------------------------------------------- */
.about {
    background: url("../img/about_bg.jpg") center bottom no-repeat;
    background-size: 100% auto;
    padding-bottom: 110px;
    position: relative;
}
.about .inner {
    z-index: 2;
}
.about .sec .con {
    width: 450px;
}
.about .sec .con p {
    font-size: 16px;
    line-height: 2;
    margin-bottom: 35px;
}
.about .sec .con h3 {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
}
.about .sec .photo {
    width: 680px;
    margin-left: -60px;
}
.about .list {
    padding-top: 70px;
    position: relative;
    z-index: 2;
}
.about .list li {
    width: 400px;
    height: 356px;
    background: url("../img/about_bg1.png") center center no-repeat;
    background-size: 100% auto;
    display: flex;
    justify-content: center;
    align-items: center;
}
.about .list li:nth-child(2) {
    background-image: url("../img/about_bg2.png");
}
.about .list li:nth-child(3) {
    background-image: url("../img/about_bg3.png");
}
.about .list li p {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
}
.about .list li p span {
    display: block;
    font-size: 18px;
    font-weight: 700;
}
.about .list li p b {
    font-size: 58px;
    font-weight: 700;
}
.about .list li:nth-child(3) p {
    line-height: 1.6;
}
.about .note {
    font-size: 14px;
    line-height: 1.5;
    margin-top: -15px;
}
.about .note li {
    padding-left: 2em;
    text-indent: -2em;
    margin-bottom: 5px;
}
.about .note li:nth-child(1)::before {
    content: '※1';
    padding-right: 0.5em;
}
.about .note li:nth-child(2)::before {
    content: '※2';
    padding-right: 0.5em;
}
.about .note li:nth-child(3)::before {
    content: '※3';
    padding-right: 0.5em;
}
.about .note li:nth-child(4)::before {
    content: '※1〜3';
    padding-right: 0.5em;
}
.about .txt {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 520px;
}
.about .txt img {
    width: 100.5%;
    height: auto;
}
@media screen and (max-width:767px){
.about {
    background-image: url("../img/about_bg_sp.jpg");
    padding-bottom: 35px;
}
.about .sec .con {
    width: 100%;
}
.about .sec .con p {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 30px;
}
.about .sec .con h3 {
    font-size: 16px;
    line-height: 1.5;
}
.about .sec .photo {
    width: 104.533vw;
    margin: 30px 0 0 -4vw;
}
.about .list {
    padding-top: 20px;
}
.about .list li {
    width: 75vw;
    height: 66.8vw;
}
.about .list li:nth-child(1) {
    margin-left: 25vw;
}
.about .list li:nth-child(2) {
    margin: -65px 0 -85px -5vw;
}
.about .list li:nth-child(3) {
    margin-left: 33vw;
}  
.about .list li p {
    font-size: 4.8vw;
}
.about .list li p span {
    font-size: 3.733vw;
}
.about .list li p b {
    font-size: 12.8vw;
}
.about .note {
    font-size: 12px;
}
.about .note li {
    margin-bottom: 0;
}
.about .txt {
    display: none;
}
}


/* access
------------------------------------------------- */
.access {
    padding: 95px 0;
}
.access .headline1 img {
    width: 178px;
}
.access .fig {
    width: 660px;
}
.access .fig .note {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 30px;
    padding-left: 1em;
    text-indent: -1em;
}
.access .fig .note li {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 5px;
}
.access .fig .note li::before {
    content: '※';
}
.access .con {
    width: 460px;
}
.access .con p {
    font-size: 16px;
    line-height: 2;
    margin-bottom: 35px;
}
@media screen and (max-width:767px){
.access {
    padding: 65px 0;
}
.access .headline1 img {
    width: 105px;
}
.access .fig {
    width: 100%;
    margin-bottom: 30px;
}
.access .fig .note {
    font-size: 12px;
    margin-top: 20px;
}
.access .fig .note li {
    margin-bottom: 0;
}
.access .con {
    width: 100%;
}
.access .con p {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 30px;
}
}


/* point
------------------------------------------------- */
.point {
    background-color: #E2E0D5;
    padding: 95px 0;
}
.point .headline1 img {
    width: 590px;
}
.point .headline2 {
    margin: 60px 0 85px;
}
.point ul li {
    width: 360px;
}
.point ul li h5 {
    height: 80px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 15px;
}
.point ul li p {
    font-size: 16px;
    line-height: 2;
}
.point .btnst {
    text-align: center;
    padding-top: 50px;
}
@media screen and (max-width:767px){
.point {
    padding: 40px 0;
}
.point .headline1 img {
    width: 344px;
}
.point .headline2 {
    margin: 30px 0 65px;
}
.point ul li {
    width: 100%;
    margin-bottom: 40px;
}
.point ul li .icon {
    width: 347px;
    margin: 0 auto;
}
.point ul li h5 {
    height: auto;
    display: block;
    margin: 20px 0 25px;
}
.point ul li p {
    font-size: 14px;
    line-height: 1.7;
}
.point .btnst {
    padding-top: 0;
}
}


/* linkarea
------------------------------------------------- */
.linkarea {
    padding-top: 95px;
}
.linkarea h3 {
    text-align: center;
    margin-bottom: 64px;
}
.linkarea h3 b {
    display: inline-block;
    font-size: 40px;
    font-weight: 700;
    border-bottom: 1px solid #242424;
    padding-bottom: 12px;
}
.linkarea h3 b i {
    display: inline;
    font-style: normal;
}
.linkarea h3 span {
    display: block;
    font-size: 28px;
    font-weight: 700;
}
.linkarea .pnav .btnst li {
    margin: 0 20px;
}
.linkarea .pnav .btnst li a {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%20%3Cpath%20id%3D%22open_in_new_24dp_E8EAED_FILL0_wght400_GRAD0_opsz24_2_%22%20data-name%3D%22open_in_new_24dp_E8EAED_FILL0_wght400_GRAD0_opsz24%20(2)%22%20d%3D%22M121.778-824a1.712%2C1.712%2C0%2C0%2C1-1.256-.522%2C1.712%2C1.712%2C0%2C0%2C1-.522-1.256v-12.444a1.712%2C1.712%2C0%2C0%2C1%2C.522-1.256%2C1.712%2C1.712%2C0%2C0%2C1%2C1.256-.522H128v1.778h-6.222v12.444h12.444V-832H136v6.222a1.712%2C1.712%2C0%2C0%2C1-.522%2C1.256%2C1.712%2C1.712%2C0%2C0%2C1-1.256.522Zm4.178-4.711-1.244-1.244%2C8.267-8.267h-3.2V-840H136v6.222h-1.778v-3.2Z%22%20transform%3D%22translate(-120%20840)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E');
    background-size: 16px auto;
}
@media screen and (min-width:768px){
.linkarea .pnav .btnst li a:hover {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%3E%20%3Cpath%20id%3D%22open_in_new_24dp_E8EAED_FILL0_wght400_GRAD0_opsz24_2_%22%20data-name%3D%22open_in_new_24dp_E8EAED_FILL0_wght400_GRAD0_opsz24%20(2)%22%20d%3D%22M121.778-824a1.712%2C1.712%2C0%2C0%2C1-1.256-.522%2C1.712%2C1.712%2C0%2C0%2C1-.522-1.256v-12.444a1.712%2C1.712%2C0%2C0%2C1%2C.522-1.256%2C1.712%2C1.712%2C0%2C0%2C1%2C1.256-.522H128v1.778h-6.222v12.444h12.444V-832H136v6.222a1.712%2C1.712%2C0%2C0%2C1-.522%2C1.256%2C1.712%2C1.712%2C0%2C0%2C1-1.256.522Zm4.178-4.711-1.244-1.244%2C8.267-8.267h-3.2V-840H136v6.222h-1.778v-3.2Z%22%20transform%3D%22translate(-120%20840)%22%20fill%3D%22%23343439%22%2F%3E%3C%2Fsvg%3E');
}
}
@media screen and (max-width:767px){
.linkarea {
    padding-top: 55px;
}
.linkarea h3 {
    margin-bottom: 35px;
}
.linkarea h3 b {
    display: block;
    font-size: 30px;
    line-height: 1.62;
    padding-bottom: 0;
    position: relative;
}
.linkarea h3 b::after {
    content: '';
    width: 100%;
    height: 1px;
    background-color: #242424;
    position: absolute;
    left: 0;
    top: 48px;
}
.linkarea h3 b i {
    display: none;
}
.linkarea h3 span {
    font-size: 24px;
    line-height: 1.5;
}
.linkarea .pnav .btnst li {
    margin: 0 0 14px;
}
}


/* location
------------------------------------------------- */
.location {
    padding: 95px 0;
}
.location .headline1 {
    margin-bottom: 35px;
}
.location .headline1 img {
    width: 245px;
}
.location .sec .con {
    width: 610px;
}
.location .sec .con p {
    font-size: 16px;
    line-height: 2;
}
.location .sec .con ul.note {
    font-size: 14px;
    line-height: 1.5;
    padding-top: 40px;
}
.location .sec .con ul.note li {
    padding-left: 2em;
    text-indent: -2em;
    margin-bottom: 5px;
}
.location .sec .con ul.note li:nth-child(1)::before {
    content: '※1';
    padding-right: 0.5em;
}
.location .sec .con ul.note li:nth-child(2)::before {
    content: '※2';
    padding-right: 0.5em;
}
.location .map {
    padding: 75px 0;
}
.location .map .swipe,
.location .map .swipe-bg {
    display: none;
}  
.location .box1 {
    padding-bottom: 75px;
}
.location .box1 .photo li {
    width: 360px;
    margin-right: 40px;
}
.location .box1 .photo li:nth-child(3n) {
    margin-right: 0;
}
.location .box1 .photo li span {
    display: block;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
    padding-top: 10px;
}
.location .box1 h6 {
    font-size: 18px;
    font-weight: 700;
    padding: 40px 0 15px;
}
.location .box1 .box2 {
    background-color: #F0EED8;
    border-radius: 8px;
    padding: 35px 60px 10px;
    box-sizing: border-box;
}
.location .box1 .box2 ul li {
    width: 32%;
    margin: 0 2% 23px 0;
    font-size: 16px;
    line-height: 1.5;
    color: #644F2D;
}
.location .box1 .box2 ul li:nth-child(3n-1) {
    width: 34%;
}
.location .box1 .box2 ul li:nth-child(3n) {
    width: 30%;
    margin-right: 0;
}
.location .box1 .box2 ul li span {
    display: block;
    font-weight: 700;
}
.location ul.note2 {
    font-size: 14px;
    line-height: 1.5;
}
.location ul.note2 li {
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 5px;
}
.location ul.note2 li::before {
    content: '※';
}
@media screen and (max-width:767px){
.location {
    padding: 40px 0 60px;
}
.location .headline1 {
    margin-bottom: 30px;
}
.location .headline1 img {
    width: 147px;
}
.location .sec .con {
    width: 100%;
}
.location .sec .con p {
    font-size: 14px;
    line-height: 1.7;
}
.location .sec .con ul.note {
    font-size: 12px;
    padding-top: 30px;
}
.location .sec .con ul.note li {
    margin-bottom: 0;
}
.location .map {
    width: 100vw;
    padding: 40px 0 0;
    overflow-x: auto;
    position: relative;
}
.location .map img {
    width: 261.6vw;
    max-width: inherit;
}
.location .map .swipe {
    display: block;
    width: 43.2vw;
    height: 43.2vw;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -21.6vw 0 0 -21.6vw;
    z-index: 2;
    overflow: hidden;
}  
.location .map .swipe img {
    width: 29.866vw;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -12.133vw 0 0 -14.933vw;
    z-index: 2;
    animation: swipe 1s ease-in-out infinite;
}      
.location .map .swipe-bg {
    display: block;
    width: 43.2vw;
    height: 43.2vw;
    border-radius: 50%;
    background-color: #767676;
    mix-blend-mode: multiply;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -21.6vw 0 0 -21.6vw;
    z-index: 1;
}
.location .map.isAnimate .swipe,
.location .map.isAnimate .swipe-bg {
    animation: fadeOut 0.5s ease 2.5s 1 forwards;
}
.location .note3 {
    width: 92%;
    font-size: 12px;
    margin: 10px auto 40px;
}
.location .box1 {
    padding-bottom: 50px;
}
.location .box1 .photo li {
    width: 100%;
    margin: 0 0 15px;
}
.location .box1 .photo li span {
    font-size: 12px;
    padding-top: 5px;
}
.location .box1 h6 {
    font-size: 16px;
    padding: 15px 0 10px;
}
.location .box1 .box2 {
    padding: 22px 28px 10px;
}
.location .box1 .box2 ul li {
    width: 100%;
    margin: 0 0 12px;
    font-size: 14px;
}
.location .box1 .box2 ul li:nth-child(3n-1),
.location .box1 .box2 ul li:nth-child(3n) {
    width: 100%;
}
.location .box1 .box2 ul li {
    width: 100%;
    margin: 0 0 12px;
    font-size: 14px;
}
.location ul.note2 {
    font-size: 12px;
}
.location ul.note2 li {
    margin-bottom: 0;
}
}
@keyframes swipe {
    0% {
        transform: translateX(20px);
    }
    50% {
        transform: translateX(-20px);
    }
    100% {
        transform: translateX(20px);
    }
}
@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

/* sekisui
------------------------------------------------- */
.sekisui {
    background-color: #D5E2D5;
    padding: 95px 0;
}
.sekisui .headline1 {
    margin-bottom: 35px;
}
.sekisui .headline1 img {
    width: 727px;
}
.sekisui .sec .headline2 {
    width: 510px;
}
.sekisui .sec .con {
    width: 610px;
}
.sekisui .sec .con p {
    font-size: 16px;
    line-height: 2;
}
.sekisui .seki_ttl {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    margin-top: 55px;
}
.sekisui .list {
    width: 784px;
    background: url("../img/sekisui_bg.png") center top no-repeat;
    background-size: 100% auto;
    margin: 20px auto 60px;
}
.sekisui .list li {
    width: 286px;
    height: 288px;
    font-weight: 700;
    color: #644F2D;
    text-align: center;
}
.sekisui .list li:nth-child(2) {
    width: 212px;
}
.sekisui .list li h4 {
    font-size: 34px;
    padding: 85px 0 20px;
}
.sekisui .list li:nth-child(1) h4 {
    padding: 85px 0 35px;
}
.sekisui .list li p {
    font-size: 18px;
    line-height: 1.7;
}
.sekisui h5.headline2 {
    text-align: center;
}
.sekisui .txt {
    width: 730px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 2;
    text-align: center;
}
.sekisui .link {
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
    padding-top: 28px;
}
.sekisui .link::before {
    content: '※';
}
.sekisui .link a {
    color: #242424;
    text-decoration: underline;
}
.sekisui .note {
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
    padding: 10px 0 70px;
}
.sekisui .note::before {
    content: '※';
}
.sekisui .wbox {
    background-color: #fff;
    border-radius: 16px;
    padding: 80px 100px;
}
.sekisui .wbox .con {
    width: 460px;
}
.sekisui .wbox .con p {
    font-size: 16px;
    line-height: 2;
    padding-bottom: 33px;
}
.sekisui .wbox .con ul li {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    margin-bottom: 10px;
    padding-left: 20px;
    position: relative;
}
.sekisui .wbox .con ul li::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #2C6143;
    position: absolute;
    left: 0;
    top: 11px;
}
.sekisui .wbox .con ul li:last-child {
    padding-left: 0;
}
.sekisui .wbox .con ul li:last-child::before {
    display: none;
}
.sekisui .wbox .con ul li ul {
    margin-top: 5px;
}
.sekisui .wbox .con ul li ul li {
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
    margin-bottom: 0;
    padding-left: 0;
}
.sekisui .wbox .con ul li ul li::before {
    display: none;
}
.sekisui .wbox .photo {
    width: 403px;
}
@media screen and (min-width:768px){
.sekisui .link a:hover {
    text-decoration: none;
}
}
@media screen and (max-width:767px){
.sekisui {
    padding: 40px 0;
}
.sekisui .headline1 img {
    width: 312px;
}
.sekisui .sec .headline2 {
    width: 100%;
}
.sekisui .sec .con {
    width: 100%;
}
.sekisui .sec .con p {
    font-size: 14px;
    line-height: 1.57;
}
.sekisui .seki_ttl {
    font-size: 14px;
    margin-top: 55px;
}
.sekisui .list {
    width: 100%;
    background-image: url("../img/sekisui_bg_sp.png");
    margin: 15px auto 35px;
    display: flex;
    flex-wrap: wrap;
}
.sekisui .list li {
    width: 49.86vw;
    height: 49.86vw;
    margin: 0 20vw;
}
.sekisui .list li:nth-child(2),
.sekisui .list li:nth-child(3) {
    width: 26.66vw;
    margin: -15.5vw 9vw 0;
}
.sekisui .list li h4 {
    font-size: 6.4vw;
    padding: 14vw 0 2.5vw;
}
.sekisui .list li:nth-child(1) h4 {
    padding: 14vw 0 2.5vw;
}
.sekisui .list li p {
    font-size: 3.733vw;
}
.sekisui .txt {
    width: 100%;
    font-size: 14px;
    line-height: 1.7;
}
.sekisui .link {
    font-size: 12px;
    padding-top: 28px;
}
.sekisui .note {
    font-size: 12px;
    padding: 12px 0 35px;
}
.sekisui .wbox {
    padding: 35px 25px 40px;
}
.sekisui .wbox .con {
    width: 100%;
}
.sekisui .wbox .con p {
    font-size: 14px;
    line-height: 1.7;
    padding-bottom: 30px;
}
.sekisui .wbox .con ul li {
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 5px;
    padding-left: 18px;
}
.sekisui .wbox .con ul li::before {
    width: 6px;
    height: 6px;
    top: 10px;
}
.sekisui .wbox .con ul li ul {
    margin-top: 5px;
}
.sekisui .wbox .con ul li ul li {
    font-size: 14px;
    line-height: 1.7;
}
.sekisui .wbox .con ul li ul li::before {
    display: none;
}
.sekisui .wbox .photo {
    width: 100%;
    margin-top: 25px;
}
}


/* keiyo
------------------------------------------------- */
.keiyo {
    padding: 90px 0 60px;
    text-align: center;
}
.keiyo .headline2 span {
    display: block;
    font-size: 18px;
    font-weight: 700;
    padding-bottom: 15px;
}
.keiyo ul li {
    width: 560px;
    height: 316px;
    margin-bottom: 35px;
    border-radius: 8px;
    overflow: hidden;
}
.keiyo ul li a {
    width: 100%;
    height: 100%;
    font-weight: 700;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    text-decoration: none;
}
.keiyo ul li a::after {
    content: '';
    width: 38px;
    height: 38px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2238%22%20height%3D%2238%22%20viewBox%3D%220%200%2038%2038%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_249%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20249%22%20transform%3D%22translate(-617%20-11663)%22%3E%20%3Ccircle%20id%3D%22%E6%A5%95%E5%86%86%E5%BD%A2_23%22%20data-name%3D%22%E6%A5%95%E5%86%86%E5%BD%A2%2023%22%20cx%3D%2219%22%20cy%3D%2219%22%20r%3D%2219%22%20transform%3D%22translate(617%2011663)%22%20fill%3D%22%23d8d8d8%22%2F%3E%20%3Cpath%20id%3D%22Icon_ionic-ios-arrow-down%22%20data-name%3D%22Icon%20ionic-ios-arrow-down%22%20d%3D%22M13%2C16.686l5.15-5.154a.969.969%2C0%2C0%2C1%2C1.375%2C0%2C.982.982%2C0%2C0%2C1%2C0%2C1.379L13.689%2C18.75a.972.972%2C0%2C0%2C1-1.342.028L6.471%2C12.915a.973.973%2C0%2C0%2C1%2C1.375-1.379Z%22%20transform%3D%22translate(620.966%2011694.808)%20rotate(-90)%22%20fill%3D%22%23242424%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') center center no-repeat;
    background-size: 100% auto;
    position: absolute;
    right: 20px;
    bottom: 20px;
}
.keiyo ul li a .con {
    position: relative;
    z-index: 2;
}
.keiyo ul li:nth-child(2) a .con {
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2238%22%20height%3D%2227.636%22%20viewBox%3D%220%200%2038%2027.636%22%3E%20%3Cpath%20id%3D%22import_contacts_24dp_E8EAED_FILL0_wght400_GRAD0_opsz24%22%20d%3D%22M49.5-779.273a17.142%2C17.142%2C0%2C0%2C1%2C3.951.453%2C18.976%2C18.976%2C0%2C0%2C1%2C3.822%2C1.36v-17.014a14.789%2C14.789%2C0%2C0%2C0-3.757-1.554%2C15.841%2C15.841%2C0%2C0%2C0-4.016-.518%2C15.921%2C15.921%2C0%2C0%2C0-3.087.3%2C14.957%2C14.957%2C0%2C0%2C0-2.958.907v17.1a19.608%2C19.608%2C0%2C0%2C1%2C3-.777A17.723%2C17.723%2C0%2C0%2C1%2C49.5-779.273Zm11.227%2C1.814a18.975%2C18.975%2C0%2C0%2C1%2C3.822-1.36%2C17.142%2C17.142%2C0%2C0%2C1%2C3.951-.453%2C17.723%2C17.723%2C0%2C0%2C1%2C3.044.259%2C19.608%2C19.608%2C0%2C0%2C1%2C3%2C.777v-17.1a14.957%2C14.957%2C0%2C0%2C0-2.958-.907%2C15.921%2C15.921%2C0%2C0%2C0-3.088-.3%2C15.841%2C15.841%2C0%2C0%2C0-4.016.518%2C14.789%2C14.789%2C0%2C0%2C0-3.757%2C1.554ZM59-772.364a16.572%2C16.572%2C0%2C0%2C0-4.491-2.548%2C14.15%2C14.15%2C0%2C0%2C0-5.009-.907%2C13.538%2C13.538%2C0%2C0%2C0-3.562.475A15.627%2C15.627%2C0%2C0%2C0%2C42.591-774a1.663%2C1.663%2C0%2C0%2C1-1.749-.043A1.669%2C1.669%2C0%2C0%2C1%2C40-775.559v-20.814a1.855%2C1.855%2C0%2C0%2C1%2C.238-.907%2C1.491%2C1.491%2C0%2C0%2C1%2C.713-.648%2C18.023%2C18.023%2C0%2C0%2C1%2C4.145-1.554A18.807%2C18.807%2C0%2C0%2C1%2C49.5-800a18.7%2C18.7%2C0%2C0%2C1%2C4.9.648%2C18.614%2C18.614%2C0%2C0%2C1%2C4.6%2C1.943%2C18.614%2C18.614%2C0%2C0%2C1%2C4.6-1.943A18.7%2C18.7%2C0%2C0%2C1%2C68.5-800a18.807%2C18.807%2C0%2C0%2C1%2C4.4.518%2C18.023%2C18.023%2C0%2C0%2C1%2C4.145%2C1.554%2C1.491%2C1.491%2C0%2C0%2C1%2C.712.648%2C1.855%2C1.855%2C0%2C0%2C1%2C.237.907v20.814a1.669%2C1.669%2C0%2C0%2C1-.842%2C1.511%2C1.663%2C1.663%2C0%2C0%2C1-1.749.043%2C15.628%2C15.628%2C0%2C0%2C0-3.347-1.339%2C13.538%2C13.538%2C0%2C0%2C0-3.562-.475%2C14.15%2C14.15%2C0%2C0%2C0-5.009.907A16.573%2C16.573%2C0%2C0%2C0%2C59-772.364ZM50.364-786.786Z%22%20transform%3D%22translate(-40%20800)%22%20fill%3D%22%23242424%22%2F%3E%3C%2Fsvg%3E') center top no-repeat;
    background-size: 38px auto;
    padding-top: 40px;
}
.keiyo ul li a .con p {
    font-size: 18px;
    display: inline-block;
    padding: 0 17px;
    margin-bottom: 24px;
}
.keiyo ul li:nth-child(2) a .con p {
    padding: 0;
    margin-bottom: 15px;
}
.keiyo ul li a .con p::before,
.keiyo ul li a .con p::after {
    content: '';
    width: 6px;
    height: 18px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%226.503%22%20height%3D%2216.739%22%20viewBox%3D%220%200%206.503%2016.739%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_5886%22%20data-name%3D%22%E3%83%91%E3%82%B9%205886%22%20d%3D%22M823.781%2C881.617%2C818.225%2C865.2%22%20transform%3D%22translate(-817.751%20-865.039)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E') left center no-repeat;
    background-size: auto 100%;
    position: absolute;
    left: 0;
    top: 0;
}
.keiyo ul li a .con p::after {
    transform: scale(-1, 1);
    left: auto;
    right: 0;
}
.keiyo ul li:nth-child(2) a .con p::before,
.keiyo ul li:nth-child(2) a .con p::after {
    display: none;
}
.keiyo ul li a .con h5 {
    font-size: 40px;
}
.keiyo ul li a .photo {
    position: absolute;
    left: 0;
    top: 0;
    transition: 0.4s;
}
.keiyo ul li:nth-child(2) {
    border: 1px solid #D8D8D8;
    box-sizing: border-box;
}
.keiyo ul li:nth-child(2) a {
    color: #242424;
}
.keiyo .box {
    text-align: center;
    font-weight: 700;
    padding: 60px 0 20px;
}
.keiyo .box h5 {
    font-size: 28px;
    padding-bottom: 40px;
}
.keiyo .box h5 span {
    display: inline-block;
    font-size: 18px;
    padding: 0 17px 15px;
    position: relative;
}
.keiyo .box h5 span::before,
.keiyo .box h5 span::after {
    content: '';
    width: 6px;
    height: 18px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%226.503%22%20height%3D%2216.739%22%20viewBox%3D%220%200%206.503%2016.739%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_5886%22%20data-name%3D%22%E3%83%91%E3%82%B9%205886%22%20d%3D%22M823.781%2C881.617%2C818.225%2C865.2%22%20transform%3D%22translate(-817.751%20-865.039)%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E') left center no-repeat;
    background-size: auto 100%;
    position: absolute;
    left: 0;
    top: 0;
}
.keiyo .box h5 span::after {
    transform: scale(-1, 1);
    left: auto;
    right: 0;
}
.keiyo .box h6 {
    font-size: 18px;
    padding-bottom: 10px;
}
.keiyo .box .tel {
    font-size: 26px;
}
.keiyo .box .tel a {
    font-size: 40px;
    pointer-events: none;
    color: #242424;
    text-decoration: none;
}
.keiyo .box .txt {
    font-size: 15px;
    line-height: 1.733;
    padding-top: 30px;
}
@media screen and (min-width:768px){
.keiyo ul li a:hover .photo {
    transform: scale(1.05);
}
.keiyo ul li:nth-child(2) a:hover {
    opacity: 0.7;
}
}
@media screen and (max-width:767px){
.keiyo {
    padding: 60px 0 30px;
}
.keiyo .headline2 span {
    font-size: 16px;
    line-height: 1.5;
    padding-bottom: 25px;
}
.keiyo ul li {
    width: 100%;
    max-width: 600px;
    height: 56.42vw;
    margin: 0 auto 20px;
}
.keiyo ul li a::after {
    width: 30px;
    height: 30px;
    right: 15px;
    bottom: 15px;
}
.keiyo ul li a .con p {
    font-size: 16px;
    padding: 0 16px;
    margin-bottom: 12px;
}
.keiyo ul li a .con p::before,
.keiyo ul li a .con p::after {
    height: 16px;
}
.keiyo ul li a .con h5 {
    font-size: 35px;
}
.keiyo ul li a .photo {
    width: 100%;
    height: 100%;
}
.keiyo ul li a .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.keiyo ul li a h6 {
    font-size: 24px;
}
.keiyo ul li a h6 span {
    font-size: 14px;
    line-height: 1.428;
    padding-bottom: 10px;
}
.keiyo ul li:nth-child(4) a h6 span {
    padding: 10px 0 0;
}
.keiyo ul li a h6 span i {
    display: none;
}
.keiyo ul li:nth-child(3) {
    height: 120px;
}
.keiyo ul li:nth-child(3) a::after {
    top: auto;
    bottom: 15px;
    margin-top: 0;
}
.keiyo .box {
    padding: 40px 0 20px;
}
.keiyo .box h5 {
    font-size: 24px;
    padding-bottom: 25px;
}
.keiyo .box h5 span {
    font-size: 16px;
    padding: 0 16px 12px;
}
.keiyo .box h5 span::before,
.keiyo .box h5 span::after {
    height: 16px;
}
.keiyo .box h6 {
    font-size: 16px;
}
.keiyo .box .tel {
    font-size: 20px;
}
.keiyo .box .tel a {
    font-size: 30px;
    pointer-events: auto;
}
.keiyo .box .txt {
    font-size: 12px;
    padding-top: 20px;
}
}