@charset "UTF-8";
@import "fonts.css";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
*{
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
     min-width: 0;
    min-height: 0;
}
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    font-size: 62.5%;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}
nav ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align: baseline;
    background:transparent;
    text-decoration: none;
    cursor: pointer;
}
body{
    font:25px/1.75 "kozuka-gothic-pr6n","游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;    
    word-break: break-word;
}

/*remove highlight color touch on mobile*/
input,textarea,button,select,div,a,span {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}
a, input, div, select, textarea, img, button {
    outline: none;
}
a:focus, a:visited, input:focus, select:focus, textarea:focus, button:focus {
    outline: none !important;
    box-shadow: none;
}
ol, ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
li{
    list-style: none;
}
/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
button {
    font-family: inherit;
    cursor: pointer;
}
img {
    width /***/: auto;
    height: auto;
    border: none;
    vertical-align: bottom;
    max-width: 100%;
    image-rendering: -webkit-optimize-contrast;
}
a {text-decoration: none;
    cursor: pointer;
}
.hover:hover{
    transition: all .3s;
    opacity: 0.7;
    filter:alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}
.container {
    margin: 0 auto;
    max-width: 1206px;
    position: relative;
    z-index: 10;
    padding-left: 20px;
    padding-right: 20px;
}
.anchor-link{
    position: relative;
    /* top: -130px; */
    top: 0;
    display: block;
    line-height: 0;
}
.wrapper{
    position: relative;
    z-index: 1;
}
.text-left{
    text-align: left;
}
.text-center{
    text-align: center;
}
.text-right{
    text-align: right;
}
.d-block{
    display: block;
}
.hdn{
    display: none !important;
}
.no-cursor{
    cursor: auto !important;
}
.hdn-scroll{
    overflow: hidden;
}
b, strong{
    font-weight: 700;
}
.cl1{
    color: #2778b0;
}
@media(max-width: 768px){
    .anchor-link{
        /* top: -50px; */
        top: 0;
    }
}
@media(max-width: 750px){
    .container {
        padding-left: 15px;
        padding-right: 15px;
    }
}
/*
==============================================================
=========================== pagetop ==========================
==============================================================
*/
#pagetop {
    width: 47px;
    height: 47px;
    bottom: 20px;
    right: 20px;
    position: fixed;
    z-index: 900;
    cursor: pointer;
    z-index: 1000;
    display: none;
    transition: .3s;
    background: #2778b0;
    border-radius: 50%;
}
#pagetop::after{
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(45deg);
    left: 50%;
    top: 50%;
    margin-left: -6px;
    margin-top: -3px;
    transition: .2s;
}
@media(hover:hover){
    #pagetop:hover::after {
        top: 40%;
    }
}
@media(hover:none){
    #pagetop:active::after {
        top: 40%;
    }
}
@media(max-width:750px){
    #pagetop {
        width: 40px;
        height: 40px;
        bottom: 45px;
        right: 10px;
    }
    #pagetop::after{
        width: 8px;
        height: 8px;
        margin-left: -4px;
        margin-top: -2px;
    }
}
/*
==============================================================
========================= End pagetop ========================
==============================================================
*/
/*
==============================================================
========================== Animation =========================
==============================================================
*/
@-webkit-keyframes aniHeaderMenu {
    0% {-webkit-transform: translate3d(0, -80%, 0);transform: translate3d(0, -80%, 0);}
    100% {-webkit-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
}
@keyframes aniHeaderMenu {0% {-webkit-transform: translate3d(0, -80%, 0);transform: translate3d(0, -80%, 0);}
100% {-webkit-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
}
@-webkit-keyframes backgroundIMG{
0% {opacity: 0;}
20% {opacity: 0.2;}
40% {opacity: 0.4;}
60% {opacity: 0.6;}
80% {opacity: 0.8;}
100% {opacity: 1; }
}
@keyframes backgroundIMG {
0% {opacity: 0;}
20% {opacity: 0.2;}
40% {opacity: 0.4;}
60% {opacity: 0.6;}
80% {opacity: 0.8;}
100% {opacity: 1;}
}
.fade-in {
opacity: 0;
filter: blur(4px) brightness(105%);
transition: opacity 2s ease, filter 2s ease;
}
.fade-in.is-view {
opacity: 1;
filter: blur(0) brightness(100%);
}
.fade-up {
opacity: 0;
transform: translateY(60px);
-webkit-transform: translateY(60px);
filter: blur(4px) brightness(105%);
transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}
.fade-up.is-view {
opacity: 1;
transform: translateY(0);
-webkit-transform: translateY(0);
filter: blur(0) brightness(100%);
}
.fade-down {
opacity: 0;
transform: translateY(-40px);
-webkit-transform: translateY(-40px);
filter: blur(5px) brightness(105%);
transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}
.fade-down.is-view {
opacity: 1;
transform: translateY(0);
-webkit-transform: translateY(0);
filter: blur(0) brightness(100%);
}
.fade-left {
opacity: 0;
transform: translateX(-40px);
-webkit-transform: translateX(-40px);
filter: blur(5px) brightness(105%);
transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}
.fade-left.is-view {
opacity: 1;
transform: translateY(0);
-webkit-transform: translateY(0);
filter: blur(0) brightness(100%);
}
.fade-right {
opacity: 0;
transform: translateX(40px);
-webkit-transform: translateX(40px);
filter: blur(5px) brightness(105%);
transition: opacity 1.5s ease, transform 1.5s ease, filter 1.5s ease;
}
.fade-right.is-view {
opacity: 1;
transform: translateY(0);
-webkit-transform: translateY(0);
filter: blur(0) brightness(100%);
}
.zoom-in {
opacity: 0;
overflow: hidden;
transform: scale(0.7, 0.7);
-webkit-transform: scale(0.7, 0.7);
transition: opacity 1.5s ease, transform 1.5s ease;
}
.zoom-in.is-view {
opacity: 1;
transform: scale(1, 1);
-webkit-transform: scale(1, 1);
}
.zoom-out {
opacity: 0;
overflow: hidden;
transform: scale(1.2, 1.2);
-webkit-transform: scale(1.2, 1.2);
transition: opacity 1.5s ease, transform 1.5s ease;
}
.zoom-out.is-view {
opacity: 1;
transform: scale(1, 1);
-webkit-transform: scale(1, 1);
}
.roll-left {
position: relative;
overflow: hidden;
}
.roll-left img {
opacity: 0;
transition: opacity 1.5s ease .5s;
}
.roll-left:after {
content: '';
position: absolute;
top: 0;
bottom: 0;background: #f0ebe4;
}
.roll-left.is-view img {
    opacity: 1;
}
.roll-left.is-view:after {
    animation: rollLeft 1.5s ease;
}
@keyframes rollLeft {
    0% {
        left: 0;
        right: 100%;
    }
    50% {
        left: 0;
        right: 0;
    }
    100% {
        left: 100%;
        right: 0;
    }
}
@-webkit-keyframes rollLeft {
    0% {
        left: 0;
        right: 100%;
    }
    50% {
        left: 0;
        right: 0;
    }
    100% {
        left: 100%;
        right: 0;
    }
}
.roll-right {
    position: relative;
    overflow: hidden;
}
.roll-right img {
    opacity: 0;
    transition: opacity 1.5s ease .5s;
}
.roll-right:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    background: #3a6531;
}
.roll-right.is-view img {
    opacity: 1;
}
.roll-right.is-view:after {
    animation: rollRight 1.5s ease;
}
@keyframes rollRight {
    0% {
        right: 0;
        left: 100%;
    }
    50% {
        right: 0;
        left: 0;
    }
    100% {
        right: 100%;
        left: 0;
    }
}
@-webkit-keyframes rollRight {
    0% {
        right: 0;
        left: 100%;
    }
    50% {
        right: 0;
        left: 0;
    }
    100% {
        right: 100%;
        left: 0;
    }
}
@media (min-width: 768px) {
    .delay1 {
        transition-delay: .4s;
    }
    .delay2 {
        transition-delay: .6s;
    }
    .delay3 {
        transition-delay: .8s;
    }
    .delay4 {
        transition-delay: 1.2s;
    }
}
/*
==============================================================
========================= End Animation ======================
==============================================================
*/
/*
==============================================================
======================= hamburger menu =======================
==============================================================
*/
.hamburger-menu {
    position: absolute;
    right: 0px;
    top: 0;
    width: 50px;
    height: 50px;
    margin-top: 0;
    cursor: pointer;
    z-index: 10001;
    display: none;
    background: #2778b0;
}
.hamburger-menu .bar,
.hamburger-menu .bar:after,
.hamburger-menu .bar:before {
    width: 20px;
    height: 2px;
}
.hamburger-menu .bar {
    position: relative;
    transform: translateY(24px);
    background: #fff;
    transition: all 0ms 300ms;
    display: block;
    left: 50%;
    margin-left: -10px;
}
.hamburger-menu .bar.active {
    background: rgba(255, 255, 255, 0); 
}
.hamburger-menu .bar:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 5px;
    background: #fff; 
    transition: bottom 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
.hamburger-menu .bar:after {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    background: #fff; 
    transition: top 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
.hamburger-menu .bar.active:after {
    top: 0px;
    transform: rotate(45deg);
    transition: top 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);;
}
.hamburger-menu .bar.active:before {
    bottom: 0px;
    transform: rotate(-45deg);
    transition: bottom 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);;
}
@media(hover:hover){
    header nav > ul > li a:hover{
        opacity: .7;;
    }
}
@media(hover:none){
    header nav > ul > li a:active{
        opacity: .7;
    }
}
@media(max-width: 860px){
    .hamburger-menu{
        display: block;
    }
}
@media(max-width: 1024px){
    header nav > ul > li{
        padding-left: 3px;
        padding-right: 3px;
    }
}
/*
==============================================================
====================== End hamburger menu ====================
==============================================================
*/
/*
==============================================================
============================ Common ==========================
==============================================================
*/
.lb-sp{
    display: none;
}
.lb-pc{
    display: block;
}
.lb-sm{
    display: none !important;
}
.pc_only {
    display: block;
}
.bg1 {
    background: #F9F2F4;
    position: relative;
}
.bg1::before, 
.bg1::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 30px;
}
.bg1::before {
    top: -15px;
}
.bg1::after {
    bottom: -15px;
}
@media(max-width:750px){
    .lb-sp{
        display: block;
    }
    .lb-pc{
        display: none;
    }
    .pc_only {
        display: none;
    }
}
/*
==============================================================
========================== End common ========================
==============================================================
*/

/*
==============================================================
============================ Footer ==========================
==============================================================
*/
/* ==============================================================
============================ Footer ============================
============================================================== */

footer .footer-links {
    background-color: #620127;
    padding-top: 25px;
    padding-bottom: 30px;
}
footer .footer-container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 15px;
}
footer .inner-container {
    display: flex;
    padding-bottom: 45px;
}
footer .footer-links .link {
    display: flex;
    border: 1px solid #fff;
    width: calc(100% / 3);
    flex-shrink: 0;
    align-items: center;
    padding: 9px 12px;
    transition: 0.3s;
}
footer .footer-links .link:not(:first-child) {
    border-left: none;
}
footer .footer-links .link img {
    width: 50px;
    height: 50px;
    margin-right: 15px;
}
footer .footer-links .link.fm1{
    pointer-events: none
}
footer .footer-link-text {
    color: #fff;
    font-weight: bold;
    font-size: 17.3px;
    line-height: 1.41;
    padding-top: 2px;
    transition: 0.3s;
}
footer .phone {
    width: 231px;
    height: 21px;
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('images/img/f_tel_off.png');
    transition: 0.3s;
}
footer .footer-navi {
    display: flex;
    justify-content: space-between;
    padding: 0 30px 35px;
}
footer .nav-list li a{
    display: block;
}
footer .nav-list li.first{
    margin-bottom: 15px;
}
footer .nav-list > li > a {
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    transition: 0.3s;
}
footer .nav-list ul > li > a {
    color: #ebd2da;
    font-size: 1.2rem;
    transition: 0.3s;
}
footer .footer-navi2 > .footer-inner {
    display: flex;
    justify-content: center;
    text-align: center;
    line-height: 1;
}
footer .footer-inner li + li {
    margin-left: 15px;
}
footer .footer-inner li a {
    color: #fff;
    font-size: 1.2rem;
    transition: 0.3s;
}
footer .footer-info {
    padding: 30px 0;
    font-size: 1.2rem;
}
footer .inner-content {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
footer .footer-logo-info {
    text-align: center;
}
footer .footer-logo img {
    width: 269px;
    height: 41px;
    margin-bottom: 7px;
}
footer .footer-logo-info p {
    font-size: 1.2rem;
    text-align: center;
}
footer .info img {
    width: 280px;
    height: 25px;
    margin-left: 15px;
}
footer .info {
    margin-left: 14px;
}
footer .info p:first-child{
    margin-left: 0;
}
footer .info p {
    font-size: 1.2rem;
    margin-left: 10px;
}
footer small {
    margin-top: 35px;
    text-align: center;
    display: block;
}
.footer_nav{
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 100;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    display: none;
}
.footer_nav a{
    width: 50%;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    color: #FFF;
    font-size: 1.2rem;
    line-height: 1.2;
    height: 50px;
    background: #2778b0;
    border: 1px solid #fff;
    transition: .3s;
}
/*.footer_nav a:last-child{
    width: 100%;
    border-bottom: unset;
}*/
.footer_nav a.is-active {
    background: #620127;
}
footer .footer-info .phone {
    width: unset;
    height: unset;
}
@media(hover:hover){
    footer .footer-info .phone:hover {
        opacity: .7;
    }
    .footer_nav a:hover {
        background: #620127;
    }
}
@media(hover:none){
    footer .footer-info .phone:active {
        opacity: .7;
    }
    .footer_nav a:active {
        background: #2778b0;
    }
}
@media (max-width: 1024px) {
    footer .phone {
        width: 165px;
    }
    footer .footer-link-text {
        font-size: 1.5rem;
    }
}
@media (max-width: 860px) {
    footer .phone {
        width: 140px;
    }
    footer .footer-link-text {
        font-size: 1.3rem;
    }
}
@media all and (min-width: 681px) {
    footer .footer-links .link:hover {
        background-color: #fff;
    }
    footer .footer-links .link:hover .footer-link-text {
        color: #620127;
    }
    footer .nav-list a:hover {
        color: #af90a1;
    }
    footer .footer-inner a:hover {
        color: #af90a1;
    }
}
@media all and (max-width: 768px) {
    footer{
        padding-bottom: 20px;
    }
    footer .footer-info {
        padding-top: 20px !important;
    }
    footer .footer-links {
        padding-top: 40px;
    }
    footer .inner-container {
        display: block;
        padding-bottom: 0;
    }
    footer .footer-links .link {
        width: 100%;
        padding: 9px 12px;
        margin: 0 auto;
    }
    footer .footer-navi2 > .footer-inner {
        line-height: 1.8;
    }
    footer .footer-navi {
        padding-top: 15px;
        padding-bottom: 0;
        background-color: #620127;
        flex-wrap: wrap;
        justify-content: flex-start;
/*        margin-left: -10px;
        margin-right: -10px;*/
        padding-left: 15px;
        padding-right: 15px;
    }
    footer .inner-content {
        display: block;
    }
    footer .info {
        margin-top: 23px;
        margin-left: 0;
        text-align: center;
    }
    footer .footer-info .info img {
        width: 264px;
        height: 23px;
        margin-left: 0
    }
    footer .footer-info .info .phone {
        padding: 10px 0;
        height: unset !important;
        width: 100% !important;
    }
    footer small {
        margin-top: 5px;
        font-size: 1.2rem;
    }
    footer .footer-links .link {
        border: unset;
    }
    footer .footer-links .link {
        border-top: 1px solid #fff;
        border-left: 1px solid #fff !important;
        border-right: 1px solid #fff;
    }
    footer .footer-links .link:last-child {
        border-bottom: 1px solid #fff;
    }
    footer ul{
        display: inline-block;
        width: 100%;
    }
    footer .nav-list {
        width: 33.33%;
        margin-bottom: 20px;
        padding-left: 10px;
        padding-right: 10px;
    }
    footer .nav-list li{
    }
    footer .footer-info .info .phone  {
        text-align: center;
        width: 264px;
        height: 25px;
        margin-bottom:0;
        margin-left: 0;
        margin-top: 0;
    }
    footer .phone {
        width: 100%;
    }
    .footer_nav{
        display: flex !important;
    }
    footer .footer-info{
        padding: 0 15px;
    }
    footer .info p {
        line-height: 1.7;
    }
}
@media (max-width: 549px) {
    footer .nav-list{
        width: 100%;
        margin-bottom: 5px;
    }
    footer .nav-list li.first{
        margin-bottom: 10px;
    }
}
/*
==============================================================
========================= End footer =========================
==============================================================
*/

/*
==============================================================
============================ home ============================
==============================================================
*/
.home .mv .img-box{
    position: relative;
}
.home .mv img {
    width: 100%;
}
.home .mv .txt {
    position: absolute;
    top: -5px;
    left: 0;
    right: 0;
}
.home .mv .txt img{
    max-width: 185px;
    width: 100%;
}
.home .mv .txt-lg {
    text-align: center;
    background: #2778b0;
    color: #fff;
    line-height: 1.5;
    font-size: 2.5rem;
    padding-bottom: 5px;
    padding-top: 5px;
    position: relative;
}
.home .mv .txt-lg .inner::after {
    content: "";
    position: absolute;
    width: 405px;
    height: 261px;
    background: url(images/img/mv-txt-img.png) no-repeat;
    background-size: 100% !important;
    bottom: -5px;
    right: -15px;
    z-index: -1;
}
.home .mv .txt-lg .inner {
    display: flex;
    align-items: center;
    position: relative;
}
.home .mv .txt-lg .inner .desc {
    padding-left: 15px;
    font-size: 4.6rem;
}
.home .mv .txt-lg .inner .desc .sm {
    font-size: 2.5rem;
}
.home .mv .txt-lg .inner .date {
    font-size: 2.4rem;
    line-height: 1.1;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: #fff;
    color: #2778b0;
    letter-spacing: 0.04em;
    font-weight: 600;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.home .mv .txt-lg .inner .date span {
    display: block;
}
.home .mv .txt-lg .inner .date .y {
    font-size: 1.6rem;
}
.home .mv .txt-sm .lbl {
    font-size: 2.8rem;
    line-height: 1.25;
    width: 75px;
    height: 75px;
    display: flex;
    background: #ffff;
    color: #2778b0;
    justify-content: center;
    align-items: center;
}
.home .mv .txt-sm .desc {
    flex: 1;
    padding-left: 12px;
    line-height: 1.4;
}
.home .mv .txt-sm {
    background: #EDA136;
    color: #fff;
    font-size: 1.7rem;
    line-height: 1.3;
    letter-spacing: .14em;
    font-weight: 400;
    padding: 17px 0;
    letter-spacing: 0;
}
.home .mv .txt-sm .inner {
    display: flex;
}
@media(max-width:1366px){
    .home .mv .img-box .img img {
        width: 100%;
        height: 450px;
        object-fit: cover;
        object-position: center;
    }
}
@media(max-width:1100px){
    .home .mv .txt-sm {
        font-size: 1.8rem
    }
    .home .mv .txt-sm .lg {
        font-size: 2.8rem;
    }
}
@media(max-width:960px){
    .home .mv .txt-lg .inner::after {
        width: 300px;
        height: 193px;
        bottom: -5px;
        right: -15px;
        z-index: -1;
    }
    .home .mv .txt-lg .inner .desc {
        font-size: 3.2rem;
    }
    .home .mv .txt-lg .inner .desc .sm {
        font-size: 2rem;
    }
    .home .mv .txt-lg .inner .date {
        font-size: 2rem;
        width: 100px;
        height: 100px;
    }
    .home .mv .txt-lg .inner .date .y {
        font-size: 1.4rem;
    }
    .home .mv .txt-sm .lbl {
        font-size: 2.2rem;
        width: 60px;
        height: 60px;
    }
    .home .mv .txt-sm {
        font-size: 1.4rem;
    }
}
@media(max-width:750px){
    .home .mv .txt-sm{
        font-size: 1.4rem
    }
    .home .mv .txt-sm .lg {
        font-size: 2rem;
    }
    .home .mv .txt img {
        max-width: 125px;
    }
    .home .mv .img-box .img img {
        height: 480px;
    }
    .home .mv .txt-lg .inner::after {
        width: 200px;
        height: 128px;
    }
    .home .mv .txt-lg .inner .desc {
        font-size: 2.5rem;
    }
    .home .mv .txt-lg .inner .desc .sm {
        font-size: 1.8rem;
    }
    .home .mv .txt-lg .inner .date {
        font-size: 1.7rem;
        width: 80px;
        height: 80px;
        line-height: 1.3;
    }
    .home .mv .txt-lg .inner .date .y {
        font-size: 1.2rem;
    }
}
@media(max-width:480px){
    .home .mv .txt-sm {
        font-size: 1.2rem
    }
    .home .mv .txt-sm .lg {
        font-size: 1.6rem;
    }
    .home .mv .txt-lg .inner {
        flex-direction: column;
    }
    .home .mv .txt-lg .inner::after {
        width: 150px;
        height: 96px;
    }
    .home .mv .txt-lg .inner .desc {
        font-size: 2rem;
        padding-left: 0;
        padding-top: 5px;
    }
    .home .mv .txt-lg .inner .desc .sm {
        font-size: 1.6rem;
    }
    .home .mv .txt-lg {
        padding: 10px 0 10px;
    }
    .home .mv .txt-lg .inner::after {
        bottom: 107%;
    }
    .home .mv .txt-sm .desc {
        padding-left: 8px;
    }
}
@media(max-width:374px){
    .home .mv .txt-sm {
        font-size: 1.1rem
    }
}
/* concept =================================================== */
.home .concept .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    padding-top: 75px;
    font-weight: 500;
}
.home .concept .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
    font-family: "Gothic A1", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
    line-height: 1.1;
}
.home .concept .content .txt-box {
    font-size: 2.4rem;
    padding-top: 80px;
}
.home .concept .content .txt-box h3 {
    font-size: 4rem;
    line-height: 1.5;
    color: #2778b0;
    padding-bottom: 5px;
}
.home .concept .content .txt-box .lg {
    font-size: 3.2rem;
    line-height: 1.4;
    padding-bottom: 45px;
}
.home .concept .content {
    display: flex;
    flex-wrap: wrap;
    background: #FDF3E6;
    border-radius: 30px;
    padding: 100px 45px 70px 48px;
    margin-top: -85px;
}
.home .concept .content .img-box {
    width: 48%;
}
.home .concept .content .txt-box {
    width: 52%;
}
@media(max-width: 1100px){
    .home .concept .content .txt-box {
        font-size: 1.8rem;
        padding-top: 50px;
    }
    .home .concept .content .txt-box .lg {
        font-size: 2.5rem;
        padding-bottom: 30px;
    }
    .home .concept .content .txt-box h3 {
        font-size: 3rem;
    }
    .home .concept .ttl h2 {
        font-size: 5rem;
    }
    .home .concept .ttl {
        font-size: 2rem;
        padding-top: 60px;
    }
    .home .concept .content {
        border-radius: 30px;
        padding: 60px 25px 40px 25px;
        margin-top: -56px;
    }
}
@media(max-width: 960px) {
    .home .concept .content .txt-box h3 {
        font-size: 2.6rem;
    }
    .home .concept .ttl {
        font-size: 1.8rem;
    }
    .home .concept .content .txt-box {
        font-size: 1.6rem;
    }
    .home .concept .content .txt-box .lg {
        font-size: 2.2rem;
    }
}
@media(max-width:750px){
    .home .concept .content .txt-box,
    .home .concept .content .img-box {
        width: 100%;
    }
    .home .concept .content .txt-box {
        text-align: center;
        padding-top: 10px;
        padding-bottom: 25px;
    }
    .home .concept .content {
        border-radius: 15px;
        padding: 60px 20px 30px 20px;
        margin-top: -48px;
    }
    .home .concept .ttl {
        font-size: 1.8rem;
        padding-top: 40px;
    }
    .home .concept .ttl h2 {
        font-size: 4rem;
    }
}
@media(max-width:480px){
    .home .concept .content .txt-box h3 {
        font-size: 2.4rem;
    }
    .home .concept .content .txt-box .lg {
        font-size: 2rem;
    }
    .home .concept .content .txt-box {
        font-size: 1.4rem;
    }
}
@media (max-width: 374px) {
    .home .concept .content .txt-box h3 {
        font-size: 2rem;
    }
    .home .concept .content .txt-box .lg {
        font-size: 1.8rem;
    }
    .home .concept .content .txt-box {
        font-size: 1.2rem;
    }
    .home .concept .content {
        padding: 60px 15px 30px 15px;
    }
}
/* construction ============================================== */
.construction {
    padding-top: 110px;
}
.home .construction .txt-box {
    text-align: center;
    line-height: 1.5;
    position: relative;
}
.home .construction .txt-box .sub-tl {
    font-size: 2.8rem;
    letter-spacing: 0
}
.home .construction .txt-box h2 {
    color: #2778b0;
    font-size: 4.2rem;
    line-height: 1.25;
    letter-spacing: 0;
    padding-bottom: 10px;
}
.home .construction .txt-box h2 .lg {
    font-size: 7.7rem;
}
.home .construction .txt-box {
    font-size: 2.4rem;
    line-height: 2;
    letter-spacing: .05em;
    padding-top: 20px;
    padding-bottom: 30px;
}
.home .construction .txt-box::before,
.home .construction .txt-box::after {
    content: "";
    position: absolute;
}
.home .construction .txt-box::before {
    width: 270px;
    height: 320px;
    background: url(images/img/construction-1.png) no-repeat;
    background-size: 100% !important;
    top: 0;
    left: 0;
}
.home .construction .txt-box::after {
    width: 255px;
    height: 272px;
    background: url(images/img/construction-2.png) no-repeat;
    background-size: 100% !important;
    top: -15px;
    right: 0;
}
.home .construction .img img {
    width: 100%;
}
.home .construction .items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: -40px;
    letter-spacing: 0.04em;
}
.home .construction .items li {
    width: 25%;
    width: 260px;
    height: 260px;
}
.home .construction .items li .txt {
    background: #2778b0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #fff;
    height: 100%;
    width: 100%;
    font-size: 2.4rem;
    line-height: 1.5;
    text-align: center;
    border-radius: 50%;
    margin: 0 auto;
    font-weight: 500;
}
.home .construction .items li .lg {
    font-size: 3.6rem;
    font-weight: 500;
}
.home .construction .items li .sm {
    font-size: 1.8rem;
}
.home .construction .items li .no {
    font-size: 4rem;
    font-weight: 500;
    line-height: 1;
}
.home .construction .items li:nth-child(even){
    margin-top:72px ;
}
.home .construction .bottom-img {
    padding: 50px 0 110px;
}
@media(max-width:1100px){
    .home .construction .items li {
        width: 220px;
        height: 220px;
    }
    .home .construction .items li .lg {
        font-size: 3rem;
    }
    .home .construction .items li .no {
        font-size: 3.5rem;
    }
    .home .construction .items li .txt {
        font-size: 2rem;
    }
    .home .construction .items li .sm {
        font-size: 1.6rem;
    }
    .home .construction .txt-box::before,
    .home .construction .txt-box::after {
        z-index: -1;
    }
    .home .construction .txt-box::before {
        width: 180px;
        height: 214px;
    }
    .home .construction .txt-box::after {
        width: 120px;
        height: 128px;
    }
    .construction {
        padding-top: 80px;
    }
    .home .construction .txt-box .sub-tl {
        font-size: 2.2rem;
    }
    .home .construction .txt-box h2 {
        font-size: 3rem;
    }
    .home .construction .txt-box h2 .lg {
        font-size: 6rem;
    }
    .home .construction .txt-box {
        font-size: 1.8rem;
        padding-top: 10px;
        padding-bottom: 20px;
    }
}
@media(max-width:960px){
    .home .construction .items li {
        width: 180px;
        height: 180px;
    }
    .home .construction .items li .lg {
        font-size: 2.5rem;
    }
    .home .construction .items li .no {
        font-size: 3rem;
    }
    .home .construction .items li .txt {
        font-size: 1.8rem;
    }
    .home .construction .items li .sm {
        font-size: 1.4rem;
    }
}
@media(max-width:750px){
    .home .construction .items {
        margin-top: 0;
        justify-content: center;
    }
    .home .construction .items li {
        width: 220px;
        height: 220px;
    }
    .home .construction .items li .lg {
        font-size: 3rem;
    }
    .home .construction .items li .no {
        font-size: 3.5rem;
    }
    .home .construction .items li .txt {
        font-size: 2rem;
    }
    .home .construction .items li .sm {
        font-size: 1.6rem;
    }
    .home .construction .items li {
        width: 50%;
        margin-top: 20px !important;
    }
    .home .construction .items li:nth-child(odd) .txt{
        margin: 0 20px 0 auto;
    }
    .home .construction .items li .txt {
        width: 220px;
    }
    .home .construction .items li:nth-child(even) {
        margin-top: 0;
    }
    .home .construction .items li:nth-child(even) .txt {
        margin: 0 auto 0 20px;
    }
    .home .construction .img {
        text-align: center;
    }
    .home .construction .img img {
        max-width: 500px;
    }
    .home .construction .txt-box::before {
        width: 130px;
        height: 155px;
    }
    .home .construction .txt-box::after {
        width: 95px;
        height: 102px;
    }
    .home .construction .bottom-img img {
        height: 120px;
        object-fit: cover;
        object-position: center;
        width: 100%;
    }
}
@media(max-width: 576px){
    .home .construction .items li {
        height: 180px;
    }
    .home .construction .items li .txt {
        width: 180px;
    }
    .home .construction .items li .lg {
        font-size: 2.5rem;
    }
    .home .construction .items li .no {
        font-size: 3rem;
    }
    .home .construction .items li .txt {
        font-size: 1.8rem;
    }
    .home .construction .items li .sm {
        font-size: 1.4rem;
    }
    .home .construction .items li:nth-child(even) .txt {
        margin: 0 auto 0 10px;
    }
    .home .construction .items li:nth-child(odd) .txt {
        margin: 0 10px 0 auto;
    }
}
@media(max-width: 414px){
    .home .construction .items li {
        height: 150px;
    }
    .home .construction .items li .txt {
        width: 150px;
    }
    .home .construction .items li .lg {
        font-size: 2rem;
    }
    .home .construction .items li .no {
        font-size: 2.5rem;
    }
    .home .construction .items li .txt {
        font-size: 1.5rem;
    }
    .home .construction .items li .sm {
        font-size: 1.2rem;
    }
    .home .construction .items li:nth-child(even) .txt {
        margin: 0 auto 0 5px;
    }
    .home .construction .items li:nth-child(odd) .txt {
        margin: 0 5px 0 auto;
    }
    .home .construction .items li {
        margin-top: 10px !important;
    }
    .home .construction .bottom-img img {
        height: 100px;
    }
}
@media (max-width: 360px) {
    .home .construction .items li .txt {
        margin: 0 auto !important;
    }
    .home .construction .items li {
        width: 100%;
    }
}
/* house-box ================================================= */
.home .house-box {
    position: relative;
}
.home .house-box .inner-container {
    padding: 100px 50px 50px;
    border-radius: 30px;
    background: #FDF3E6;
    position: relative;
}
.home .house-box .inner-container::before,
.home .house-box .inner-container::after {
    content: "";
    position: absolute;
}
.home .house-box .inner-container::before {
    content: "";
    position: absolute;
    width: 240px;
    height: 202px;
    background: url(images/img/house-box-tl1.png) no-repeat;
    background-size: 100% !important;
    top: 50px;
    left: 6%;
}
.home .house-box .inner-container::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 230px;
    background: url(images/img/house-box-tl2.png) no-repeat;
    background-size: 100% !important;
    top: 40px;
    right: 50px;
}
.home .house-box .tl-box {
    font-size: 2.5rem;
    letter-spacing: .16em;
    line-height: 1.4;
    font-weight: 500;
}
.home .house-box .tl-box h2 {
    font-size: 5rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .08em;
    padding-bottom: 25px;
}
.home .house-box .item {
    display: flex;
    flex-wrap: wrap;
    /* padding-bottom: 60px; */
    padding-top: 90px;
}
.home .house-box .item .txt-box h3 {
    font-weight: 400;
    line-height: 1.5;
    font-size: 4rem;
    text-align: center;
    padding-bottom: 25px;
}
.home .house-box .item .img-box {
    width: 60%;
    position: relative;
    height: fit-content;
}
.home .house-box .item .img-box .sm {
    position: absolute;
    width: 40%;
    bottom: -12px;
    right: -30px;
}
.home .house-box .item .txt-box {
    width: 40%;
    text-align: center;
    padding-left: 30px;
}
.home .house-box .items h3 {
    font-size: 3.2rem;
    letter-spacing: .1em;
    font-weight: 400;
    line-height: 1;
    padding-bottom: 32px;
}
.home .house-box .items.fm1 {
    padding-top: 0;
}
.home .house-box .item.fm2 {
    padding-top: 150px;
}
.home .house-box .items ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -30px;
}
.home .house-box .items ul li {
    padding: 0 30px 50px;
}
.home .house-box .items ul li .inner {
    width: 120px;
    height: 135px;
    border: 3px solid #2778b0;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: #fff;
}
.home .house-box .items ul li .inner .img {
    height: 75px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    padding-top: 15px;
}
.home .house-box .items ul li .inner .desc {
    font-size: 1.4rem;
    color: #2778b0;
    text-align: center;
    line-height: 1;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 2px;
}
.home .house-box .item .txt-box p.img {
    text-align: center;
    padding-top: 25px;
}
.home .house-box .item .txt-box p.img img {
    max-width: 270px;
    width: 100%;
}
@media(max-width:1250px){
    .home .house-box .items ul {
        margin: 0 -15px;
    }
    .home .house-box .items ul li {
        padding: 0 15px 30px;
    }
}
@media(max-width:1150px){
    .home .house-box .item .txt-box {
        font-size: 2rem;
        padding-left: 20px;
    }
    .home .house-box .item .txt-box h3{
        font-size: 3rem;
    }
}
@media(max-width:1100px){
    .home .house-box .items ul li {
        padding: 0 15px 30px;
    }
    .home .house-box .items ul {
        margin: 0 -15px;
    }
    .home .house-box .inner-container {
        padding: 80px 20px 50px;
        border-radius: 30px;
    }
    .home .house-box .inner-container::before {
        width: 180px;
        height: 152px;
        top: 30px;
        left: 4%;
    }
    .home .house-box .inner-container::after {
        width: 160px;
        height: 142px;
        top: 30px;
        right: 30px;
    }
    .home .house-box .item.fm2 {
        padding-top: 100px;
    }
}
@media(max-width:960px){
    .home .house-box .item .txt-box {
        font-size: 1.6rem;
        padding-left: 20px;
    }
    .home .house-box .item .txt-box h3{
        font-size: 2.4rem;
    }
    .home .house-box .items ul {
        max-width: 590px;
        margin: 0 auto;
    }
}
@media(max-width: 960px) {
    .home .house-box .item {
        padding-top: 20px;
    }
    .home .house-box .item.fm2 {
        padding-top: 60px;
    }
    .home .house-box .tl-box h2 {
        font-size: 3.5rem;
        padding-bottom: 15px;
    }
    .home .house-box .tl-box {
        font-size: 2rem;
    }
    .home .house-box .inner-container::before {
        width: 150px;
        height: 125px;
    }
    .home .house-box .inner-container::after {
        width: 125px;
        height: 111px;
    }
    .home .construction .bottom-img {
        padding: 40px 0 80px;
    }
    .home .house-box .item .txt-box p.img img {
        max-width: 180px;
    }
    .home .house-box .item .txt-box p.img {
        padding-bottom: 15px;
    }
}
@media(max-width:750px){
    .home .house-box .item .txt-box {
        padding-left: 0px;
        width: 100%;
        padding-top: 20px;
    }
    .home .construction .bottom-img {
        padding: 30px 0 40px;
    }
    .construction {
        padding-top: 40px;
    }
    .home .house-box .item .img-box {
        width: 100%;
    }
    .home .house-box .tl-box {
        font-size: 1.8rem;
        padding-bottom: 30px;
    }
    .home .house-box .tl-box h2 {
        font-size: 3rem;
        padding-bottom: 20px;
    }
    .home .house-box .item {
        padding-bottom: 20px;
    }
    .home .house-box .item .img-box .sm {
        right: 0;
        bottom: -20px;
    }
    .home .house-box .item {
        padding-top: 30px;
    }
    .home .house-box .tl-box {
        padding-bottom: 0px;
    }
    .home .house-box .items h3 {
        font-size: 2.5rem;
        padding-bottom: 20px;
        padding-top: 20px;
    }
    .home .house-box .items.fm1 {
        padding-top: 20px;
    }
    .home .house-box .inner-container {
        padding: 50px 20px 20px;
        border-radius: 30px;
    }
    .home .house-box .inner-container {
        border-radius: 15px;
    }
    .home .house-box .item.fm2 {
        padding-top: 10px;
        padding-bottom: 0;
    }
    .home .house-box .item .txt-box {
        padding-top: 30px;
    }
    .home .house-box .item .txt-box h3 {
        padding-bottom: 15px;
    }
    .home .house-box .item .txt-box p.img {
        padding-bottom: 0;
    }
    .home .house-box .item .txt-box {
        font-size: 1.4rem;
    }
}
@media(max-width:576px){
    .home .house-box .inner-container::before {
        width: 90px;
        height: 77px;
    }
    .home .house-box .inner-container::after {
        width: 65px;
        height: 58px;
        top: 120px;
        right: 15px;
    }
    .home .house-box .inner-container::before {
        width: 63px;
        height: 54px;
        top: 20px;
    }
}
@media(max-width: 374px){
    .home .house-box .items ul li {
        padding: 0 10px 20px;
    }
    .home .house-box .items ul {
        margin: 0 -10px;
    }
    .home .house-box .tl-box h2 {
        font-size: 2.5rem;
    }
}
/* compatible-housing ======================================== */
.home .compatible-housing{
    padding-top: 100px;
    padding-bottom: 75px;
}
.home .compatible-housing .container {
    max-width: 1256px;
}
.home .compatible-housing .tl-box::before,
.home .compatible-housing .tl-box::after {
    content: "";
    position: absolute;
    background-size: 100% !important;
    z-index: -1;
}
.home .compatible-housing .tl-box::before{
    width: 198px;
    height: 147px;
    background: url(images/img/compatible-housing-bg1.png) no-repeat;
    left: 5%;
    top: -30px;
}
.home .compatible-housing .tl-box::after {
    width: 265px;
    height: 115px;
    background: url(images/img/compatible-housing-bg2.png) no-repeat;
    right: 5.5%;
    top: 5px;
}
.home .compatible-housing .tl-box {
    font-size: 2.4rem;
    letter-spacing: .16em;
    line-height: 1.4;
    font-weight: 500;
}
.home .compatible-housing h2 {
    font-size: 5rem;
    font-weight: 600;
    letter-spacing: .08em;
    line-height: 1;
    padding-bottom: 25px;
}
.home .compatible-housing .img-box {
    padding-top: 75px;
    padding-bottom: 100px;
}
.home .compatible-housing .img-box  img {
    width: 100%;
}
.home .compatible-housing .txt-box {
    text-align: center;
    line-height: 2.1;
    padding-bottom: 180px;
    position: relative;
}
.home .compatible-housing .txt-box.fm2::after {
    content: "";
    position: absolute;
    width: 166px;
    height: 110px;
    background: url(images/img/compatible-housing-house.png) no-repeat;
    background-size: 100% !important;
    bottom: 10px;
    right: 0;
}
.home .compatible-housing .txt-box h3 {
    font-size: 4rem;
    font-weight: 400;
    line-height: 1;
    padding-bottom: 25px;
    padding-top: 8px;
}
.home .compatible-housing .txt-box.fm1 h3 {
    padding-top: 0;
}
.home .compatible-housing .txt-box.fm1 p:first-child{
    line-height: 1;
}
.home .compatible-housing .item{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 48px;
    max-width: 1060px;
    margin: 0 auto;
}
.home .compatible-housing .item .img-box,
.home .compatible-housing .item .txt-box {
    width: 49%;
}
.home .compatible-housing .item .txt-box {
    font-size: 3.2rem;
    line-height: 1.7;
    padding: 0 15px;
}
.home .compatible-housing .item .img-box{
    padding: 0;
}
.home .compatible-housing .item .txt-box h3 {
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1;
}
.home .compatible-housing .item .txt-box h3 .no {
    font-size: 7rem;
    line-height: 1;
}
.home .compatible-housing .img-bottom {
    text-align: center;
    padding-top: 40px;
}
.home .compatible-housing .img-bottom img{
    width: 100%;
    max-width: 675px;
}
@media(max-width: 1024px){
    .home .compatible-housing .tl-box::before {
        width: 150px;
        height: 113px;
    }
    .home .compatible-housing .tl-box::after {
        width: 200px;
        height: 88px;
    }
    .home .compatible-housing .img-bottom {
        padding-top: 0px;
    }
}
@media(max-width:960px){
    .home .compatible-housing .txt-box h3 {
        font-size: 2.8rem;
        line-height: 1.5;
        padding-bottom: 10px;
    }
    .home .compatible-housing .txt-box {
        padding-bottom: 80px;
        font-size: 1.8rem;
    }
    .home .compatible-housing .item .txt-box {
        font-size: 2.5rem;
    }
    .home .compatible-housing .item .txt-box h3 {
        font-size: 3.5rem;
    }
    .home .compatible-housing .item .txt-box h3 .no {
        font-size: 5rem;
    }
    .home .compatible-housing .img-box {
        padding-top: 45px;
        padding-bottom: 50px;
    }
    .home .compatible-housing .txt-box.fm2::after {
        width: 130px;
        height: 81px;
        bottom: -15px;
    }
}
@media(max-width:860px){
    .home .compatible-housing .tl-box::before {
        width: 100px;
        height: 76px;
        left: 20px;
    }
    .home .compatible-housing .tl-box::after {
        width: 150px;
        height: 66px;
        right: 20px;
    }
    .home .compatible-housing {
        padding-top: 60px;
        padding-bottom: 35px;
    }
}
@media(max-width:750px){
    .home .compatible-housing{
        padding-top: 50px;
        padding-bottom: 20px;
    }
    .home .compatible-housing .txt-box {
        padding-bottom: 30px;
        font-size: 1.6rem;
    }
    .home .compatible-housing .img-box {
        padding-top: 25px;
        padding-bottom: 10px;
    }
    .home .compatible-housing h2 {
        font-size: 3rem;
        padding-bottom: 15px;
    }
    .home .compatible-housing .tl-box {
        font-size: 1.8rem;
    }
    .home .compatible-housing .txt-box h3{
        font-size: 2.5rem;
    }
    .home .compatible-housing .item .img-box, 
    .home .compatible-housing .item .txt-box {
        width: 100%;
    }
    .home .compatible-housing .item .txt-box {
        padding: 20px 0 0;
        font-size: 2rem;
    }
    .home .compatible-housing .item.fm1 {
        flex-direction: column-reverse;
    }
    .home .compatible-housing .tl-box::before {
        width: 65px;
        height: 49px;
        left: 15px;
    }
    .home .compatible-housing .tl-box::after{
        top: 67px;
        width: 94px;
        height: 41px;
    }
    .home .compatible-housing .txt-box.fm2::after {
        width: 90px;
        height: 57px;
        bottom: 0px;
    }
    .home .compatible-housing .item {
        padding-bottom: 30px;
    }
}
@media(max-width:576px){
    .home .compatible-housing .img-box {
        padding-top: 40px;
        padding-bottom: 10px;
    }
}
@media(max-width:480px){
    .home .compatible-housing .txt-box.fm2::after {
        width: 65px;
        height: 41px;
    }
}
@media(max-width:374px){
    .home .compatible-housing .item .txt-box {
        font-size: 2rem;
    }
    .home .compatible-housing .item .txt-box h3 {
        font-size: 3rem;
    }
}
/* security ================================================== */
.home .security {
    position: relative;
}
.home .security .inner-container {
    padding: 70px 50px 70px;
    background: #FDF3E6;
    border-radius: 30px;
    position: relative;
}
.home .security .inner-container::before,
.home .security .inner-container::after{
    content: "";
    position: absolute;
    background-size: 100% !important;
}
.home .security .inner-container::before{
    width: 254px;
    height: 230px;
    background: url(images/img/security-bg01.png) no-repeat;
    top: -52px;
    left: 50px;
}
.home .security .inner-container::after {
    width: 220px;
    height: 280px;
    background: url(images/img/security-bg02.png) no-repeat;
    top: -40px;
    right: 40px;
}
.home .security .tl-box {
    font-size: 2.4rem;
    letter-spacing: .16em;
    line-height: 1.4;
    padding-bottom: 65px;
    position: relative;
    z-index: 1;
}
.home .security .tl-box::before,
.home .security .tl-box::after {
    content: "";
    position: absolute;
    z-index: -1;
}
.home .security h2 {
    font-size: 5rem;
    font-weight: 600;
    letter-spacing: .08em;
    line-height: 1;
    padding-bottom: 22px;
}
.home .security .item {
    display: flex;
    flex-wrap: wrap;
}
.home .security .item .img-box,
.home .security .item .txt-box {
    width: 50%;
}
.home .security .item .img-box {
    padding-right: 25px;
}
.home .security .item .img-box  img {
    width: 100%;
}
.home .security .item .txt-box img {
    height: 60px;
}
.home .security .item .txt-box .img {
    padding-bottom: 35px;
    padding-top: 60px;
}
.home .security .item .txt-box {
    text-align: center;
    font-size: 3.2rem;
    line-height: 1.45;
}
@media(max-width:1250px){
    .home .security .item .txt-box {
        font-size: 2.4rem;
    }
    .home .security .item .img-box {
        padding-right: 25px;
    }
}
@media(max-width:1024px) {
    .home .security .inner-container::after {
        width: 150px;
        height: 192px;
        right: 20px;
    }
    .home .security .item .txt-box .img {
        padding-top: 35px;
    }
    .home .security .inner-container::before {
        width: 180px;
        height: 163px;
        top: -30px;
        left: 20px;
    }
}
@media(max-width:960px){
    .home .security .item .txt-box {
        font-size: 1.8rem;
    }
    .home .security .item .img-box {
        padding-right: 25px;
    }
    .home .security .item .txt-box img {
        height: 45px;
    }
    .home .security .item .txt-box .img {
        padding-bottom: 25px;
        padding-top: 30px;
    }
    .home .security .inner-container {
        padding: 40px 20px 40px;
    }
    .home .security h2 {
        font-size: 3.5rem;
    }
    .home .security .tl-box {
        font-size: 1.8rem;
        letter-spacing: 0.08em;
    }
}
@media(max-width: 750px){
    .home .security .item .img-box, 
    .home .security .item .txt-box {
        width: 100%;
    }
    .home .security .item .img-box {
        padding-right: 0;
    }
    .home .security {
        padding-top: 40px;
        padding-bottom: 45px;
    }
    .home .security h2 {
        font-size: 2.5rem;
    }
    .home .security .tl-box {
        font-size: 1.8rem;
        padding-bottom: 25px;
    }
    .home .security .item .txt-box {
        font-size: 1.6rem;
    }
    .home .security .inner-container {
        border-radius: 15px;
    }
    .home .security .inner-container::after {
        width: 60px;
        height: 78px;
        right: 15px;
    }
    .home .security .inner-container::before {
        width: 100px;
        height: 90px;
        top: -55px;
        left: 10px;
    }
}
@media(max-width:374px){
    .home .security .item .txt-box {
        font-size: 1.4rem;
    }
    .home .security h2 {
        font-size: 2.2rem;
    }
}
/* btn-group ================================================= */
.home .btn-group {
    padding-top: 75px;
}
.home .btn-group .container {
    max-width: 1150px;
}
.home .btn-group ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.home .btn-group ul li {
    width: calc(50% - 35px)
}
.home .btn-group ul li a{
    font-size: 2.4rem;
    line-height: 1;
    background: #2778b0;
    color: #fff;
    display: block;
    text-align: center;
    padding: 30px 20px;
    border: 2px solid #2778b0;
    transition: .3s;
    font-weight: 500
}
.home .btn-group ul li a:hover {
    background: #fff;
    color: #2778b0;
}


.home .btn-group2 {
    padding-top: 75px;
}
.home .btn-group2 .container {
    max-width: 1150px;
}
.home .btn-group2 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: stretch;
}
.home .btn-group2 ul li {
    width: calc(50% - 35px)
}
.home .btn-group2 ul li a{
    font-size: 2.4rem;
    line-height: 1;
    background: #2778b0;
    color: #fff;
    display: block;
    text-align: center;
    padding: 30px 20px;
    border: 2px solid #2778b0;
    transition: .3s;
    font-weight: 500
}
.home .btn-group2 ul li a:hover {
    background: #fff;
    color: #2778b0;
}

@media(max-width:860px) {
    .home .btn-group ul li {
        width: calc(50% - 15px);
    }
    .home .btn-group {
        padding-top: 40px;
    }
}
@media(max-width:750px) {
    .home .btn-group ul li {
        width: calc(50% - 10px);
    }
    .home .btn-group {
        padding-top: 0px;
    }
    .home .btn-group ul li a {
        font-size: 2rem;
        padding: 20px 20px;
    }
}
@media(max-width:374px){
    .home .btn-group ul li {
        width: 100%;
        margin-bottom: 15px;
    }
}
.home .location {
    padding-bottom: 65px;
}
.home .location .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    padding-top: 110px;
    padding-bottom: 60px;
}
.home .location .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
    font-family: "Gothic A1", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
    line-height: 1.1;
}
.home .location .img img {
    width: 100%;
    margin-top: -25%;
    position: relative;
    z-index: -1;
}
.home .location .txt-box {
    font-size: 3.2rem;
    line-height: 1.4;
}
.home .location .txt-box  h3 {
    font-size: 4rem;
    line-height: 1.5;
    color: #2778b0;
    padding-top: 20px;
}
@media(max-width:1100px) {
    .home .location .ttl {
        font-size: 2rem;
        padding-top: 60px;
    }
    .home .location .ttl h2 {
        font-size: 5rem;
    }
}
@media(max-width:960px){
    .home .location .ttl {
        font-size: 1.8rem;
    }
}
@media(max-width:860px){
    .home .location .txt-box h3 {
        font-size: 3rem;
    }
    .home .location .txt-box {
        font-size: 2.5rem;
    }
}
@media(max-width:750px){
    .home .location .img img {
        margin-top: -48%;
    }
    .home .location .ttl {
        padding-top: 10%;
        padding-bottom: 30px;
    }
    .home .location .ttl h2 {
        font-size: 4rem;
    }
    .home .location .txt-box {
        font-size: 2rem;
    }
    .home .location .txt-box h3 {
        font-size: 2.5rem;
    }
    .home .location {
        padding-bottom: 35px;
    }
}
@media(max-width: 640px){
    .home .location .img img {
        margin-top: -45%;
    }
    .home .location .ttl {
        padding-top: 10%;
        padding-bottom: 30px;
    }
}
/* access-way ================================================ */
.home .access-way {
    background: #EDA136;
    color: #FFF;
    padding-top: 45px;
    font-size: 4rem;
    line-height: 1.6;
    padding-bottom: 13px;
}
.home .access-way h2 {
    font-size: 4.4rem;
    font-weight: 500;
    line-height: 1.2;
    display: block;
    border-bottom: 2px solid #fff;
    padding-bottom: 25px;
    color:#FFFF99;
    letter-spacing: 0.08em;
}
.home .access-way .inner .cl2{
    color: #FFFF99;
}
.home .access-way .inner {
    padding: 15px 0 20px;
    letter-spacing: 0.08em;
}
@media(max-width:1100px){
    .home .access-way h2 {
        font-size: 3.2rem;
    }
    .home .access-way .inner {
        font-size: 2.8rem;
    }
}
@media(max-width:860px){
    .home .access-way h2 {
        font-size: 3rem;
    }
    .home .access-way .inner {
        font-size: 2.5rem;
    }
    .home .access-way {
        padding-top: 30px;
    }
}
@media(max-width:750px){
    .home .access-way h2 {
        font-size: 2.2rem;
        line-height: 1.4;
    }
    .home .access-way{
        padding-top: 35px;
    }
    .home .access-way .inner {
        font-size: 2rem;
    }
}
@media(max-width:374px){
    .home .access-way h2 {
        font-size: 2rem;
        line-height: 1.4;
    }
    .home .access-way .inner {
        font-size: 1.8rem;
    }
}
/* access ==================================================== */
.home .access {
    position: relative;
    padding-top: 110px;
}
.home .access .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
    font-family: "Gothic A1", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
    line-height: 1.1;
}
.home .access .content {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    background: #FDF3E6;
    border-radius: 30px;
    padding: 0 45px 70px 48px;
    margin-top: -85px;
}
.home .access .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    padding-top: 0;
    font-weight: 500
}
.home .access .inner-container {
    padding: 0 0 95px;
    border-radius: 30px;
}
.home .access .img {
    padding-bottom: 55px;
    max-width: 1075px;
    margin: 0 auto;
    margin-top: -8.8%;
}
.home .access .content .title h3 {
    font-size: 5rem;
    color: #2778b0;
    line-height: 1.36;
    font-weight: 600;
}
.home .access .content .title p {
    font-size: 2.4rem;
    letter-spacing: 0.16em;
}
.home .access ul {
    display: flex;
    flex-wrap: wrap;
    max-width: 990px;
    width: 100%;
    margin: 0px auto;
    border-bottom: 2px dashed #000;
    justify-content: space-between;
    align-items: center;
}
.home .access .content .title {
    padding-bottom: 20px;
}
.home .access ul li {
    width: 50%;
    padding: 0 5px;
    margin: 20px 0;
}
.home .access ul.boder-none {
    border: unset;
}
.home .access ul li:first-child{
    border-right: 2px dashed #000;
    padding-right: 5%;
}
.home .access ul li:last-child {
    padding-left: 5%;
    padding-right: 10px;
}
.home .access ul li  .item{
    line-height: 1.2;
    font-size: 2.2rem;
    font-weight: 500;
    padding: 0 0px 5px;
}
.home .access ul li.fm1 {
    width: 58%;
}
.home .access ul li .lg{
    font-size:3.2rem;
}
.home .access ul li .lg .sm {
    font-size: 2rem;
}
.home .access ul li .no {
    color: #0B308E;
    font-size: 3.2rem;
}
.home .access ul li .cl2 {
    color: #0B308E;
}
.home .access ul li .item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.home .access ul li .item .txt p {
    padding-bottom: 12px;
}
.home .access .location-box {
    max-width: 980px;
    margin: 0 auto;
    padding-top: 95px;
    padding-bottom: 120px;
    font-weight: 500;
}
.home .access .location-box .tag-box {
    display: flex;
    align-items: center;
    line-height: 1.1;
    padding-top: 25px;
}
.home .access .location-box .tag-box .tag {
    width: 260px;
    background: #00034B;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.3;
    padding-left: 18px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 94px;
    margin-right: 55px;
    position: relative;
    font-weight: 400;
}
.home .access .location-box .tag-box .tag::after{
    content: "";
    position: absolute;
    height: 94px;
    width: 34px;
    border-left: 34px solid #00034B;
    border-top: 47px solid transparent;
    border-bottom: 47px solid transparent;
    right: -34px;
    top: 0;
}
.home .access .location-box .tag-box .tag .lg {
    font-size: 2rem;
    display: block;
}
.home .access .location-box {
    font-size: 2.2rem;
    line-height: 1.15;
}
.home .access .location-box .lg {
    font-size: 3rem;
}
.home .access .location-box .tl {
    margin-bottom: -10px
}
.home .access .location-box .no {
    font-size: 4.1rem;
    color: #0B308E
}
.home .access .map iframe {
    width: 100%;
    height: 395px;
}
.home .access .map {
    padding-bottom: 50px;
}
@media(max-width: 1200px){
    .home .access ul li .txt {
        margin-right: 0px;
    }
}
@media(max-width: 1024px){
    .home .access ul li .item {
        font-size: 1.8rem;
    }
    .home .access ul li .lg {
        font-size: 2.2rem;
    }
    .home .access ul li .no {
        font-size: 2.5rem;
    }
    .home .access .content .title h3 {
        font-size: 3rem;
    }
    .home .access .content .title p {
        font-size: 2rem;
    }
    .home .access .ttl {
        font-size: 2rem;
    }
    .home .access .ttl h2 {
        font-size: 7rem;
    }
    .home .access .content {
        padding: 0 20px 70px 30px;
        margin-top: -65px;
    }
    .home .access .content {
        padding: 0 20px 70px 20px;
    }
}
@media(max-width:960px){
    .home .access ul {
        margin: 0;
    }
    .home .access ul li {
        padding: 0;
    }
}
@media(max-width:860px){
    .home .access ul li,
    .home .access ul li.fm1 {
        width: 50%;
    }
}
@media(max-width: 750px){
    .home .access .img {
        padding-top: 25px;
        padding-bottom: 30px;
    }
    .home .access ul {
        margin: 0px 0 0;
        /* padding-bottom: 20px; */
    }
    .home .access ul li {
        margin: 15px 0 0;
        padding-bottom: 0 !important;
    }
    .home .access ul li .item{
        padding: 0;
        text-align: center;
        line-height: 1.4;
    }
    .home .access ul li .txt {
        justify-content: center;
        flex-direction: column;
    }
    .home .access ul li .item .lg {
        font-size: 2.2rem;
    }
    .home .access .location-box .lg {
        font-size: 2rem;
    }
    .home .access .location-box .no {
        font-size: 3.2rem;
        color: #0B308E;
    }
    .home .access .content {
        padding: 0 20px 30px 20px;
    }
    .home .access .location-box {
        padding-top: 40px;
        padding-bottom: 40px;
        font-size: 1.8rem;
    }
    .home .access .location-box .tl {
        margin-bottom: 0;
    }
    .home .access .location-box .lb-sp {
       display: none;
    }
    .home .access {
        padding-top: 40px;
        padding-bottom: 45px;
    }
    .home .access .map iframe {
        height: 250px;
    }
    .home .access .img {
        margin-top: -12%;
    }
    .home .access .ttl h2 {
        font-size: 5rem;
    }
    .home .access .content {
        margin-top: -55px;
    }
    .home .access .content .title p {
        font-size: 1.8rem;
    }
    .home .access .content {
        border-radius: 10px;
    }
}
@media(max-width: 576px) {
    .home .access .location-box .tag-box {
        flex-direction: column;
    }
    .home .access .location-box .tag-box .tag {
        margin-bottom: 50px;
        margin-right: 0;
    }
    .home .access .location-box .tag-box .tag::after {
        left: 0;
        right: 0;
        bottom: -34px;
        top: unset;
        border-top: 34px solid #00034B;
        border-left: 130px solid transparent;
        border-right: 130px solid transparent;
        width: 260px;
        height: 34px;
        border-bottom: unset;
    }
    .home .access ul li:first-child {
        border-right: 2px dashed #000;
        padding-right: 5%;
    }
    .home .access ul li:first-child {
        border-right: unset;
        padding-right: 0;
    }
    .home .access .location-box {
        text-align: center;
    }
    .home .access .location-box .lb-sp {
        display: block;
     }
     .home .access .location-box .tl {
        margin-bottom: 5px;
    }
    .home .access .location-box .tag-box .tag {
        padding-left: 0;
    }
    .home .access ul li,
    .home .access ul li.fm1 {
        width: 100%;
        padding-bottom: 20px;
    }
    .home .access ul li.fm1  {
        padding-bottom: 0;
    }
    .home .access ul {
        padding-bottom: 0;
    }
    .home .access .content .title h3 {
        font-size: 2rem;
        padding-bottom: 10px;
    }
    .home .access .content .title p {
        font-size: 1.4rem;
        line-height: 1.5;
    }
    .home .access .content .title {
        padding-bottom: 15px;
    }
    .home .access ul li .item .lg {
        padding-right: 20px;
    }
    .home .access ul li:last-child {
        padding-left: 0;
    }
    .home .access ul li .item .lg {
        font-size: 2rem;
    }
    .home .access ul li .item {
        font-size: 1.6rem;
    }
}
@media(max-width: 480px){
    .home .access ul li {
        width: 100%;
    }
    .home .access .ttl h2 {
        font-size: 3.5rem;
    }
    .home .access .ttl {
        font-size: 1.6rem;
    }
    .home .access .content {
        margin-top: -42px;
    }
}
/* daily-outing ============================================== */
.home .daily-outing {
    padding-top: 150px;
    position: relative;
}
.home .daily-outing::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 30px;
    top: 0;
    background: url(images/img/house-border.png) repeat;
}
.home .daily-outing .title-box::after{
    content: "";
    position: absolute;
    width: 435px;
    height: 245px;
    top: -65px;
    right: 5%;
    background: url(images/img/daily-outing-bg-top.png) no-repeat;
    background-size: 100% !important;
}
.home .daily-outing .title-box h2 {
    font-size: 3.2rem;
    padding-bottom: 8px;
    display: block;
    padding-top: 60px;
    position: relative;
    border-bottom: 4px solid #2778b0;
    max-width: 650px;
    font-weight: 500;
    padding-bottom: 4px;
    line-height: 1.5;
}
.home .daily-outing .title-box h2 {
    max-width: 680px;
}
.home .daily-outing .title-box {
    padding-bottom: 50px;
}
.home .daily-outing .inner-content {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    padding-bottom: 65px;
}
.home .daily-outing .inner-content .img {
    width: 36%;
}
.home .daily-outing .inner-content .inner-txt {
    flex: 1;
    padding-left: 14px;
}
.home .daily-outing .inner-content .tl-box h3 {
    font-size: 2.8rem;
    line-height: 1.5;
    font-weight: 500;
    padding-right: 25px;
}
.home .daily-outing .inner-content .tl-box {
    font-size: 1.2rem;
    line-height: 1.25;
    display: flex;
    align-items: flex-end;
    padding-bottom: 20px;
    padding-top: 10px;
}
.home .daily-outing .inner-content .tl-box p {
    padding-bottom: 5px;
}
.home .daily-outing .inner-content ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -4px;
}
.home .daily-outing .inner-content ul li {
    width: 25%;
    padding: 4px;
}
.home .daily-outing .inner-content ul li .img {
    width: 100%;
    margin-bottom: 3px;
    padding-top: 100%;
    position: relative;
    padding-bottom: 0;
}
.home .daily-outing .inner-content ul li .img img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    height: 100%;
}
.home .daily-outing .inner-content ul li h4 {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: -.02em;
    text-align: center;
    line-height: 1.5;
}
.home .daily-outing .inner-content ul li p {
    font-size: 1.1rem;
    letter-spacing: -.06em;
    line-height: 1.5;
    text-align: center;
}
.home .daily-outing .content {
    max-width: 1050px;
    margin: 0 auto;
}
.home .daily-outing .btn-view-more {
    max-width: 100%;
}
.home .daily-outing .title-box .tag {
    font-size: 1.6rem;
    line-height: 1.3;
    text-align: center;
    background: #2778b0;
    display: inline-block;
    color: #fff;
    border-radius: 9px;
    min-width: 98px;
    padding: 7px 0;
    position: absolute;
    top: 0;
}
.home .daily-outing .title-box .tag::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 8px;
    border-top: 8px solid #2778b0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    left: 50%;
    margin-left: -5px;
    bottom: -6px;
}
.home .daily-outing .btn-view-more a{
    margin-left: 100px;
}
.home .daily-outing .btn-view-more .txt  {
    padding-right: 25px;
    line-height: 1;
}
.home .daily-outing .items{
    padding-top: 25px;
    display: flex;
    flex-wrap: wrap;
}
.home .daily-outing .items.fm1{
    /* margin-top: 10px; */
    padding-top: 0px;
}
.home .daily-outing .content-inner {
    max-width: 1050px;
    margin: 0 auto;
}
.home .daily-outing .items .item-list {
    flex: 1;
}
.home .daily-outing .items .item-list ul{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}
.home .daily-outing .items .item-list ul li{
    width: 33.33%;
    text-align: center;
    line-height: 1.3;
    font-size: 1.6rem;
    font-weight: 500;
    padding: 14px 10px 20px;
}
.home .daily-outing .items .item-list ul li .no {
    font-size: 2.4rem;
    font-weight: 500;
}
.home .daily-outing .items .item-list ul li h4 {
    font-size: 1.8rem;
    font-weight: 500;
    padding-top: 8px;
    margin: 0 -15px;
}
.home .daily-outing .items.fm2 .item-list ul li .inner .img {
    position: relative;
}
.home .daily-outing .items .item-list ul li .tag {
    position: absolute;
    font-size: 1.4rem;
    line-height: 1;
    min-width: 122px;
    background: #3E3A39;
    text-align: center;
    color: #fff;
    padding: 6px 10px;
    left: 0;
    top: 18px;
}
.home .daily-outing .items .sidebar {
    width: 236px;
    padding-left: 20px;
    font-size: 1.8rem;
    line-height: 1.3;
    padding-top: 52px;
}
.home .daily-outing .items .sidebar .sm {
    font-size: 1.6rem;
}
.home .daily-outing .items .sidebar ul li {
    padding-left: 18px;
    padding-bottom: 25px;
    position: relative;
    transition: .3s;
}
.home .daily-outing .items .sidebar ul li a{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.home .daily-outing .items .sidebar ul li::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #3E3A39;
    left: 0;
    top: 6px;
    transition: .3s;
}
@media(hover:hover){
    .home .daily-outing .items .sidebar ul li:hover{
        color: #2778b0;
    }
    .home .daily-outing .items .sidebar ul li:hover::before {
        background: #2778b0;
    }
}
.home .daily-outing .inner-content.fm1 .inner-txt {
    padding-left: 0;
    padding-right: 14px;
}
.home .daily-outing .inner-content.fm1 .inner-txt .tl-box {
    display: block;
    padding-bottom: 25px;
}
.home .img-bottom {
    text-align: center;
    padding-top: 20px;
}
.home .img-bottom img{
    max-width: 1000px;
    width: 100%;
}
@media(hover:none){
    .home .daily-outing .items .sidebar ul li:active{
        color: #2778b0;
    }
    .home .daily-outing .items .sidebar ul li:active::before {
        background: #2778b0;
    }
}
.home .daily-outing .items h3 {
    font-size: 2.1rem;
    letter-spacing: .04em;
    line-height: 1;
    background: #2778b0;
    color: #fff;
    font-weight: 400;
    display: block;
    padding: 10px 20px 11px;
}
.home .daily-outing .items .sidebar.fm1 p:first-child{
    margin-right: -60px;
}
.home .daily-outing .items.fm2 .item-list ul li {
    width: 25%;
    padding-bottom: 35px;
}
@media(max-width:1300px) {
    .home .daily-outing .items .sidebar.fm1 p:first-child{
        margin-right: 0;
    }
}
@media(max-width:1100px) {
    .home .daily-outing .items .item-list ul li h4 {
        margin: 0;
    }
}
@media(max-width:1024px){
    .home .daily-outing .inner-content ul li h4 {
        font-size: 1.2rem;
    }
    .home .daily-outing .inner-content ul li p {
        font-size: 1rem;
    }
    .home .daily-outing .inner-content .tl-box h3 {
        font-size: 2.2rem;
        padding-right: 15px;
    }
    .home .daily-outing .items .item-list ul {
        margin: 0 -5px;
    }
    .home .daily-outing .items .item-list ul li{
        padding: 10px 5px;
    }
    .home .daily-outing .items .sidebar {
        width: 220px;
        font-size: 1.6rem;
    }
    .home .daily-outing .title-box::after {
        width: 300px;
        height: 170px;
        top: 25px;
        z-index: -1;
    }
    .home .daily-outing {
        padding-top: 100px;
    }
    .home .daily-outing .items .sidebar ul li {
        padding-left: 15px;
        padding-bottom: 15px;
    }
    .home .daily-outing .items .sidebar ul li::before {
        width: 8px;
        height: 8px;
        top: 7px;
    }
    .home .daily-outing .items .sidebar .sm {
        font-size: 1.4rem;
    }
    .home .daily-outing .items .item-list ul li h4 {
        font-size: 1.6rem;
        margin: 0 -10px;
    }
    .home .daily-outing .items .item-list ul li {
        font-size: 1.4rem;
    }
    .home .daily-outing .items .item-list ul li .no {
        font-size: 2.2rem;
    }
}
@media(max-width:960px){
    .home .daily-outing .btn-view-more .txt {
        font-size: 1.8rem;
    }
}
@media(max-width:860px){
    .home .daily-outing .inner-content ul li h4 {
        font-size: 1.2rem;
    }
    .home .daily-outing .inner-content ul li p {
        font-size: 1rem;
    }
    .home .daily-outing .inner-content .tl-box h3 {
        font-size: 2.2rem;
        padding-right: 15px;
    }
    .home .daily-outing .inner-content .inner-txt {
        flex: auto;
        padding-left: 0;
    }
    .home .daily-outing .inner-content .img {
        width: 100%;
        text-align: center;
        padding-bottom: 20px;
    }
    .home .daily-outing .inner-content .img img {
        width: 100%;
    }
    .home .daily-outing .items .item-list {
        flex: auto;
    }
    .home .daily-outing .items {
        flex-direction: column-reverse;
    }
    .home .daily-outing .items .sidebar {
        width: 100%;
        font-size: 1.8rem;
        padding-left: 0;
        padding-top: 10px;
    }
    .home .daily-outing .inner-content.fm1 .inner-txt {
        padding-right: 0;
    }
    .home .daily-outing .items.fm2 .item-list ul li {
        width: 50%;
    }
    .home .daily-outing .title-box::after {
        width: 200px;
        height: 113px;
        top: -4px;
    }
}
@media(max-width: 750px){
    .home .daily-outing {
        padding-top: 80px;
        padding-bottom: 40px;
    }
    .home .daily-outing .title-box::after {
        right: 15px;
    }
    .home .daily-outing .inner-content {
        padding-bottom: 35px;
    }
    .home .daily-outing .title-box h2 {
        font-size: 2.2rem;
    }
    .home .daily-outing .items h3 {
        padding: 10px 15px 11px;
        font-size: 1.8rem;
    }
    .home .daily-outing .inner-content .img img {
        width: 100%;
    }
    .home .daily-outing .title-box {
        padding-bottom: 25px;
    }
    .home .daily-outing .items .item-list ul li {
        width: 100%;
    }
    .home .daily-outing .items .item-list ul li img {
        width: 100%;
    }
    .home .daily-outing .items .sidebar .sm {
        font-size: 1.6rem;
    }
    .home .daily-outing .items .item-list ul li h4 {
        font-size: 1.8rem;
        margin: 0;
    }
    .home .daily-outing .items .item-list ul li {
        font-size: 1.4rem;
    }
    .home .daily-outing .items .item-list ul li .no {
        font-size: 2.4rem;
    }

    .home .daily-outing .items .sidebar .sm {
        font-size: 1.6rem;
    }
    .home .daily-outing .btn-view-more a {
        margin-left: 0;
    }
    .home .daily-outing .btn-view-more {
        flex-direction: column;
    }
    .home .daily-outing .btn-view-more::before {
        top: 16px;
        margin-top: 0;
    }
    .home .daily-outing .btn-view-more .txt {
        padding-top: 10px;
        padding-right: 0;
        line-height: 1.5;
    }
    .home .daily-outing .inner-content {
        padding-bottom: 35px;
    }
    .home .daily-outing {
        padding-bottom: 35px;
    }
    .home .daily-outing .items.fm2 .item-list ul li {
        width: 100%;
        padding-bottom: 20px;
    }
    .home .daily-outing {
        padding-top: 70px;
    }
}
@media(max-width: 576px){
    .home .daily-outing .inner-content ul li {
        width: 50%;
    }
    .home .daily-outing .title-box::after {
        width: 138px;
        height: 130px;
        top: 5px;
        background: url(images/img/daily-outing-bg-top-sp.png) no-repeat;
        z-index: 1;
    }
    .home .daily-outing .inner-content ul li {
        padding: 5px;
    }
}
@media(max-width: 480px){
    .home .daily-outing .inner-content .tl-box h3 {
        font-size: 2rem;
        padding-right: 0px;
        padding-bottom: 15px;
    }
    .home .daily-outing .inner-content .tl-box {
        flex-direction: column;
        align-items: unset;
    }
}
/* land-plan ================================================= */
.home .land-plan {
    padding-top: 100px;
	position: relative;
}
.home .land-plan .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    padding-top: 70px;
    font-weight: 500;
}
.home .land-plan .title-box h2 {
    max-width: 360px;
}
.home .land-plan ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1160px;
    margin: 0 auto;
    /*padding-right: 6%;
    padding-left: 1.2%;*/
    padding-top: 10px;
}
.home .land-plan ul li {
    width: 190px;
    height: 190px;
	margin-right: 20px;
}
.home .land-plan ul li:last-child{
margin-right: 0;

}

@media only screen and (max-width:640px){
.home .land-plan ul li:last-child{
margin-right: auto;

}
}
.home .land-plan .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
        color: #2778b0;
	font-weight: 900;
    line-height: 1.1;
}
.home .land-plan .content {
    display: flex;
    flex-wrap: wrap;
    padding-top: 60px;
}
.home .land-plan .content .left {
    width: 60%;
    padding-right: 10px;
}
.home .land-plan .content .right {
    flex: 1;
    padding-top: 20px;
    padding-left: 35px;
}
.home .land-plan ul li .txt {
    background: #2778b0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    height: 100%;
    width: 100%;
    font-size: 2.4rem;
    line-height: 1.4;
    text-align: center;
    border-radius: 50%;
    margin: 0 auto;
}
@media(max-width: 1166px) {
    .home .land-plan ul li {
        width: 150px;
        height: 150px;
    }
    .home .land-plan ul li .txt {
        font-size: 2rem;
    }
}
@media(max-width: 1024px){
    .home .land-plan ul li {
        width: 120px;
        height: 120px;
    }
    .home .land-plan ul li .txt {
        font-size: 1.6rem;
    }
}
@media(max-width:860px){
    .home .land-plan {
        padding-top: 50px;
    }
    .home .land-plan .ttl h2 {
        font-size: 6rem;
    }
    .home .land-plan .ttl {
        font-size: 1.8rem;
        padding-top:30px;
    }
    .home .land-plan .content {
        padding-top: 30px;
    }
}
@media(max-width: 750px){
    .home .land-plan {
        padding-top: 35px;
        padding-bottom: 20px;
    }
    .home .land-plan img {
        transform: unset;
        padding-top: 0px;
    }
    .home .land-plan .content .left {
        width: 100%;
        padding-right: 0px;
    }
    .home .land-plan .content {
        padding-top: 10px;
    }
    .home .land-plan .ttl h2 {
        font-size: 5rem;
    }
    .home .land-plan .ttl {
        font-size: 2rem;
        padding-top: 40px;
    }
    .home .land-plan .content .right {
        padding-top: 6%;
        padding-left: 4.5%;
    }
    .home .land-plan ul li {
        width: 170px;
        height: 170px;
    }
    .home .land-plan ul li .txt {
        font-size: 2rem;
    }
    .home .land-plan .ttl h2 {
        font-size:4rem;
    }
    .home .land-plan .ttl {
        font-size: 1.6rem;
    }
}
@media(max-width: 640px) {
    .home .land-plan ul li {
        width: 150px;
        height: 150px;
    }
    .home .land-plan ul li .txt {
        font-size: 1.8rem;
    }
}
@media(max-width: 576px) {
    .home .land-plan ul li {
        width: 120px;
        height: 120px;
    }
    .home .land-plan ul li .txt {
        font-size: 1.6rem;
    }
}
@media(max-width: 480px) {
    .home .land-plan ul li {
        width: 100px;
        height: 100px;
    }
    .home .land-plan ul li .txt {
        font-size: 1.4rem;
    }
}
@media(max-width: 414px){
    .home .land-plan ul li {
        width: 220px;
        height: 220px;
        margin: 0 auto 20px;
    }
    .home .land-plan ul li .txt {
        font-size: 2.4rem;
    }
    .home .land-plan .ttl h2 {
        font-size: 3.5rem;
    }
    .home .land-plan .ttl {
        font-size: 1.6rem;
        padding-top: 30px;
    }
}
@media(max-width: 3744px) {
    .home .land-plan .ttl {
        padding-top: 10px;
    }
}
/* house-plan ================================================ */
.home .house-plan{
    padding-top: 80px;
	position: relative;
}
.home .house-plan .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    font-weight: 500;
}
.home .house-plan .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
    color: #2778b0;
	font-weight: 900;
    line-height: 1.1;
}
.home .house-plan .content {
    background: #e0f2ff;
    border-radius: 30px;
    padding: 50px 50px 50px;
    margin-top: -91px;
}
.home .house-plan .title-box h2 {
    max-width: 425px;
}
.house-plan .nav-tabs {
  display: flex;
  max-width: 1080px;
}
.house-plan .nav-tabs li {
    width: 33.33%;
    padding-right: 20px;
}
.house-plan .nav-tabs li:last-child{
    padding-right: 0;
}
.house-plan .nav-tabs .tab {
  text-align: center;
  cursor: pointer;
  font-size: 2.4rem;
  color: #2778b0;
  background: #f9f9f9;
  transition: 0.2s;
  letter-spacing: .1em;
  line-height: 1.05;
  padding: 16px 0;
  height: 100%;
  background: url(images/img/tab-bg.png) no-repeat;
  background-size: 100% 100% !important;
}
@media(hover:hover){
    .house-plan .nav-tabs .tab:hover{
        background: url(images/img/tab-bg-active.png) no-repeat; 
        color: #fff;
    }
}
.check-point .tab-content,
.house-plan .tab-content {
  display: none;
}
.check-point .tab-content.active,
.house-plan .tab-content.active {
  display: block;
}
.house-plan .nav-tabs .tab .lg {
    font-size: 3.2rem;
}
.house-plan .nav-tabs .tab .lg .no {
    font-size: 3.5rem;
}
.house-plan .nav-tabs .tab.active {
  color: #fff;
  background: url(images/img/tab-bg-active.png) no-repeat;
}
.house-plan .tab-content {
  display: none;
}
.house-plan .tab-content.active {
  display: block;

.check-point .tab-content,
.house-plan .tab-content {
  display: none;
}
.check-point .tab-content.active,
.house-plan .tab-content.active {
  display: block;
}

}
.house-plan .tab-content h3 {
    font-size: 2.4rem;
    line-height: 1.35;
    font-weight: 400;
    padding-top: 85px;
}
.house-plan .tab-content h3 .lg{
    font-size: 5rem;
    padding-right: 35px;
}
.house-plan .tab-content .item {
    display: flex;
    flex-wrap: wrap;
}
.house-plan .tab-content .item .txt-box {
    display: flex;
    flex-wrap: wrap;
    padding-top: 15px;
    align-items: center;
    padding-bottom: 60px;
    padding-right: 45px;
    flex: 1;
}
.house-plan .tab-content .item .img {
    width: 37%;
}
.house-plan .tab-content .item .txt-box .left {
    width: 100%;
    /* display: flex;
    justify-content: space-between; */
    line-height: 1.5;
    padding-right: 30px;
}
.house-plan .tab-content .item .txt-box .left .lg {
    font-size: 2.4rem;
    line-height: 1.9;
}
.house-plan .tab-content .item .txt-box .left .sm {
    font-size: 1.6rem;
    line-height: 1.7;
    padding-top: 12px;
    padding-bottom: 50px;
}
.house-plan .tab-content .item .txt-box .left .lg p:last-child{
    padding-bottom: 0;
}
.house-plan .tab-content .item .txt-box .right {
    flex: auto;
}
.house-plan .tab-content .item .txt-box .right ul {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    margin: 0 -7px;
}
.house-plan .tab-content .item .txt-box .right ul li {
    line-height: 1;
    display: block;
    font-size: 1.6rem;
    background: #2778b0;
    color: #fff;
    padding: 7px 10px;
    border: 2px solid #fef8f0;
}
.house-plan .tab-content .item .txt-box .right ul li.col6 {
    width: 50%;
}
.house-plan .tab-content .item .txt-box .right ul li.col2 {
    width: 21%;
}
.house-plan .tab-content .item .txt-box .right ul li.col4 {
    width: 29%;
}
.house-plan .tab-content .item .txt-box .right ul li a{
    display: block;
    text-align: center;
    line-height: 1;
    font-size: 1.6rem;
    background: #2778b0;
    color: #fff;
    width: 100%;
    padding: 7px 10px;
    border: 2px solid #2778b0;
    transition: .3s;
}
.house-plan .tab-content .item .txt-box .right ul li a.fm1 {
    background: unset;
    color: #2778b0;
}
.house-plan .tab-content .item .txt-box .right ul li a:hover{
    background: unset;
    color: #2778b0;
}
.house-plan .tab-content  .img-box img{
    width: 100%;
}
.house-plan .tab-content .img-box .btn-zoom {
    max-width: 60px;
    display: inline-block;
    bottom: 130px;
    position: absolute;
    right: 15.5%;
    transition: .3s;
}
.house-plan .tab-content  .img-box .btn-zoom img {
    width: 100%;
}
@media(hover:hover){
    .house-plan .tab-content .img-box .btn-zoom:hover {
        opacity: .7;
    }
}
@media(hover:none){
    .house-plan .tab-content .img-box .btn-zoom:active {
        opacity: .7;
    }
}
@media(max-width:1150px){
    .house-plan .tab-content .item .txt-box .left .lg {
        font-size: 2rem;
    }
    .house-plan .tab-content .item .txt-box .left .sm {
        font-size: 1.4rem;
    }
    .house-plan .tab-content .item .txt-box .right ul li a {
        font-size: 1.6rem;
    }
}
@media(max-width:1100px) {
    .house-plan .tab-content .item .txt-box .right ul li a {
        font-size: 1.4rem;
    }
    .house-plan .nav-tabs .tab .lg {
        font-size: 2.5rem;
    }
    .house-plan .nav-tabs .tab {
        font-size: 2rem;
    }
    .home .house-plan .content {
        padding: 120px 20px 50px;
        margin-top: -78px;
    }
    .home .house-plan .ttl h2 {
        font-size: 7rem;
    }
    .house-plan .tab-content .item .txt-box {
        padding-right: 20px;
    }
}
@media(max-width:1024px){
    .house-plan .tab-content .item .txt-box .right ul li a {
        min-width: 110px;
    }
    .house-plan .tab-content .item .txt-box .right ul li.col2 {
        width: 50%;
    }
    .house-plan .tab-content .item .txt-box .right ul li.col4,
    .house-plan .tab-content .item .txt-box .right ul li {
        width: 50%;
    }
    .house-plan .tab-content .item .txt-box .left .sm {
        font-size: 1.4rem;
        padding-bottom: 10px;
        padding-top: 5px;
    }
}
@media(max-width:960px){
    .house-plan .nav-tabs .tab .lg {
        font-size: 2rem;
    }
    .house-plan .nav-tabs .tab .lg .no {
        font-size: 2.2rem;
    }
    .house-plan .nav-tabs .tab {
        font-size: 1.8rem;
    }
    .house-plan .tab-content .item .txt-box .left {
        padding-right: 0;
    }
    .house-plan .tab-content .item .txt-box .left {
        width: 100%;
    }
    .house-plan .tab-content .item .txt-box .right {
        flex: auto;
    }
    .house-plan .tab-content .item .txt-box .left {
        flex-direction: unset;
    }
    .house-plan .tab-content .item .txt-box .right ul li.col6 {
        width: 50%;
    }
    .house-plan .tab-content h3 {
        font-size: 2.5rem;
    }
    .house-plan .tab-content h3 .lg {
        font-size: 3.5rem;
        padding-right: 25px;
    }
}
@media(max-width:860px){
    .house-plan .tab-content .item .txt-box {
        flex: auto;
        padding-right: 0;
        padding-bottom: 20px;
    }
    .house-plan .tab-content .item .img {
        width: 100%;
        text-align: center;
        padding-bottom: 20px;
    }
    .house-plan .tab-content .item .img img{
        max-width: 280px;
        width: 100%;
    }
    .home .house-plan .ttl h2 {
        font-size: 5rem;
    }
    .home .house-plan .ttl {
        font-size: 1.8rem;
    }
    .home .house-plan .content {
        padding: 85px 20px 50px;
        margin-top: -58px;
    }
    .house-plan .tab-content h3,
    .house-plan .tab-content .item .txt-box .left .lg {
        font-size: 1.8rem;
    }
    .house-plan .tab-content .img-box .btn-zoom {
        max-width: 35px;
    }
    .house-plan .tab-content h3 {
        padding-top: 40px;
    }
}
@media(max-width:750px){
    .home .house-plan {
        padding-top: 40px;
    }
    .house-plan .nav-tabs li {
        padding-right: 10px;
    }
    .house-plan .nav-tabs .tab .lg {
        font-size: 1.6rem;
    }
    .house-plan .nav-tabs .tab .lg .no {
        font-size: 1.8rem;
    }
    .house-plan .nav-tabs .tab {
        font-size: 1.4rem;
    }
    .house-plan .tab-content h3 {
        padding-top: 25px;
    }
    .house-plan .tab-container {
        /* padding-top: 25px; */
    }
    .house-plan .tab-content h3 .lg {
       padding-right: 0;
       line-height: 1;
    }
    .house-plan .tab-content  .img-box .btn-zoom {
        max-width: 30px;
        bottom: 80px;
    }
    .home .house-plan .content {
        border-radius: 10px;
    }
}
@media(max-width:576px){
    .house-plan .nav-tabs {
        flex-wrap: wrap;
    }
    .house-plan .nav-tabs li {
        padding-right: 0;
    }
    .house-plan .nav-tabs .tab {
        background: unset;
        border: 2px solid #2778b0;
        border-left: unset;
        padding: 10px 0;
        line-height: 1.2;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    .house-plan .nav-tabs li:first-child .tab{
        border-left: 2px solid #2778b0;
    }
    .house-plan .nav-tabs .tab.active {
        background: #2778b0;
    }
    .house-plan .tab-content .item .txt-box .right ul li.col6 {
        width: 100%;
    }
    .house-plan .tab-content .item .txt-box .right ul {
        margin: 0;
    }
    .house-plan .tab-content .item .txt-box .right ul li {
        width: 100%;
        padding: 0px 0 10px;
    }
    .house-plan .tab-content .item .txt-box .left {
        flex-direction: column;
        padding-bottom: 10px;
    }
    .house-plan .tab-content .item .txt-box .right ul li.col4,
    .house-plan .tab-content .item .txt-box .right ul li.col2 {
        width: 100%;
    }
    .home .house-plan {
        padding-top: 20px;
    }
    .home .house-plan .content {
        padding: 65px 20px 30px;
    }
}
@media(max-width: 480px) {
    .home .house-plan .ttl h2 {
        font-size: 3.5rem;
    }
    .home .house-plan .ttl {
        font-size: 1.6rem;
    }
    .home .house-plan .content {
        padding: 50px 20px 25px;
        margin-top: -44px;
    }
    .house-plan .nav-tabs li {
        width: 100%;
    }
    .house-plan .nav-tabs li:first-child .tab {
        border-bottom: unset;
        border-top: 2px solid #2778b0;
    }
    .house-plan .nav-tabs .tab {
        border-left: 2px solid #2778b0;
    }
    .house-plan .nav-tabs li:last-child .tab {
        border-top: unset;
    }
}
@media(max-width: 414px){
    .house-plan .tab-content .img-box .btn-zoom {
        max-width: 20px;
        bottom: 70px;
        right: 18%;
    }
}
/* check-point =============================================== */
.home .check-point{
    padding-top: 90px;
}
.home .check-point h2.tl {
    font-size: 5.2rem;
    letter-spacing: .08em;
    line-height: 1;
    font-weight: 700;
    padding-bottom: 0;
}
.home .check-point h3 {
    font-size: 4rem;
    font-weight: 400;
    line-height: 1.4;
    padding-bottom: 30px;
}
.home .check-point h3 .md {
    font-weight: 500;
}
.home .check-point .item {
    padding-top: 65px;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.home .check-point .item .right {
    width: 40%;
}
.home .check-point .item .right .img {
    position: relative;
}
.home .check-point .item .right .tag {
    position: absolute;
    font-size: 1.4rem;
    line-height: 1;
    min-width: 122px;
    background: rgb(35, 24, 21, .7);
    text-align: center;
    color: #fff;
    padding: 6px 10px;
    right: 0;
    bottom: 16px;
}
.home .check-point .left{
    padding-left: 85px;
    flex: 1;
    padding-right: 20px;
}
.home .check-point .left p  {
    max-width: 530px;
}
.home .check-point h3 .no {
    line-height: 1;
    font-weight: 700;
    color: #fff;
    background: #2778b0;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: absolute;
    margin-top: 20px;
    left: 0;
}
.home .check-point h3 .no::before {
    content: "";
    position: absolute;
    width: 55px;
    height: 55px;
    border: 2px solid #2778b0;
    right: -4px;
    bottom: -4px;
}
.check-point .img-bottom {
    padding-top: 80px;
}
@media(max-width: 1050px){
    .home .check-point h3 {
        font-size: 2.5rem;
    }
    .home .check-point .item {
        font-size: 1.6rem;
    }
    .home .check-point h3 .no {
        margin-top: 5px;
    }
}
@media(max-width: 1050px){
    .home .check-point h3 .no {
        width: 40px;
        height: 40px;
    }
    .home .check-point h3 .no::before {
        width: 40px;
        height: 40px;
    }
    .home .check-point .left {
        padding-left: 55px;
    }
    .home .check-point .item {
        padding-top: 35px;
    }
}
@media(max-width: 750px){
    .home .check-point .left {
        flex: auto;
        padding-right: 0;
        padding-left: 0;
    }
    .home .check-point .item .right {
        width: 100%;
    }
    .home .check-point h3{
        padding-bottom: 15px;
    }
    .home .check-point h3 {
        padding-left: 60px;
        position: relative;
        font-size: 2rem;
    }
    .home .check-point h3 .no {
        top: 0px;
    }
    .home .check-point h2.tl{
        font-size: 3rem;
    }
    .home .check-point {
        padding-top: 50px;
    }
    .home .check-point .item {
        font-size: 1.4rem;
    }
    .home .check-point .item .right .img {
        margin-top: 15px;
    }
}

/* house-plan2 ================================================ */
.home .house-plan2{
    padding-top: 80px;
}
.home .house-plan2 .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    font-weight: 500;
}
.home .house-plan2 .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
    font-family: "Gothic A1", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
    line-height: 1.1;
}
.home .house-plan2 .content {
    background: #e0f2ff;
    border-radius: 30px;
    padding: 60px 50px 50px;
}
.home .house-plan2 .title-box h2 {
    max-width: 425px;
}

.house-plan2 .tab .lg {
    font-size: 3.2rem;
}
.house-plan2 .tab .lg .no {
    font-size: 3.5rem;
}

.house-plan2 .tab-content h3 {
    font-size: 2.4rem;
    line-height: 1.35;
    font-weight: 400;
}
.house-plan2 .tab-content h3 .lg{
    font-size: 5rem;
    padding-right: 35px;
}
.house-plan2 .tab-content .item {
    display: flex;
    flex-wrap: wrap;
}
.house-plan2 .tab-content .item .txt-box {
    display: flex;
    flex-wrap: wrap;
    padding-top: 15px;
    align-items: center;
    padding-bottom: 60px;
    padding-right: 45px;
    flex: 1;
}
.house-plan2 .tab-content .item .img {
    width: 37%;
}
.house-plan2 .tab-content .item .txt-box .left {
    width: 100%;
    line-height: 1.5;
    padding-right: 30px;
}
.house-plan2 .tab-content .item .txt-box .left .lg {
    font-size: 2.4rem;
    line-height: 1.9;
}
.house-plan2 .tab-content .item .txt-box .left .sm {
    font-size: 1.6rem;
    line-height: 1.7;
    padding-top: 12px;
    padding-bottom: 50px;
}
.house-plan2 .tab-content .item .txt-box .left .lg p:last-child{
    padding-bottom: 0;
}
.house-plan2 .tab-content .item .txt-box .right {
    flex: auto;
}
.house-plan2 .tab-content .item .txt-box .right ul {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    margin: 0 -7px;
}
.house-plan2 .tab-content .item .txt-box .right ul li {
    line-height: 1;
    display: block;
    font-size: 1.6rem;
    background: #2778b0;
    color: #fff;
    padding: 7px 10px;
    border: 2px solid #fef8f0;
}
.house-plan2 .tab-content .item .txt-box .right ul li.col6 {
    width: 50%;
}
.house-plan2 .tab-content .item .txt-box .right ul li.col2 {
    width: 21%;
}
.house-plan2 .tab-content .item .txt-box .right ul li.col4 {
    width: 29%;
}

.house-plan2 .tab-content  .img-box img{
    width: 100%;
}


@media(max-width:1150px){
    .house-plan2 .tab-content .item .txt-box .left .lg {
        font-size: 2rem;
    }
    .house-plan2 .tab-content .item .txt-box .left .sm {
        font-size: 1.4rem;
    }
    .house-plan2 .tab-content .item .txt-box .right ul li a {
        font-size: 1.6rem;
    }
}
@media(max-width:1100px) {
    .house-plan2 .tab-content .item .txt-box .right ul li a {
        font-size: 1.4rem;
    }
    .house-plan2 .tab .lg {
        font-size: 2.5rem;
    }
    .house-plan2 .tab {
        font-size: 2rem;
    }
    .home .house-plan2 .content {
        padding: 120px 20px 50px;
        margin-top: -78px;
    }
    .home .house-plan2 .ttl h2 {
        font-size: 7rem;
    }
    .house-plan2 .tab-content .item .txt-box {
        padding-right: 20px;
    }
}
@media(max-width:1024px){
    .house-plan2 .tab-content .item .txt-box .right ul li a {
        min-width: 110px;
    }
    .house-plan2 .tab-content .item .txt-box .right ul li.col2 {
        width: 50%;
    }
    .house-plan2 .tab-content .item .txt-box .right ul li.col4,
    .house-plan2 .tab-content .item .txt-box .right ul li {
        width: 50%;
    }
    .house-plan2 .tab-content .item .txt-box .left .sm {
        font-size: 1.4rem;
        padding-bottom: 10px;
        padding-top: 5px;
    }
}
@media(max-width:960px){
    .house-plan2 .tab .lg {
        font-size: 2rem;
    }
    .house-plan2 .tab .lg .no {
        font-size: 2.2rem;
    }
    .house-plan2 .tab {
        font-size: 1.8rem;
    }
    .house-plan2 .tab-content .item .txt-box .left {
        padding-right: 0;
    }
    .house-plan2 .tab-content .item .txt-box .left {
        width: 100%;
    }
    .house-plan2 .tab-content .item .txt-box .right {
        flex: auto;
    }
    .house-plan2 .tab-content .item .txt-box .left {
        flex-direction: unset;
    }
    .house-plan2 .tab-content .item .txt-box .right ul li.col6 {
        width: 50%;
    }
    .house-plan2 .tab-content h3 {
        font-size: 2.5rem;
    }
    .house-plan2 .tab-content h3 .lg {
        font-size: 3.5rem;
        padding-right: 25px;
    }
}
@media(max-width:860px){
    .house-plan2 .tab-content .item .txt-box {
        flex: auto;
        padding-right: 0;
        padding-bottom: 20px;
    }
    .house-plan2 .tab-content .item .img {
        width: 100%;
        text-align: center;
        padding-bottom: 20px;
    }
    .house-plan2 .tab-content .item .img img{
        max-width: 280px;
        width: 100%;
    }
    .home .house-plan2 .ttl h2 {
        font-size: 5rem;
    }
    .home .house-plan2 .ttl {
        font-size: 1.8rem;
    }
    .home .house-plan2 .content {
        padding: 85px 20px 50px;
        margin-top: -58px;
    }
    .house-plan2 .tab-content h3,
    .house-plan2 .tab-content .item .txt-box .left .lg {
        font-size: 1.8rem;
    }
    .house-plan2 .tab-content .img-box .btn-zoom {
        max-width: 35px;
    }
    .house-plan2 .tab-content h3 {
        padding-top: 40px;
    }
}
@media(max-width:750px){
    .home .house-plan2 {
        padding-top: 40px;
    }
    .house-plan2 li {
        padding-right: 10px;
    }
    .house-plan2 .tab .lg {
        font-size: 1.6rem;
    }
    .house-plan2 .tab .lg .no {
        font-size: 1.8rem;
    }
    .house-plan2 .tab {
        font-size: 1.4rem;
    }
    .house-plan2 .tab-content h3 {
        padding-top: 25px;
    }
    .house-plan2 .tab-container {
        /* padding-top: 25px; */
    }
    .house-plan2 .tab-content h3 .lg {
       padding-right: 0;
       line-height: 1;
    }
    .house-plan2 .tab-content  .img-box .btn-zoom {
        max-width: 30px;
        bottom: 80px;
    }
    .home .house-plan2 .content {
        border-radius: 10px;
    }
}
@media(max-width:576px){
    .house-plan2 li {
        padding-right: 0;
    }
    .house-plan2.tab {
        background: unset;
        border: 2px solid #E98C0A;
        border-left: unset;
        padding: 10px 0;
        line-height: 1.2;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    .house-plan2 li:first-child .tab{
        border-left: 2px solid #E98C0A;
    }
    .house-plan2 .tab-content .item .txt-box .right ul li.col6 {
        width: 100%;
    }
    .house-plan2 .tab-content .item .txt-box .right ul {
        margin: 0;
    }
    .house-plan2 .tab-content .item .txt-box .right ul li {
        width: 100%;
        padding: 0px 0 10px;
    }
    .house-plan2 .tab-content .item .txt-box .left {
        flex-direction: column;
        padding-bottom: 10px;
    }
    .house-plan2 .tab-content .item .txt-box .right ul li.col4,
    .house-plan2 .tab-content .item .txt-box .right ul li.col2 {
        width: 100%;
    }
    .home .house-plan2 {
        padding-top: 80px;
    }
    .home .house-plan2 .content {
        padding: 65px 20px 30px;
    }
}
@media(max-width: 480px) {
    .home .house-plan2 .ttl h2 {
        font-size: 3.5rem;
    }
    .home .house-plan2 .ttl {
        font-size: 1.6rem;
    }
    .home .house-plan2 .content {
        padding: 50px 20px 25px;
        margin-top: -44px;
    }
    .house-plan2 li {
        width: 100%;
    }
    .house-plan2 li:first-child .tab {
        border-bottom: unset;
        border-top: 2px solid #E98C0A;
    }
    .house-plan2 .tab {
        border-left: 2px solid #E98C0A;
    }
    .house-plan2 li:last-child .tab {
        border-top: unset;
    }
}
@media(max-width: 414px){
    .house-plan2 .tab-content .img-box .btn-zoom {
        max-width: 20px;
        bottom: 70px;
        right: 18%;
    }
}

/* reffer-plan ================================================ */
.home .reffer-plan{
    padding-top: 80px;
	position: relative;
}
.home .reffer-plan .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    font-weight: 500;
}
.home .reffer-plan .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
        color: #2778b0;
	font-weight: 900;
    line-height: 1.1;
}
.home .reffer-plan .content {
    background: #e0f2ff;
    border-radius: 30px;
    padding: 60px 50px 50px;
    margin-top: -91px;
}
.home .reffer-plan .title-box h2 {
    max-width: 425px;
}

.reffer-plan .tab .lg {
    font-size: 3.2rem;
}
.reffer-plan .tab .lg .no {
    font-size: 3.5rem;
}

.reffer-plan .tab-content h3 {
    font-size: 2.4rem;
    line-height: 1.35;
    font-weight: 400;
    padding-top: 85px;
}
.reffer-plan .tab-content h3 .lg{
    font-size: 5rem;
    padding-right: 35px;
}
.reffer-plan .tab-content .item {
    display: flex;
    flex-wrap: wrap;
}
.reffer-plan .tab-content .item .txt-box {
    display: flex;
    flex-wrap: wrap;
    padding-top: 15px;
    align-items: center;
    padding-bottom: 60px;
    padding-right: 45px;
    flex: 1;
}
.reffer-plan .tab-content .item .img {
    width: 37%;
}
.reffer-plan .tab-content .item .txt-box .left {
    width: 100%;
    line-height: 1.5;
    padding-right: 30px;
}
.reffer-plan .tab-content .item .txt-box .left .lg {
    font-size: 2.4rem;
    line-height: 1.9;
}
.reffer-plan .tab-content .item .txt-box .left .sm {
    font-size: 1.6rem;
    line-height: 1.7;
    padding-top: 12px;
    padding-bottom: 50px;
}
.reffer-plan .tab-content .item .txt-box .left .lg p:last-child{
    padding-bottom: 0;
}
.reffer-plan .tab-content .item .txt-box .right {
    flex: auto;
}
.reffer-plan .tab-content .item .txt-box .right ul {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    margin: 0 -7px;
}
.reffer-plan .tab-content .item .txt-box .right ul li {
    line-height: 1;
    display: block;
    font-size: 1.6rem;
    background: #2778b0;
    color: #fff;
    padding: 7px 10px;
    border: 2px solid #e0f2ff;
}
.reffer-plan .tab-content .item .txt-box .right ul li.col6 {
    width: 50%;
}
.reffer-plan .tab-content .item .txt-box .right ul li.col2 {
    width: 21%;
}
.reffer-plan .tab-content .item .txt-box .right ul li.col4 {
    width: 29%;
}

.reffer-plan .tab-content  .img-box img{
    width: 100%;
}


@media(max-width:1150px){
    .reffer-plan .tab-content .item .txt-box .left .lg {
        font-size: 2rem;
    }
    .reffer-plan .tab-content .item .txt-box .left .sm {
        font-size: 1.4rem;
    }
    .reffer-plan .tab-content .item .txt-box .right ul li a {
        font-size: 1.6rem;
    }
}
@media(max-width:1100px) {
    .reffer-plan .tab-content .item .txt-box .right ul li a {
        font-size: 1.4rem;
    }
    .reffer-plan .tab .lg {
        font-size: 2.5rem;
    }
    .reffer-plan .tab {
        font-size: 2rem;
    }
    .home .reffer-plan .content {
        padding: 120px 20px 50px;
        margin-top: -78px;
    }
    .home .reffer-plan .ttl h2 {
        font-size: 7rem;
    }
    .reffer-plan .tab-content .item .txt-box {
        padding-right: 20px;
    }
}
@media(max-width:1024px){
    .reffer-plan .tab-content .item .txt-box .right ul li a {
        min-width: 110px;
    }
    .reffer-plan .tab-content .item .txt-box .right ul li.col2 {
        width: 50%;
    }
    .reffer-plan .tab-content .item .txt-box .right ul li.col4,
    .reffer-plan .tab-content .item .txt-box .right ul li {
        width: 50%;
    }
    .reffer-plan .tab-content .item .txt-box .left .sm {
        font-size: 1.4rem;
        padding-bottom: 10px;
        padding-top: 5px;
    }
}
@media(max-width:960px){
    .reffer-plan .tab .lg {
        font-size: 2rem;
    }
    .reffer-plan .tab .lg .no {
        font-size: 2.2rem;
    }
    .reffer-plan .tab {
        font-size: 1.8rem;
    }
    .reffer-plan .tab-content .item .txt-box .left {
        padding-right: 0;
    }
    .reffer-plan .tab-content .item .txt-box .left {
        width: 100%;
    }
    .reffer-plan .tab-content .item .txt-box .right {
        flex: auto;
    }
    .reffer-plan .tab-content .item .txt-box .left {
        flex-direction: unset;
    }
    .reffer-plan .tab-content .item .txt-box .right ul li.col6 {
        width: 50%;
    }
    .reffer-plan .tab-content h3 {
        font-size: 2.5rem;
    }
    .reffer-plan .tab-content h3 .lg {
        font-size: 3.5rem;
        padding-right: 25px;
    }
}
@media(max-width:860px){
    .reffer-plan .tab-content .item .txt-box {
        flex: auto;
        padding-right: 0;
        padding-bottom: 20px;
    }
    .reffer-plan .tab-content .item .img {
        width: 100%;
        text-align: center;
        padding-bottom: 20px;
    }
    .reffer-plan .tab-content .item .img img{
        max-width: 280px;
        width: 100%;
    }
    .home .reffer-plan .ttl h2 {
        font-size: 5rem;
    }
    .home .reffer-plan .ttl {
        font-size: 1.8rem;
    }
    .home .reffer-plan .content {
        padding: 85px 20px 50px;
        margin-top: -58px;
    }
    .reffer-plan .tab-content h3,
    .reffer-plan .tab-content .item .txt-box .left .lg {
        font-size: 1.8rem;
    }
    .reffer-plan .tab-content .img-box .btn-zoom {
        max-width: 35px;
    }
    .reffer-plan .tab-content h3 {
        padding-top: 40px;
    }
}
@media(max-width:750px){
    .home .reffer-plan {
        padding-top: 40px;
    }
    .reffer-plan li {
        padding-right: 10px;
    }
    .reffer-plan .tab .lg {
        font-size: 1.6rem;
    }
    .reffer-plan .tab .lg .no {
        font-size: 1.8rem;
    }
    .reffer-plan .tab {
        font-size: 1.4rem;
    }
    .reffer-plan .tab-content h3 {
        padding-top: 25px;
    }
    .reffer-plan .tab-container {
        /* padding-top: 25px; */
    }
    .reffer-plan .tab-content h3 .lg {
       padding-right: 0;
       line-height: 1;
    }
    .reffer-plan .tab-content  .img-box .btn-zoom {
        max-width: 30px;
        bottom: 80px;
    }
    .home .reffer-plan .content {
        border-radius: 10px;
    }
}
@media(max-width:576px){
    .reffer-plan li {
        padding-right: 0;
    }
    .reffer-plan.tab {
        background: unset;
        border: 2px solid #2778b0;
        border-left: unset;
        padding: 10px 0;
        line-height: 1.2;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    .reffer-plan li:first-child .tab{
        border-left: 2px solid #2778b0;
    }
    .reffer-plan .tab-content .item .txt-box .right ul li.col6 {
        width: 100%;
    }
    .reffer-plan .tab-content .item .txt-box .right ul {
        margin: 0;
    }
    .reffer-plan .tab-content .item .txt-box .right ul li {
        width: 100%;
        padding: 0px 0 10px;
    }
    .reffer-plan .tab-content .item .txt-box .left {
        flex-direction: column;
        padding-bottom: 10px;
    }
    .reffer-plan .tab-content .item .txt-box .right ul li.col4,
    .reffer-plan .tab-content .item .txt-box .right ul li.col2 {
        width: 100%;
    }
    .home .reffer-plan {
        padding-top: 20px;
    }
    .home .reffer-plan .content {
        padding: 65px 20px 30px;
    }
}
@media(max-width: 480px) {
    .home .reffer-plan .ttl h2 {
        font-size: 3.5rem;
    }
    .home .reffer-plan .ttl {
        font-size: 1.6rem;
    }
    .home .reffer-plan .content {
        padding: 50px 20px 25px;
        margin-top: -44px;
    }
    .reffer-plan li {
        width: 100%;
    }
    .reffer-plan li:first-child .tab {
        border-bottom: unset;
        border-top: 2px solid #2778b0;
    }
    .reffer-plan .tab {
        border-left: 2px solid #2778b0;
    }
    .reffer-plan li:last-child .tab {
        border-top: unset;
    }
}
@media(max-width: 414px){
    .reffer-plan .tab-content .img-box .btn-zoom {
        max-width: 20px;
        bottom: 70px;
        right: 18%;
    }
}

/* item-content ============================================ */
.home .check-point h2 {
    font-size: 4rem;
    line-height: 1;
    font-weight: 400;
    padding-bottom: 35px;
}
.home .check-point  .item-content ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -22px;
}
.home .check-point  .item-content ul li {
    width: 50%;
    text-align: center;
    font-size: 3.2rem;
    letter-spacing: .12em;
    line-height: 1.2;
    padding: 0 22px;
}
.home .check-point  .item-content ul li .lg {
    line-height: 1.3;
    font-size: 5rem;
}
.home .check-point  .item-content ul li .lg .no {
    font-size: 7rem;
}
.home .check-point  .item-content ul li .inner {
    border: 2px solid #2778b0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 15px 10px 50px;
}
@media(max-width:1250px){
    .home .check-point  .item-content ul {
        margin: 0 -15px;
    } 
    .home .check-point  .item-content ul li {
        padding: 0 15px;
        font-size: 2.5rem;
    }
    .home .check-point  .item-content ul li .lg {
        line-height: 1.3;
        font-size: 3.5rem;
    }
    .home .check-point  .item-content ul li .lg .no {
        font-size: 5rem;
    }
    .home .check-point  .item-content ul li .inner {
        padding: 15px 10px 35px;
    }
}
@media(max-width:860px){
    .home .check-point  .item-content ul {
        margin: 0 -10px;
    } 
    .home .check-point  .item-content ul li {
        padding: 0 10px;
        font-size: 2rem;
    }
    .home .check-point  .item-content ul li .lg {
        font-size: 3rem;
    }
    .home .check-point  .item-content ul li .lg .no {
        font-size: 4rem;
    }
    .home .check-point  .item-content ul li .inner {
        padding: 15px 10px 30px;
    }
}
@media(max-width:750px){
    .home .check-point  .item-content {
        padding-top: 40px;
    }
    .home .check-point  .item-content ul {
        margin: 0 ;
    } 
    .home .check-point  .item-content ul li {
        padding: 0px 0 15px;
        font-size: 2rem;
        width: 100%;
    }
    .home .check-point  .item-content h2 {
        font-size: 2.5rem;
        padding-bottom: 25px;
    }
}
@media(max-width:374px){
    .home .check-point  .item-content ul li {
        font-size: 1.8rem;
    }
    .home .check-point  .item-content ul li .lg {
        font-size: 2.5rem;
    }
    .home .check-point  .item-content ul li .lg .no {
        font-size: 3.2rem;
    }
    .home .check-point  .item-content ul li .inner {
        padding: 15px 10px 20px;
    }
}
/* item-content ============================================ */
.home .check-point  .item-content {
    padding-top: 20px;
}
.home .check-point  .item-content.fm1 {
    padding-top: 70px
}
.home .check-point  .item-content h3 {
    font-size: 4rem;
    line-height: 1.4;
    font-weight: 400;
    padding: 0 0 30px;
}
.home .check-point  .item-content h3.fm1 {
    padding-bottom: 10px;
}
.home .check-point  .item-content img {
    width: 100%;
}
.home .check-point .item-content.fm1 ul {
    padding-top: 10px;
    align-items: center;
    margin: 0 -28px;
}
.home .check-point .item-content.fm1 ul li {
    font-size: 2.4rem;
    letter-spacing: .02em;
    line-height: 2;
    padding: 0 28px 30px;
}
.home .check-point .item-content.fm1 ul li .inner .lg {
    padding-bottom: 15px;
}
.home .check-point .item-content.fm1 ul li .img-logo{
    padding-bottom: 20px;
}
.home .check-point .item-content.fm1 ul li .img-logo a {
    display: block;
}
@media(max-width: 1250px){
    .home .check-point .item-content.fm1 ul {
        margin: 0 -15px;
    }
    .home .check-point .item-content.fm1 ul li {
        padding: 0 15px 0;
    }
}
@media(max-width:960px){
    .home .check-point .item-content.fm1 ul li,
    .home .check-point .item-content .txt  {
        font-size: 1.6rem;
    }
    .home .check-point .item-content{
        padding-top:50px;
    }
}
@media(max-width:750px){
    .home .check-point  .item-content h3 {
        font-size: 2.5rem;
        padding-bottom: 20px;
    }
    .home .check-point  .item-content {
        padding-top: 30px;
    }
    .home .check-point .item-content.fm1 ul li .inner {
        font-size: 1.6rem;
    }
    .home .check-point .item-content.fm1 ul {
        margin: 0;
    }
    .home .check-point .item-content.fm1 ul li {
        padding:  0 0 20px;
    }
    .home .check-point .item-content.fm1 ul {
        padding-top: 0;
    }
}
/* outline =================================================== */
.home .outline {
    padding-top: 150px;
    letter-spacing: .04em;
    padding-bottom: 120px;
}
.home .outline .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
        color: #2778b0;
	font-weight: 900;
    line-height: 1.1;
}
.home .outline .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    position: relative;
}
.home .outline .ttl::before,
.home .outline .ttl::after {
    content: "";
    position: absolute;
    background-size: 100% !important;
    z-index: -1;
}
.home .outline .ttl::before {
    width: 220px;
    height: 196px;
    background: url(images/img/out-line-bg01.png) no-repeat;
    left: 0;
    top: -55px;
}
.home .outline .ttl::after {
    width: 111px;
    height: 406px;
    background: url(images/img/out-line-bg02.png) no-repeat;
    right: 0;
    top: -75px;
}
.home .outline ul {
    padding-top: 80px;
    padding-bottom: 95px;
}
.home .outline ul li {
    display: flex; 
    line-height: 1.6;
    /* font-weight: 500; */
}
.home .outline ul li .lbl {
    width: 285px;
    display: inline-block;
    text-align: center;
    border-right: 4px solid #2778b0;
}
.home .outline ul li .desc {
    flex: 1;
    padding-left: 60px !important;
}
.home .outline ul li p{
    padding: 17px 0;
}
.home .outline ul li:last-child p {
    padding-bottom: 0;
}
.home .outline .txt-box h3 {
    font-size: 3.2rem;
    line-height: 1;
    font-weight: 400;
    padding-bottom: 15px;
}
@media(max-width: 1024px){
    .home .outline ul {
        font-size: 2rem;
    }
    .home .outline ul li .lbl {
        width: 210px;
    }
    .home .outline ul li .desc {
        padding-left: 20px !important;
    }
    .home .outline .txt-box h3 {
        font-size: 2.8rem;
    }
    .home .outline .txt-box {
        font-size: 2rem;
    }
    .home .outline ul {
        padding-bottom: 60px;
    }
    .home .outline {
        padding-top: 50px;
        padding-bottom: 60px;
    }
}
@media(max-width: 750px){
    .home .outline ul {
        font-size: 1.6rem;
    }
    .home .outline ul li .lbl {
        width: 150px;
    }
    .home .outline .txt-box h3 {
        font-size: 2rem;
    }
    .home .outline .txt-box {
        font-size: 1.6rem;
    }
    .home .outline ul li p {
        padding: 10px 0;
    }
    .home .outline ul {
        padding-bottom: 40px;
    }
    .home .outline .lb-sp{
        display: none
    }
    .home .outline ul {
        font-size: 1.4rem;
    }
    .home .outline ul li .lbl {
        width: 120px;
        border-right: 2px solid #2778b0;
    }
    .home .outline .txt-box {
        font-size: 1.4rem;
    }
    .home .outline .ttl::after {
        width: 80px;
        height: 297px;
        right: 0;
        top: -20px;
    }
    .home .outline .ttl::before {
        width: 120px;
        height: 108px;
        left: 0;
        top: 34px;
    }
    .home .outline .ttl h2 {
        font-size: 8rem;
    }
}
@media(max-width: 750px){
    .home .outline .lb-sp {
        display: block;
    }
    .home .outline .ttl h2 {
        font-size: 5rem;
    }
    .home .outline .ttl {
        font-size: 1.6rem;
    }
    .home .outline ul {
        padding-top: 30px;
    }
    .home .outline .ttl::before {
        top: 0px;
    }
    .home .check-point .item-content.fm1 {
        padding-top: 35px;
    }
}
@media(max-width:414px) {
    .home .outline .ttl h2 {
        font-size: 3.5rem;
    }
    .home .outline .ttl {
        font-size: 1.4rem;
    }
    .home .outline .ttl::after {
        width: 50px;
        height: 186px;
    }
    .home .outline .ttl::before {
        width: 80px;
        height: 73px;
        left: 0;
        top: -15px;
    }
}
@media(max-width: 374px){
    .home .outline {
        padding-top: 30px;
    }
}


/* news =================================================== */
.home .news {
    padding-top: 150px;
    letter-spacing: .04em;
    padding-bottom: 120px;
}
.home .news .ttl h2 {
    font-size: 9rem;
    letter-spacing: 0.1em;
    font-family: "Gothic A1", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
    line-height: 1.1;
}
.home .news .ttl {
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
    position: relative;
}
.home .news .ttl::before,
.home .news .ttl::after {
    content: "";
    position: absolute;
    background-size: 100% !important;
    z-index: -1;
}
.home .news .ttl::before {
    width: 220px;
    height: 196px;
    background: url(images/img/out-line-bg01.png) no-repeat;
    left: 0;
    top: -55px;
}
.home .news .ttl::after {
    width: 111px;
    height: 406px;
    background: url(images/img/out-line-bg02.png) no-repeat;
    right: 0;
    top: -75px;
}
.home .news ul {
    padding-top: 80px;
    padding-bottom: 95px;
}
.home .news ul li {
    display: flex; 
    line-height: 1.6;
    /* font-weight: 500; */
}
.home .news ul li .lbl {
    width: 285px;
    display: inline-block;
    text-align: center;
    border-right: 4px solid #2778b0;
}
.home .news ul li .desc {
    flex: 1;
    padding-left: 60px !important;
}
.home .news ul li p{
    padding: 17px 0;
}
.home .news ul li:last-child p {
    padding-bottom: 0;
}
.home .news .txt-box h3 {
    font-size: 3.2rem;
    line-height: 1;
    font-weight: 400;
    padding-bottom: 15px;
}
@media(max-width: 1024px){
    .home .news ul {
        font-size: 2rem;
    }
    .home .news ul li .lbl {
        width: 210px;
    }
    .home .news ul li .desc {
        padding-left: 20px !important;
    }
    .home .news .txt-box h3 {
        font-size: 2.8rem;
    }
    .home .news .txt-box {
        font-size: 2rem;
    }
    .home .news ul {
        padding-bottom: 60px;
    }
    .home .news {
        padding-top: 50px;
        padding-bottom: 60px;
    }
}
@media(max-width: 750px){
    .home .news ul {
        font-size: 1.6rem;
    }
    .home .news ul li .lbl {
        width: 150px;
    }
    .home .news .txt-box h3 {
        font-size: 2rem;
    }
    .home .news .txt-box {
        font-size: 1.6rem;
    }
    .home .news ul li p {
        padding: 10px 0;
    }
    .home .news ul {
        padding-bottom: 40px;
    }
    .home .news .lb-sp{
        display: none
    }
    .home .news ul {
        font-size: 1.4rem;
    }
    .home .news ul li .lbl {
        width: 120px;
        border-right: 2px solid #2778b0;
    }
    .home .news .txt-box {
        font-size: 1.4rem;
    }
    .home .news .ttl::after {
        width: 80px;
        height: 297px;
        right: 0;
        top: -20px;
    }
    .home .news .ttl::before {
        width: 120px;
        height: 108px;
        left: 0;
        top: 34px;
    }
    .home .news .ttl h2 {
        font-size: 8rem;
    }
}
@media(max-width: 750px){
    .home .news .lb-sp {
        display: block;
    }
    .home .news .ttl h2 {
        font-size: 5rem;
    }
    .home .news .ttl {
        font-size: 1.6rem;
    }
    .home .news ul {
        padding-top: 30px;
    }
    .home .news .ttl::before {
        top: 0px;
    }
    .home .check-point .item-content.fm1 {
        padding-top: 35px;
    }
}
@media(max-width:414px) {
    .home .news .ttl h2 {
        font-size: 3.5rem;
    }
    .home .news .ttl {
        font-size: 1.4rem;
    }
    .home .news .ttl::after {
        width: 50px;
        height: 186px;
    }
    .home .news .ttl::before {
        width: 80px;
        height: 73px;
        left: 0;
        top: -15px;
    }
}
@media(max-width: 374px){
    .home .news {
        padding-top: 30px;
    }
}

/* news-point =============================================== */
.home .news-point{
    padding-top: 90px;
}
.home .news-point h2.tl {
    font-size: 5.2rem;
    letter-spacing: .08em;
    line-height: 1;
    font-weight: 700;
    padding-bottom: 0;
}
.home .news-point h3 {
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.4;
    padding-bottom: 30px;
}
.home .news-point h3 .md {
    font-weight: 500;
}
.home .news-point .item {
    padding-top: 65px;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.home .news-point .item .right {
    width: 40%;
}
.home .news-point .item .right .img {
    position: relative;
}
.home .news-point .item .right .tag {
    position: absolute;
    font-size: 1.4rem;
    line-height: 1;
    min-width: 122px;
    background: rgb(35, 24, 21, .7);
    text-align: center;
    color: #fff;
    padding: 6px 10px;
    right: 0;
    bottom: 16px;
}

.home .news-point .left{
    padding-left: 85px;
    flex: 1;
    padding-right: 20px;
}
.home .news-point .left p  {
    max-width: 530px;
}
.home .news-point h3 .no {
    line-height: 1;
    font-weight: 700;
    color: #fff;
    background: #2778b0;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: absolute;
    margin-top: 20px;
    left: 0;
}
.home .news-point h3 .no::before {
    content: "";
    position: absolute;
    width: 55px;
    height: 55px;
    border: 2px solid #2778b0;
    right: -4px;
    bottom: -4px;
}
.news-point .img-bottom {
    padding-top: 80px;
}
@media(max-width: 1050px){
    .home .news-point h3 {
        font-size: 2.5rem;
    }
    .home .news-point .item {
        font-size: 1.6rem;
    }
    .home .news-point h3 .no {
        margin-top: 5px;
    }
}
@media(max-width: 1050px){
    .home .news-point h3 .no {
        width: 40px;
        height: 40px;
    }
    .home .news-point h3 .no::before {
        width: 40px;
        height: 40px;
    }
    .home .news-point .left {
        padding-left: 55px;
    }
    .home .news-point .item {
        padding-top: 35px;
    }
}
@media(max-width: 750px){
    .home .news-point .left {
        flex: auto;
        padding-right: 0;
        padding-left: 0;
    }
    .home .news-point .item .right {
        width: 100%;
    }
    .home .news-point h3{
        padding-bottom: 15px;
    }
    .home .news-point h3 {
        padding-left: 0px;
        position: relative;
        font-size: 2rem;
    }
    .home .news-point h3 .no {
        top: 0px;
    }
    .home .news-point h2.tl{
        font-size: 3rem;
    }
    .home .news-point {
        padding-top: 50px;
    }
    .home .news-point .item {
        font-size: 1.4rem;
    }
    .home .news-point .item .right .img {
        margin-top: 15px;
    }
}
/* item-content ============================================ */
.home .news-point h2 {
    font-size: 4rem;
    line-height: 1;
    font-weight: 400;
    padding-bottom: 35px;
}
.home .news-point  .item-content ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -22px;
}
.home .news-point  .item-content ul li {
    width: 50%;
    text-align: center;
    font-size: 3.2rem;
    letter-spacing: .12em;
    line-height: 1.2;
    padding: 0 22px;
}
.home .news-point  .item-content ul li .lg {
    line-height: 1.3;
    font-size: 5rem;
}
.home .news-point  .item-content ul li .lg .no {
    font-size: 7rem;
}
.home .news-point  .item-content ul li .inner {
    border: 2px solid #2778b0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 15px 10px 50px;
}
@media(max-width:1250px){
    .home .news-point  .item-content ul {
        margin: 0 -15px;
    } 
    .home .news-point  .item-content ul li {
        padding: 0 15px;
        font-size: 2.5rem;
    }
    .home .news-point  .item-content ul li .lg {
        line-height: 1.3;
        font-size: 3.5rem;
    }
    .home .news-point  .item-content ul li .lg .no {
        font-size: 5rem;
    }
    .home .news-point  .item-content ul li .inner {
        padding: 15px 10px 35px;
    }
}
@media(max-width:860px){
    .home .news-point  .item-content ul {
        margin: 0 -10px;
    } 
    .home .news-point  .item-content ul li {
        padding: 0 10px;
        font-size: 2rem;
    }
    .home .news-point  .item-content ul li .lg {
        font-size: 3rem;
    }
    .home .news-point  .item-content ul li .lg .no {
        font-size: 4rem;
    }
    .home .news-point  .item-content ul li .inner {
        padding: 15px 10px 30px;
    }
}
@media(max-width:750px){
    .home .news-point  .item-content {
        padding-top: 40px;
    }
    .home .news-point  .item-content ul {
        margin: 0 ;
    } 
    .home .news-point  .item-content ul li {
        padding: 0px 0 15px;
        font-size: 2rem;
        width: 100%;
    }
    .home .news-point  .item-content h2 {
        font-size: 2.5rem;
        padding-bottom: 25px;
    }
}
@media(max-width:374px){
    .home .news-point  .item-content ul li {
        font-size: 1.8rem;
    }
    .home .news-point  .item-content ul li .lg {
        font-size: 2.5rem;
    }
    .home .news-point  .item-content ul li .lg .no {
        font-size: 3.2rem;
    }
    .home .news-point  .item-content ul li .inner {
        padding: 15px 10px 20px;
    }
}
/* item-content ============================================ */
.home .news-point  .item-content {
    padding-top: 20px;
}
.home .news-point  .item-content.fm1 {
    padding-top: 70px
}
.home .news-point  .item-content h3 {
    font-size: 4rem;
    line-height: 1.4;
    font-weight: 400;
    padding: 0 0 30px;
}
.home .news-point  .item-content h3.fm1 {
    padding-bottom: 10px;
}
.home .news-point  .item-content img {
    width: 100%;
}
.home .news-point .item-content.fm1 ul {
    padding-top: 10px;
    align-items: center;
    margin: 0 -28px;
}
.home .news-point .item-content.fm1 ul li {
    font-size: 2.4rem;
    letter-spacing: .02em;
    line-height: 2;
    padding: 0 28px 30px;
}
.home .news-point .item-content.fm1 ul li .inner .lg {
    padding-bottom: 15px;
}
.home .news-point .item-content.fm1 ul li .img-logo{
    padding-bottom: 20px;
}
.home .news-point .item-content.fm1 ul li .img-logo a {
    display: block;
}
@media(max-width: 1250px){
    .home .news-point .item-content.fm1 ul {
        margin: 0 -15px;
    }
    .home .news-point .item-content.fm1 ul li {
        padding: 0 15px 0;
    }
}
@media(max-width:960px){
    .home .news-point .item-content.fm1 ul li,
    .home .news-point .item-content .txt  {
        font-size: 1.6rem;
    }
    .home .news-point .item-content{
        padding-top:50px;
    }
}
@media(max-width:750px){
    .home .news-point  .item-content h3 {
        font-size: 2.5rem;
        padding-bottom: 20px;
    }
    .home .news-point  .item-content {
        padding-top: 30px;
    }
    .home .news-point .item-content.fm1 ul li .inner {
        font-size: 1.6rem;
    }
    .home .news-point .item-content.fm1 ul {
        margin: 0;
    }
    .home .news-point .item-content.fm1 ul li {
        padding:  0 0 20px;
    }
    .home .news-point .item-content.fm1 ul {
        padding-top: 0;
    }
}
/*
==============================================================
========================== End home ==========================
==============================================================
*/
.flow-sidebar{
    position: fixed;
    top: 100px;
    right: 0;
    z-index: 100;
    padding: 20px;
    padding: 30px 35px 30px 25px;
    display: none;
}
.flow-sidebar li {
    padding: 11px 0;
    position: relative;
}
.flow-sidebar li a {
    display: block;
    padding: 0 38px 0 0;
    font-size: 2rem;
    color: #92bddb;
    transition: .3s;
    position: relative;
    line-height: 1.2;
    letter-spacing: .1em;
    text-align: right;
    font-weight: 300;
}
.flow-sidebar li.lbl a{
    padding-left: 0;
}
.flow-sidebar li.lbl{
    padding-bottom: 0;
}
.flow-sidebar li span {
    display: inline-block;
    vertical-align: middle;
}
.flow-sidebar li .circle {
    width: 20px;
    height: 20px;
    margin-right: 18px;
    border-radius: 50%;
    background: #92bddb;
    transition: .3s;
    position: absolute;
    right: 0px;
    top: 0;
    bottom: 0;
    margin: auto 0;
}
.flow-sidebar li.after::after {
    content: "";
    display: block;
    width: 2px;
    height: 100%;
    background: #92bddb;
    position: absolute;
    top: 17px;
    right: 9px;
    z-index: -1;
}
@media(hover:hover){
    .flow-sidebar li a:hover {
        color: #2778b0;
    }
    .flow-sidebar li a:hover .circle {
        transform: scale(1.2);
        background: #2778b0;
    }
}
@media(hover:none){
    .flow-sidebar li a:active {
        color: #2778b0;
    }
    .flow-sidebar li a:active .circle {
        transform: scale(1.2);
        background: #2778b0;
    }
}
.flow-sidebar a.is-active {
    color: #2778b0;
}
.flow-sidebar a.is-active .circle {
    transform: scale(1.2);
    top: 2px;
    background: #2778b0;
}
@media(max-width:1024px){
    .flow-sidebar{
        padding: 30px 15px 30px 25px;
    }
}
@media(max-width: 768px){
    .flow-sidebar{
        display: none !important;
    }
}
[data-zoom-backdrop] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.9);
    display: none;
    z-index: 99999999;
    text-align: center;
}

[data-zoom-backdrop].active {
    display: block;
}
[data-zoom-backdrop].active img {
    max-height: 100%;
}
.zoomable-image.zoomed {
    transition: transform 0.3s ease;
    z-index: 999999999;
    position: relative;
    height: 90%;
    padding: 5% 20px 5% 20px;
    object-fit: contain;
    object-position: center;
}

.add_cvbtnbox{
 display: flex;
 justify-content: center;
 padding: 100px 0 100px;
}
.add_cvbtnbox a{
 display: block;
 width: 44%;
 padding: 20px 0;
 color: #FFF;
 background-color: #2778b0;
 text-align: center;
 margin: 0 3%;
}
.add_cvbtnbox a:hover{
 opacity: 0.8;
 transition: 0.4s;
}
@media(max-width: 750px){
 .add_cvbtnbox{
  flex-direction: column;
  padding: 30px 0 30px;
 }
 .add_cvbtnbox a{
  display: block;
  width: 100%;
  padding: 15px 0;
  color: #FFF;
  background-color: #2778b0;
  text-align: center;
  margin: 0 0 20px;
  font-size: 20px;
  font-weight: bold;
 }
}

.side_cvbtn{
 position: fixed;
 top: 400px;
 right: 0;
 z-index: 100;
}
.side_cvbtn a{
 display: block;
 padding: 20px 20px;
 color: #FFF;
 background-color: #2778b0;
 text-align: center;
 margin: 0 0 10px;
 font-size: 20px;
 font-weight: bold;
 line-height: 1.2;
}
.side_cvbtn a:hover{
 opacity: 0.8;
 transition: 0.4s;
}
@media(max-width: 750px){
 .side_cvbtn{
  display: none;
 }
}

/* 汎用クラス
*****************************************************/
.pcDisp{display:block;}
.spDisp{display:none;}

/* スマホサイズ
------------------------------------------------------------*/
@media only screen and (max-width:644px){
.pcDisp{display:none;}
.spDisp{display:block;}
}