@charset "UTF-8";@import "base.css";@import "fonts.css";@import url('https://fonts.googleapis.com/css2?family=Cormorant:wght@300;400;500;600;700&display=swap');@import url('https://fonts.googleapis.com/css2?family=Tiro+Telugu&display=swap');@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap');/*==========================================================================*//*                                                                          *//*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      *//*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      *//*                                                                          *//*==========================================================================*//*==========================================================================*//*                           Common-Setting                                 *//*==========================================================================*//* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {    -webkit-text-size-adjust: none;    font-weight: 400;}a {    transition: all ease 0.3s;    text-decoration: none;    color: var(--txt);}img {    vertical-align: middle;    max-width: 100%;    flex-shrink: 0;    height: auto;}li{  list-style: none;}*,::before,::after {    box-sizing: border-box;    outline: none;}select {    visibility: visible !important;}a[href^="tel:"] {    word-break: keep-all;}/*==========================================================================*//*                               Container                                  *//*==========================================================================*/html {    background: #fff}body {    color: var(--txt);    -webkit-text-size-adjust: none;    min-width: 320px;    font-family: var(--font-main)}table {    width: 100%}h1, h2, h3, h4, h5, h6 {    line-height: 1.5;}p,dd,dt,li,th,td,address {    line-height: 2em;    letter-spacing: 0;}p {    margin: 0 0 1.5em;}p:last-child {    margin-bottom: 0}:root {    --font-main: '游ゴシック体", "Yu Gothic", YuGothic, sans-serif';    /* FONT SITE */    --txt: #000;    /* COLOR TEXT */    --mcolor: #aaa082;    /* MAIN COLOR  */    --scolor: #7d82aa;    /* SUB COLOR */    --site_size: 1280px;    /* SIZE WRAPPER */    /* CUSTOM COLOR */    --f-nts: 'Noto Sans JP', sans-serif;    --f-nsr: 'Noto Serif JP', serif;    --f-cor: 'Cormorant', serif;    --f-yumin: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;    --f-quick: 'Quicksand', sans-serif;    --f-tiro: 'Tiro Telugu', serif;    /* --f-yugo: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif; */}#wrapper {    overflow: hidden;    margin: 0 auto;    max-width: 100%;}/* .inner{width: var(--site_size);margin:0 auto;position:relative;max-width: 100%;padding: 0px;} */.inner {    width: var(--site_size);    margin: 0 auto;    position: relative;    max-width: 100%;    padding: 0 50px 0 45px;}/*==========================================================                      C U S T O M ==========================================================*/.flex_wrap {    display: flex;    flex-wrap: wrap}.flex_center {    display: flex;    justify-content: center;    align-items: center;}.flex_between {    display: flex;    justify-content: space-between;}.flex_align {    display: flex;    align-items: center;    justify-content: space-between}.flex_col {    display: flex;    flex-direction: column;}.flex_col_center {    display: flex;    justify-content: center;    align-items: center;    flex-direction: column;}.fixed {    position: fixed;}.posr {    position: relative}.bold {    font-weight: bold;}.center {    text-align: center}.left {    text-align: left}.right {    text-align: right}.auto {    margin-left: auto;    margin-right: auto;}.red {    color: var(--red);}.txt_line {    text-decoration: underline;}.m0a {    display: block;    margin: 0 auto;}.f_big {    font-size: 150%;}.f_sm {    font-size: 90%;    color: var(--txt);    font-weight: 500;}figure {    margin: 0;    text-align: center;    line-height: 1;}/*==========================================================                       H E A D E R==========================================================*/header {    width: 100%;    position: fixed;    background-color: rgba(255, 255, 255, 0.4);    height: 100px;    padding-top: 18px;    ;    left: 0;    z-index: 20;}.under .h_inner, .h_inner {    display: flex;    justify-content: space-between;    align-items: center;    height: 100%;    padding: 0 20px;}.under .h_inner, .h_inner {    max-width: 1280px;    width: 100% !important;}.h_contact {    display: flex;    align-items: center;    width: 233px;    height: 40px;    background-color: #aaa182;    padding: 0 6px;    justify-content: space-between;    margin-left: 25px;}.h_contact>p {    margin-bottom: 0;}.h_right {    display: flex;    align-items: center;}.nav_menu_sp {    display: flex;    align-items: center;}.h_menu>ul {    display: flex;}.h_menu>ul>li>p {  margin-bottom: 0;}.h_menu>ul>li>a, .h_menu>ul>li>p {    display: block;    font-family: var(--f-yumin);    font-size: 13px;    color: #231815;    font-weight: 500;    line-height: 1.4;    transition: .3s ease-in-out;}.h_menu>ul>li {    position: relative;    padding: 0 7px;  display: flex;  align-items: center;}.h_menu>ul>li:first-child::before {    content: '';    position: absolute;    top: 12px;    left: 0;    width: 2px;    height: 15px;    background-color: #b6b7bc;}.h_menu>ul>li::after {    content: '';    position: absolute;    top: 12px;    right: 0;    width: 2px;    height: 15px;    background-color: #b6b7bc;}.h_menu>ul>li:last-child::after {    display: none;}.h_contact_mail {    width: 95px;    height: 27px;    border: 1px solid #fff;    display: flex;    justify-content: center;    align-items: center;    transition: .3s ease-in-out;}.h_contact_tel a {    display: block;    font-family: var(--f-cor);    font-size: 18px;    color: #fff;    line-height: 1;    font-weight: 600;    position: relative;    padding-left: 17px;}.h_contact_tel {    transform: translateY(-2px);    font-size: 18px;}.h_contact_tel a::before {    content: '';    position: absolute;    top: 6px;    left: 3px;    width: 10px;    height: 11px;    background-image: url(../images/phone_ic.png);    background-repeat: no-repeat;    background-size: cover;}@supports (background-image: url(../images/phone_ic.png)) {    .h_contact_tel a::before {        background-image: url(../images/phone_ic.webp);    }}.h_contact_mail a {    font-family: var(--f-nts);    font-size: 10px;    color: #fff;    display: block;    line-height: 1;    font-weight: 300;    position: relative;    padding-left: 15px;}.h_contact_mail a::before {    content: '';    position: absolute;    left: -3px;    top: 1px;    width: 11px;    height: 8px;    background-image: url(../images/mail_ic.png);    background-repeat: no-repeat;    background-size: cover;}@supports (background-image: url(../images/mail_ic.png)) {    .h_contact_mail a::before {        background-image: url(../images/mail_ic.webp);    }}.h_menu>ul>li>.subInner {    position: absolute;    width: 220px;    right: 50%;    bottom: -15px;    padding-top: 0;    transform: translate(50%, 100%);    transition: all .2s ease-in-out;    opacity: 0;    visibility: hidden;    z-index: 1}.h_menu>ul .subInner.active {    opacity: 1;    visibility: visible}.h_menu>ul .subInner ul {    background-color: rgba(255, 255, 255, 0.8);    padding-bottom: 10px}.h_menu>ul .subInner ul li {    padding: 0 10px}.h_menu>ul .subInner ul li a {    position: relative;    display: block;    padding: 14px 10px;    border-bottom: 1px dashed var(--txt);    transition: all .2s ease;    font-size: 14px;    font-weight: 500;    color: var(--txt);    text-decoration: none;    text-align: left;    letter-spacing: 0}.h_menu>ul .submenu ul {    background-color: transparent;    padding-bottom: 0;}.h_menu>ul .submenu ul li {    padding: 0;}.h_menu>ul .submenu ul li a {    padding: 14px 10px 14px 28px}.h_menu>ul .submenu ul li a:before {    content: "";    display: block;    position: absolute;    top: 50%;    left: 10px;    transform: translateY(-50%);    font-size: 14px;    width: 10px;    height: 2px;    background-color: var(--txt);}.h_menu>ul .subInner ul li a:hover {    background-color: rgba(170, 161, 130, 0.1);}.h_menu>ul>li.sub01>.subInner {    width: 500px;}.h_menu>ul>li.sub01>.subInner>ul, .h_menu>ul>li.sub02>.subInner>ul {    display: flex;    flex-flow: column wrap;}.h_menu>ul>li.sub01>.subInner>ul>li, .h_menu>ul>li.sub02>.subInner>ul>li {    width: 50%;}.h_menu>ul>li.sub01>.subInner>ul {    max-height: 417px;}.h_menu>ul>li.sub02>.subInner {    width: 500px;}.h_menu>ul>li.sub02>.subInner>ul {    max-height: 531px;}/* HAMBUGER BUTTON */.hamburger {    width: 45px;    height: 45px;    border-radius: 50%;    background-color: #fff;    display: flex;    align-items: center;    justify-content: center;}.hamburger p {    width: 30px;    height: 2px;    background-color: #000;    position: relative;    transition: .3s ease-in-out;}.hamburger p::before {    content: '';    position: absolute;    top: -7px;    width: 70%;    height: 100%;    background-color: #000;    transition: .3s ease-in-out;}.hamburger p::after {    content: '';    position: absolute;    bottom: -7px;    width: 70%;    height: 100%;    background-color: #000;    transition: .3s ease-in-out;}/*==========================================================                  M A I N    V I S U A L==========================================================*/main {    position: relative;    padding-top: 0;    z-index: 2;}.mv {    z-index: 2;}.mv_bg {    height: 100vh;    max-height: 100%;    position: relative;    overflow: hidden;}.mv_bg {    position: relative;}.mv_bg ul {    height: 100%;}.mv_bg li {    height: 100%;}.mv_bg li img {    width: 100%;    height: 100%;    object-fit: cover;}.mv_bg::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(125, 130, 170, 0.5);    z-index: 1;}.content_mv {    position: absolute;    bottom: 17px;    display: flex;    padding: 0 0 0 0;    align-items: flex-end;    width: 100%;    justify-content: center;    left: -50px;    z-index: 3;}.mv .slick-list, .mv .slick-track {    height: 100%;}h2.h2_mv {    font-family: var(--f-tiro);    font-size: 80px;    color: #fff;    text-transform: uppercase;    letter-spacing: 0.039em;}.desc_mv p {    font-family: var(--f-nsr);    font-size: 30px;    color: #fff;    line-height: 1.5;    margin-bottom: 18px;    letter-spacing: 0;    font-weight: 300;}.desc_mv {    margin-left: 65px;}.desc_mv span {    font-family: var(--f-nsr);    font-size: 20px;    display: block;    color: #fff;    line-height: 1.5;    margin-bottom: 26px;    letter-spacing: 0.035em;    font-weight: 300;}@keyframes zoomImg {    0% {        transform: scale(1.2)    }    100% {        transform: scale(1.0)    }}/*==========================================================                M A I N    C O N T E N T==========================================================*//* DEFAULT TITLE */.title {    text-align: center;    font-weight: bold;}.title span {    display: block;}.title .ja {    font-size: 32px;}.title .en {    font-size: 16px;}/* DEFAUTL NAME BUTTON */.btn a {    display: flex;    justify-content: center;    align-items: center;    width: 210px;    height: 42px;    border: 1px solid #7d82aa;    border-radius: 999px;    font-family: var(--f-quick);    font-size: 14px;    color: #7d82aa;    font-weight: bold;    position: relative;    line-height: 1.6;}.btn a::after {    content: '';    position: absolute;    top: 16px;    right: 20px;    background-image: url(../images/btn_ic.png);    background-size: cover;    background-repeat: no-repeat;    width: 16px;    height: 8px;    transition: .3s ease-in-out;}@supports (background-image: url(../images/btn_ic.png)) {    .btn a::after {        background-image: url(../images/btn_ic.webp);    }}.btn_box {    display: flex;    align-items: center;    flex-wrap: wrap;    justify-content: center;    width: calc(100% + 20px);    margin-left: -10px;}.btn_box .btn {    margin: 10px;}h3.title_h3 {    text-align: center;    display: inline-flex;    flex-direction: column;    margin-left: auto;    margin-right: auto;}h3.title_h3 span {    display: inline-block;    width: auto;    line-height: 1.4;    margin-bottom: 11px;}h3.title_h3 span.en {    font-family: var(--f-tiro);    font-size: 40px;    color: #aaa082;    position: relative;}h3.title_h3 span.en::before {    content: '';    position: absolute;    bottom: 3px;    left: -25px;    width: calc(100% + 50px);    height: 1px;    background-color: var(--mcolor);}h3.title_h3 span.ja {    font-family: var(--f-yumin);    font-size: 20px;    font-weight: 600;}.flex_center {    display: flex;    justify-content: center;}/* use private *//*==================== SEC01 ===================*/.sec01 {    background-image: url(../images/sec01_img1.jpg);    background-repeat: no-repeat;    background-size: cover;    min-height: 930px;    position: relative;    padding-top: 110px;    padding-bottom: 55px;    background-position: right;}@supports (background-image: url(../images/sec01_img1.jpg)) {    .sec01{        background-image: url(../images/sec01_img1.webp);    }}.sec01::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(255, 255, 255, 0.3);}.sec01_tag {    width: 500px;    height: 315px;    background-color: rgba(255, 255, 255, 0.5);    margin-left: 96px;    display: flex;    flex-direction: column;    align-items: center;    justify-content: center;}.sec01_tag p {    display: block;    font-family: var(--f-yumin);    font-size: 14px;    line-height: 2;    text-align: center;    letter-spacing: 0.01em;    font-weight: bold;}.sec01_tag .tl {    font-size: 20px;    font-family: var(--f-yumin);    margin-bottom: 15px;    text-align: center;    line-height: 1.6;    letter-spacing: 0.3em;    font-weight: bold;}.sec01_content {    margin-top: 87px;}.sec01_list {    display: flex;    flex-wrap: wrap;    margin: -12.5px -15px;    justify-content: center;}.sec01_step {    width: 270px;    height: 170px;    margin: 12.5px 15px;    display: flex;    justify-content: center;    align-items: center;    position: relative;    z-index: 2;    transition: .3s ease-in-out;}.sec01_step::before {    content: '';    position: absolute;    top: -8px;    left: -8px;    width: 100%;    height: 100%;    border: 2px solid #c9c4b8;    pointer-events: none;}.sec01_content .txt {    position: relative;    z-index: 2;    background-image: url(../images/sec01_step.jpg);    background-repeat: no-repeat;    background-size: cover;    width: 100%;    height: 100%;    display: flex;    justify-content: center;    align-items: center;}@supports (background-image: url(../images/sec01_step.jpg)) {    .sec01_content .txt {        background-image: url(../images/sec01_step.webp);    }}.sec01_step a {    font-family: var(--f-yumin);    color: #fff;    line-height: 1.6;    font-size: 20px;    letter-spacing: 0.3em;    text-align: center;    display: block;}/*==================== SEC02 ===================*/.sec02 {    background-image: url(../images/sec02_bg.jpg);    background-size: 100%;    min-height: 1600px;    padding: 105px 0 45px 0;    background-position: top;}@supports (background-image: url(../images/sec02_bg.jpg)) {    .sec02{        background-image: url(../images/sec02_bg.webp);    }}.sec02_point {    display: flex;    justify-content: center;}.sec02_point:not(:last-child) {    margin-bottom: 90px;}.sec02_img {    border-radius: 20px;    min-width: 530px;}.sec02_img img {    border-radius: 20px;}.num_point {    margin-bottom: 10px;}/* .desc_point{padding-left: 50px;} */.num_point p {    font-family: var(--f-quick);    color: #7d82aa;    font-size: 18px;    font-weight: 700;    line-height: 1.4;    margin-bottom: 0;    text-align: center;    transform: translate(-35px, 0);}.sec02_content {    margin-top: 45px;    padding-bottom: 50px;}.sec02_info {    width: 500px;    display: block;    flex-direction: column;    align-items: center;    justify-content: center;    padding-top: 48px;    margin-right: 0;}.desc_point p {    font-size: 20px;    font-family: var(--f-yumin);    color: #231815;    margin-bottom: 15px;    letter-spacing: 0.3em;    font-weight: 700;}.desc_point span {    display: block;    font-family: var(--f-yumin);    font-size: 14px;    width: 352px;    line-height: 2;    letter-spacing: 0.045em;    margin-left: 50px;    font-weight: 700;}.sec02_btn {    margin-top: 65px;    margin-left: 186px;}/*==================== SEC03 ===================*/.sec03_content {    padding: 82px 0 38px;    position: relative;    z-index: 2;}.sec03_list {    margin-top: 40px;    display: flex;}.sec03_ct {    width: calc((6/12 * 100%));    position: relative;}.sec03_img {    position: relative;}.sec03_img::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(170, 160, 130, 0.4);    transition: .3s ease-in-out;    pointer-events: none;}.sec03_img img {    width: 100%;    height: auto;}.sec03_desc {    position: absolute;    top: 90%;    left: 0;    width: 100%;    background-color: #fff;    padding: 0;    opacity: 0;    visibility: hidden;    transition: .3s ease-in-out;    padding-top: 35px;}.sec03_desc li a {    font-family: var(--f-yumin);    font-size: 18px;    line-height: 1.4;    margin-bottom: 0;    display: block;    transition: .3s ease-in-out;    font-weight: 700;    padding: 11px 20px 11px 25px;}.sec03_desc li:last-child a {    margin-bottom: 0;}.sec03_title {    position: absolute;    bottom: 0;    left: 0;    width: 100%;    height: 70px;    background-color: #fff;    display: flex;    justify-content: center;    align-items: center;    border-right: 1px solid var(--mcolor);    border-top: 1px solid var(--mcolor);}.sec03_title p {    line-height: 1.4;    text-align: center;    letter-spacing: 0.05em;    font-family: var(--f-yumin);    font-size: 18px;    font-weight: 700;    color: #231815;}.sec03_ct:last-child .sec03_title {    border-right: 0;}/*==================== SEC04 ===================*/.sec04_content {    position: relative;    z-index: 1;}.sec04_list {    display: flex;}.sec04_ct {    position: relative;    width: 50%;    transition: .3s ease-in-out;}.sec04_img {    width: 100%;}.sec04_img img {    width: 100%;}.sec04_ct::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(170, 160, 130, 0.4);    transition: .3s ease-in-out;}.sec04_txt {    position: absolute;    bottom: 0;    left: 0;    width: 350px;    height: 90px;    background-color: var(--mcolor);    display: flex;    justify-content: center;    align-items: center;    cursor: pointer;    transition: .3s ease-in-out;}.sec04_txt a {    line-height: 1.6;    color: #fff;    font-family: var(--f-yumin);    font-size: 20px;    transition: .3s ease-in-out;}/*==================== SEC05 ===================*/.sec05_content {    margin-top: 52px;}.sec05_bg .inner {    position: relative;    height: 100%;}.sec05_bg {    background-image: url(../images/sec05_img1.jpg);    background-repeat: no-repeat;    background-size: cover;    height: 719px;    position: relative;    background-position: center;}@supports (background-image: url(../images/sec05_img1.jpg)) {    .sec05_bg{        background-image: url(../images/sec05_img1.webp);    }}.sec05_desc {    margin-top: 27px;}.sec05_txt {    position: absolute;    bottom: -30px;    left: 60px;}.sec05_desc p {    font-family: var(--f-yumin);    font-size: 14px;    text-align: center;    line-height: 2.5;    letter-spacing: 0.03em;    font-weight: 700;    letter-spacing: -0.5px;}.sec05_btn .btn {    display: flex;    justify-content: center;    margin-top: 30px;}.sec05_btn .btn a:not(:last-child) {    margin-right: 40px;}/*==================== SEC06 ===================*/.sec06 {    background-image: url(../images/sec06_bg.jpg);    background-repeat: no-repeat;    background-size: cover;    height: 550px;    position: relative;    padding-top: 115px;}@supports (background-image: url(../images/sec06_bg.jpg)) {    .sec06{        background-image: url(../images/sec06_bg.webp);    }}.sec06::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(125, 130, 170, 0.7);}.sec06 h3.title_h3 span.en {    color: #fff;}.sec06_contact {    margin-right: 50px;}.sec06 h3.title_h3 span.en::before {    background-color: #fff;}.sec06 h3.title_h3 span.ja {    color: #fff;    position: relative;    font-weight: 400;}.sec06_tel a {    display: block;    font-family: var(--f-cor);    color: #fff;    font-size: 53px;    font-weight: 700;    position: relative;    line-height: 1;    padding-left: 50px;}.sec06_content {    margin-top: 60px;}.sec06_list {    display: flex;    justify-content: center;}.sec06_tel a::before {    content: '';    position: absolute;    top: 20px;    left: 10px;    width: 30px;    height: 30px;    background-image: url(../images/phone_ic_s6.png);    background-repeat: no-repeat;    background-size: cover;}@supports (background-image: url(../images/phone_ic_s6.png)) {    .sec06_tel a::before {        background-image: url(../images/phone_ic_s6.webp);    }}.sec06_address p {    font-family: var(--f-nts);    font-size: 14px;    color: #fff;    line-height: 1.8;    letter-spacing: 0.05em;}.sec06_media {    display: flex;}.sec06_tel {    margin-bottom: 16px;}.sec06_media_ct p {    margin-bottom: 8px;    cursor: pointer;    pointer-events: auto;}.sec06_media_ct:not(:last-child) {    margin-right: 10px;}.sec06_media_ct {    width: 100px;    display: flex;    flex-direction: column;    align-items: center;    pointer-events: none;}.sec06_media_ct a {    display: block;    line-height: 1.6;    color: #fff;    font-family: var(--f-yumin);    font-size: 14px;    text-align: center;    pointer-events: auto !important;}.sec06_btn {    display: flex;    justify-content: center;    margin-top: 25px;}.sec06_btn .btn a {    border-color: #fff;    color: #fff;}.sec06_btn .btn a::after {    filter: brightness(0) invert(1);}/*==================== SEC07 ===================*/.sec07 {    width: 100%;}.sec07_map {    width: 100%;    height: 500px;}.sec07_map iframe {    width: 100%;    height: 100%;}/*==================== SEC08 ===================*/.sec08 {    padding: 105px 0 51px 0}.por {    position: relative;}.btn_allnews {    position: absolute;    top: 45px;    right: 90px;}.sec08_news dl:first-child {    border-top: 1px dashed #7d82aa;}.sec08_news dl {    display: flex;    border-bottom: 1px dashed #7d82aa;    padding: 19px 16px;    align-items: center;}.sec08_news dt {    display: flex;    width: 160px;    margin-right: 0;}.sec08_news dl.external dt {    width: 70px;}.sec08_news dl.external dd {    width: calc(100% - 70px);}.sec08_news dd {    width: calc(100% - 160px);    padding-left: 30px;}.sec08_content {    width: 100%;    max-width: 1000px;    margin-left: auto;    margin-right: auto;    margin-top: 20px;}.sec08_news dt p {    font-family: var(--f-quick);    color: #7d82aa;    font-size: 14px;    font-weight: 700;    margin-bottom: 0;    line-height: 1.4;    margin-right: 26px;    min-width: 74px;}.sec08_news dd a {    line-height: 1.4;    letter-spacing: -0.03em;    font-weight: 600;}.sec08_news dt span {    font-family: var(--f-quick);    color: #7d82aa;    font-size: 14px;    font-weight: 700;    display: block;    line-height: 1.4;}.sec08_news dd a.external:hover {    text-decoration: none;}.sec08_news dd a.internal:hover {    text-decoration: underline;    color: var(--mcolor);}.sec08_news dd a.external span {    padding-right: 30px;    position: relative;}.sec08_news dd a.external span::before {    content: "";    position: absolute;    right: 0;    top: 50%;    transform: translateY(-50%);    background: url(../images/idx_icon_link_external.png) right center no-repeat;    background-size: auto 18px;    width: 20px;    height: 18px;}@supports (background-image: url(../images/idx_icon_link_external.png)) {    .sec08_news dd a.external span::before {        background-image: url(../images/idx_icon_link_external.webp);    }}.sec08_news dd a span {    -webkit-line-clamp: 1;    -webkit-box-orient: vertical;    overflow: hidden;    display: -webkit-box;}/*==================== SEC08 ===================*/.sec09 {    background-color: #ececf2;    padding: 110px 0 40px 0;}.sec09_content {    display: flex;    justify-content: space-between;}.img9_1 {    margin-left: 7px;}.img9_2 {    margin-top: -55px;}.img9_3 {    margin-top: 55px;    margin-left: 140px;}/*==========================================================                        F O O T E R==========================================================*/footer {    background-color: var(--gray);    position: relative;    z-index: 3;}footer::before {    content: '';    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    background-color: rgba(255, 255, 255, 0.6);}.ft_top {}.ft_top .inner {    display: flex;    justify-content: space-between;}.ft_title p {    font-family: var(--f-tiro);    color: var(--mcolor);    font-size: 20px;    border-bottom: 1px solid var(--mcolor);    padding-bottom: 5px;    padding-left: 12px;    width: 100%;    line-height: 1.4;}.ft_title_sub p {    font-family: var(--f-tiro);    color: var(--mcolor);    font-size: 14px;    border-bottom: 1px solid var(--mcolor);    padding-bottom: 5px;    padding-left: 12px;    width: 100%;    line-height: 1.4;}.ft_menu_ct {    width: 100%;}.ft_menu_ct ul {    padding: 0 6px;}.ft_menu_list {    display: flex;}.ft_menu_ct ul li {    line-height: 1.4;}.ft_menu_ct ul li.submenu>a {    font-size: 16px;    pointer-events: auto !important;}.ft_menu_ct ul li.submenu>ul {    margin-top: 0;    padding: 0;}.ft_menu_ct ul li.submenu>ul li {    position: relative;    padding-left: 28px;}.ft_menu_ct ul li.submenu>ul li:before {    content: '';    position: absolute;    top: 10px;    left: 16px;    width: 10px;    height: 1px;    background-color: #464646;}.ft_menu_ct ul li a {    display: inline-block;    font-family: var(--f-nts);    font-size: 14px;    color: #464646;    line-height: 1.4;    font-weight: 500;    margin-bottom: 8px;}.ft_link ul.pl0 {    padding-left: 0;}.ft_link .menu03>li:first-child, .ft_link .menu04>li:first-child {    margin-bottom: 6px;}/* FOOTER INFORMATION */.footer_top {    background-image: url(../images/footer_bg.jpg);    background-repeat: no-repeat;    background-size: cover;    height: 650px;    padding-top: 173px;    padding-left: 135px;    background-position: bottom;}@supports (background-image: url(../images/footer_bg.jpg)) {    .footer_top {        background-image: url(../images/footer_bg.webp);    }}.ft_title {    margin-bottom: 13px;}.w_250 {    width: 260px;}.ft_menu_ct.w_250 {    margin-right: 75px;}.ft_link p {    margin-bottom: 6px;    line-height: 1.4;    font-family: var(--f-nts);    color: #464646;}.ft_link ul {    padding-left: 0;}footer .d_flex {    display: flex;    padding-left: 15px;}.ft_box {    margin-right: 100px;}.ft_link:not(:last-child) {    margin-bottom: 7px;}.footer_bottom {    background-color: #fff;    padding-top: 10px;    padding-bottom: 35px;}.ft_bottom_list {    display: flex;    align-items: center;    padding-left: 140px;}.ft_bottom_list a {    display: block;    margin-right: 26px;}.ft_bottom_list p {    font-family: var(--f-nts);    font-size: 14px;    padding-top: 18px;    letter-spacing: 0.05em;    font-weight: 500;}/* BACK TO TOP */.to_top {    position: fixed;    z-index: 8;    bottom: -100%;    right: 20px;    cursor: pointer;    transition: .3s ease-in-out;}.to_top.show {    bottom: 100px;}.to_top span {    display: block;    text-align: center;    font-family: var(--f-yumin);    font-size: 16px;}.to_top p {    width: 70px;    height: 70px;    background-color: #fff;    border-radius: 50%;    display: flex;    justify-content: center;    align-items: center;    transition: .3s ease-in-out;}/* FIX EDGE ONLY  */@supports (-ms-ime-align: auto) {}/* FIREFOX ONLY */@-moz-document url-prefix() {}/* Safari 10.1+ (which is the latest version of Safari at this time) */@media not all and (min-resolution: 0.001dpcm) {}/*==========================================================                        UNDER==========================================================*//*==========================================================                        C U S T O M==========================================================*/.wrapper {    overflow: hidden;    margin: 0 auto;    max-width: 100%;}.under main .image_l {    float: left;    margin: 0 68px 0 0}.under main .image_r {    float: right;    margin: 0 0 0 68px}.under main .image_l, .under main .image_r {    max-width: 450px;}.under main {    padding-bottom: 100px;}@media screen and (max-width: 1200px) and (min-width: 751px) {    .under main .image_l, .under main .image_r {        width: 50%;    }    .under main .image_l {        float: left;        margin: 0 40px 0 0    }    .under main .image_r {        float: right;        margin: 0 0 0 40px    }}/* MB */.under main .mb10 {    margin-bottom: 10px}.under main .mb20 {    margin-bottom: 20px}.under main .mb30 {    margin-bottom: 30px}.under main .mb40 {    margin-bottom: 40px}.under main .mb50 {    margin-bottom: 50px}.under main .mb60 {    margin-bottom: 60px}/* MT */.under main .mt10 {    margin-top: 10px}.under main .mt20 {    margin-top: 20px}.under main .mt30 {    margin-top: 30px}.under main .mt40 {    margin-top: 40px}.under main .mt50 {    margin-top: 50px}.under main .mt60 {    margin-top: 60px}/* MAX_W */.under main .max_w200 {    width: 100%;    max-width: 200px}.under main .max_w250 {    width: 100%;    max-width: 250px}.under main .max_w300 {    width: 100%;    max-width: 300px}.under main .max_w350 {    width: 100%;    max-width: 350px}.under main .max_w500 {    width: 100%;    max-width: 500px}.under main .max_w600 {    width: 100%;    max-width: 600px}.under main .max_w700 {    width: 100%;    max-width: 700px}.under main .max_w800 {    width: 100%;    max-width: 800px}.under main .max_w900 {    width: 100%;    max-width: 900px}/* MIN-W */.under main .min_w200 {    min-width: 200px}.under main .min_w250 {    min-width: 250px}.under main .min_w300 {    min-width: 300px}.under main .min_w350 {    min-width: 350px}.under main .min_w500 {    min-width: 500px}/*==========================================================                        H E A D I N G==========================================================*/.under main h4,.under main h6 {    margin-bottom: 30px;}.under main h2 {    font-size: 42px;    text-align: center;    margin-bottom: 0;    color: #fff;    letter-spacing: 0.05em;    padding-top: 103px;}.under main h3 {    font-size: 42px;    text-align: center;    letter-spacing: 0.05em;    position: relative;    color: var(--mcolor);    padding-bottom: 3px;    margin-bottom: 44px;}.under main h3:before {    content: '';    position: absolute;    bottom: 0;    left: 0;    right: 0;    margin: auto;    width: 270px;    height: 2px;    background-color: #cbc6b7;}.under main h4 {    font-size: 30px;    color: var(--scolor);    letter-spacing: 0.05em;    position: relative;    padding-left: 15px;    background-color: #fff;    border: 1px solid var(--scolor);    padding: 6px 19px 8px;}.under main h5 {    font-size: 26px;    color: var(--scolor);    font-weight: 500;    letter-spacing: 0.05em;    margin-bottom: 23px;}.under main h6 {    font-size: 22px;    color: #333333;    font-weight: 600;    position: relative;    letter-spacing: 0.05em;}/*==========================================================                        FONT FAMILY==========================================================*/.under main h2,.under main h3,.under main h4,.under main h5,.under main h6 {    font-family: var(--f-nsr)}/*==========================================================                      MAIN - CONTENT==========================================================*/.under main {    background: url(../images/under_bg.jpg) repeat top center/cover;    font-family: var(--f-yumin);}@supports (background-image: url(../images/under_bg.jpg)) {    .under main {        background-image: url(../images/under_bg.webp);    }}.under main p, .under main li, .under main dd, .under main dt {    letter-spacing: 0.1em;    line-height: 2.25;}.under .inner {    width: 1200px;    padding: 0 15px;}.under main #content {    padding: 0 0 120px}.under main section {    padding: 0 0 80px;    margin-bottom: 0}.under main section:last-child {    padding: 0}/* LINK + BUTTON TOP */.under main .link {    text-decoration: underline;    color: var(--mcolor);}/*============ TOP INFO ============ */.under main #top_info {    height: 520px;    width: 100%;    margin: 0 auto;    background: url('../images/top_info_bg.jpg') no-repeat center /cover;}@supports (background-image: url(../images/top_info_bg.jpg)) {    .under main #top_info {        background-image: url(../images/top_info_bg.webp);    }}.under main #top_info .inner {    display: flex;    flex-direction: column;    justify-content: center;    align-items: center;    width: 100%;    height: 100%}/*==========================================================                    T O P I C   P A T H==========================================================*/.under main #topic_path {    margin-bottom: 25px}.under main #topic_path ul {    display: block;    padding: 13px 3px}.under main #topic_path li {    display: inline-block;    position: relative;    color: var(--txt);    font-size: 14px;    letter-spacing: 0.1em;}.under main #topic_path li span {    display: inline-block;    padding: 0 9px;    transform: scaleX(0.6);    color: var(--mcolor);    line-height: 1;}.under main #topic_path li a {    color: var(--mcolor);}/*============ LIST ANCHOR LINK ============ */.under main .list_anchor {    display: flex;    align-items: center;    flex-wrap: wrap;    justify-content: center;    width: calc(100% + 20px);}.under main .list_anchor .btn_anchor {    margin: 0 10px}.under main .btn_anchor a {    width: 290px;    height: 60px;    border-radius: 5px;    display: flex;    justify-content: center;    align-items: center;    background: url('../images/ic-right.png') no-repeat right 10px center /6px var(--mcolor);    font-size: 16px;    color: #fff;}.under main .btn_anchor.center a {    margin-left: auto;    margin-right: auto;}/*============ BUTTON COMMON ============ */.under main .btn a {    min-width: 210px;    max-width: 400px;    width: auto;    height: auto;    padding: 10px 10px;    text-align: center;    display: table;    margin: 50px auto 0;}/*==========================================================                        T A B L E==========================================================*/.under main table.td_top td {    vertical-align: top}.under main table.tb_fix {    table-layout: fixed;}.under main table {    margin-bottom: 30px;}.under main table.mailform th,.under main table th {    background: #d7d9ef;    font-weight: 700;    font-size: 18px;}.under main table.mailform td .info {    color: var(--scolor)}.under main table td {    border-color: var(--scolor);    background: #fff;}.under main table th,.under main table td {    padding: 15px;    font-weight: 600;}.under main table img {    display: block;    margin: auto;}.under main table th {    border-color: var(--scolor);}.under main table tr th:first-child {    border-left-color: var(--scolor);}.under main table tr th:last-child {    border-right-color: var(--scolor);}.under main table.mailform th,.under main table.tb_block th {    border-color: var(--scolor);}.under main table.mailform tr:first-child th,.under main table.tb_block tr:first-child th {    border-top-color: var(--scolor);}.under main table.mailform tr:last-child th,.under main table.tb_block tr:last-child th {    border-bottom-color: var(--scolor);}/*============ LIST ============ */.under main .list_2col {    display: flex;    flex-wrap: wrap;    justify-content: space-between;}.under main .list_2col li {    width: 47%;}/* LIST 01 */.under main .list01 {    margin-bottom: 30px;}.under main .list01 li {    display: block;    padding-left: 27px;    margin-bottom: 12px;    position: relative;    font-weight: 600;}.under main .list01 li::before {    background: var(--scolor);    width: 12px;    height: 12px;    border-radius: 50%;    position: absolute;    top: 10px;    left: 2px;    content: ''}/* LIST 02 */.under main .list02 {    margin-bottom: 30px;}.under main .list02 li {    counter-increment: li;    padding-left: 30px;    position: relative;    margin-bottom: 12px;}.under main .list02 li::before {    content: counter(li);    position: absolute;    width: 22px;    height: 22px;    display: flex;    justify-content: center;    align-items: center;    border-radius: 50%;    left: 0;    top: 2px;    background-color: var(--mcolor);    font-size: 12px;    font-weight: bold;    color: #FFF;    line-height: 22px;}/* LIST CHECK */.under main .list_check {    margin-bottom: 30px;}.under main .list_check li {    font-weight: 600;    display: block;    padding-left: 39px;    margin-bottom: 12px;    position: relative}.under main .list_check li::before {    content: '';    display: block;    position: absolute;    top: 5px;    left: 5px;    width: 24px;    height: 23px;    background: url(../images/ic_list_check.png) no-repeat center/contain;}@supports (background-image: url(../images/ic_list_check.png)) {    .under main .list_check li::before {        background-image: url(../images/ic_list_check.webp);    }}/* LIST FAQ */.under main .list_faq {    margin-bottom: 30px;}.under main .list_faq .it {    position: relative;    margin-bottom: 70px;}.under main .list_faq .it:before {    content: '';    position: absolute;    top: -20px;    left: -20px;    border: 2px solid var(--scolor);    width: 100%;    height: 100%;    z-index: -1;}.under main .list_faq .it:last-child {    margin-bottom: 0;}.under main .list_faq dl {    background: url(../images/faq_bg.jpg) no-repeat center/cover;    padding: 56px 105px 72px;    position: relative;    z-index: 0;}@supports (background-image: url(../images/faq_bg.jpg)) {    .under main .list_faq dl {        background-image: url(../images/faq_bg.webp);    }}.under main .list_faq dt {    position: relative;    font-family: var(--f-nsr);    font-size: 26px;    font-weight: 500;    letter-spacing: 0.05em;    line-height: 1.5em;    color: #fff;    margin-bottom: 10px;    display: flex;    align-items: center;    display: flex;    align-items: center;    padding-bottom: 18px;}.under main .list_faq dt span {    font-size: 48px;    font-weight: 500;    line-height: 0;    margin-right: 23px;    margin-top: -10px;    flex-shrink: 0;    padding-left: 7px;}.under main .list_faq dd {    position: relative;    padding: 42px 82px 34px 70px;    background-color: #fff;}.under main .list_faq dd span {    position: absolute;    top: 5px;    left: 0;    width: 40px;    height: 40px;    font-weight: bold;    text-align: center;    line-height: 1em;    color: #fff;    background: var(--mcolor);    display: flex;    align-items: center;    justify-content: center;    text-align: center;    padding-bottom: 5px;    flex-shrink: 0;}@media screen and (max-width: 1200px) and (min-width: 751px) {    .under main .list_faq dl {        padding: 56px 50px 72px;    }    .under main .list_faq .it {        margin-left: 20px;    }}/* LIST STEP *//* .under main .list_step{    box-shadow: 0 5px 8px rgba(0, 0, 0, 0.15);background: #fff;padding: 40px 50px;} */.under main .list_step .step_it {    margin-bottom: 50px;    padding-bottom: 50px;    position: relative;    box-shadow: 0 5px 8px rgba(0, 0, 0, 0.15);    background: url(../images/step_bg.jpg) no-repeat left center/cover;    padding: 60px 30px 30px;}.under main .list_step .step_it:not(:last-child)::before {    width: 0;    height: 0;    border-style: solid;    border-width: 50px 70px 0 70px;    border-color: var(--mcolor) transparent transparent transparent;    position: absolute;    bottom: -20px;    left: 0;    right: 0;    margin: auto;    content: '';}.under main .list_step .step_it:last-child {    margin-bottom: 0}.under main .list_step .box_in {    border: 2px solid var(--mcolor);    padding: 40px;    background-color: #fff;}.under main .list_step .step_tl {    font-weight: 600;    text-align: center;    font-size: 26px;    color: var(--mcolor);    margin-bottom: 10px;}.under main .list_step .step_num {    display: table;    font-size: 50px;    font-family: var(--f-cor);    font-weight: 500;    color: var(--mcolor);    line-height: 0;    position: absolute;    top: 37px;    left: 20px;    margin: 0;    letter-spacing: 0;}.under main .list_step .step_num>span {    font-size: 150%;}/*============ FRAME ============ *//* FRAME 01 */.under main .frame01 {    padding: 106px 90px 117px;    margin-bottom: 50px;    background-color: #fff;}@media screen and (max-width: 1200px) and (min-width: 751px) {    .under main .frame01 {        padding: 80px 60px 85px;    }}/* FRAME 02 */.under main .frame02 {    border: 1px solid #e6e6e6;    padding: 25px;    margin-bottom: 50px;}/* FRAME PICKUP */.under main .frame_pick {    border: 1px solid #000;    padding: 25px;    background: var(--scolor);    margin-bottom: 50px;}.under main .frame_pick .pick_ttl {    font-size: 24px;}.under main .frame_pick .pick_ttl span {    font-size: 36px;    display: block;}/* IFRAME BOX */.under main .box_map {    width: 100%;    height: 400px}.under main .box_ytb {    width: 900px;    height: auto;    margin: 0 auto;    aspect-ratio: 15/9;    max-width: 100%;}.under main .box_map iframe,.under main .box_ytb iframe {    width: 100%;    height: 100%;    border: none;    outline: none;}/*============ BOX TEXT CENTER   ============ */.txt_center p {    max-width: 960px;    width: 100%;    margin: 0 auto;    text-align: center;    font-weight: 600;}.under main .img_full {    position: relative;    width: 1920px;    left: calc(50% - 970px);    text-align: center;}.under .ud_box_img {    display: flex;    flex-wrap: wrap;}.under .ud_box_img.col2 {    margin: 0 -25px;}.under .ud_box_img.col2 .col_item {    margin: 20px 25px;    width: calc(50% - 50px);}.under .ud_box_img.col3 {    margin: 0 -17px;}.under .ud_box_img.col3 .col_item {    margin: 20px 17px;    width: calc(33.3333333333% - 34px);}/* ===========  BLOG ===========  */#pagination {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    justify-content: center;    align-items: center;    margin: 40px auto 0;}#pagination:empty {    display: none;}#pagination a, #pagination span {    background-color: #99be3b;    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    justify-content: center;    align-items: center;    border-radius: 100%;    margin: 10px 5px;    width: 32px;    height: 32px;    color: #fff;    line-height: 1;    text-decoration: none;}#pagination a.next, #pagination a.prev, #pagination span.next, #pagination span.prev {    background-repeat: no-repeat;    background-position: center;    background-size: 7px auto;    color: transparent;}#pagination a.prev, #pagination span.prev {    background-image: url(../images/shared_blog_arrow_prev.svg);}#pagination a.next, #pagination span.next {    background-image: url(../images/shared_blog_arrow_next.svg);}@media screen and (min-width:0\0) and (min-resolution:72dpi) {    #pagination {}    #pagination a, #pagination span {        padding-top: 2px;    }}#pagination a:hover {    text-decoration: none;    opacity: 0.7;}#pagination span {    opacity: 0.5;}#pagination .active a, #pagination a.active:hover {    background: none repeat scroll 0 0 #000000;    color: #FFFFFF;}.blog-content .date {    margin-bottom: 20px;    text-align: center;    color: var(--mcolor);}.blog_list_style01 .item {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    justify-content: space-between;    border-bottom: 1px solid #bababa;    padding-bottom: 30px;    margin-bottom: 30px;}.blog_list_style01 .item figure {    background-color: rgb(255, 255, 255);    position: relative;    overflow: hidden;    border: 2px solid var(--mcolor);    width: 220px;    height: 220px;}.blog_list_style01 .item figure img {    max-width: 100%;    max-height: 100%;    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);}.blog_list_style01 .item .info {    width: calc(100% - 250px);    position: relative;    padding-bottom: 40px;}.blog_list_style01 .item .info p {    margin-bottom: 0;    line-height: 1.5;}.blog_list_style01 .item .info .date {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    align-items: center;    margin-bottom: 15px;    padding-top: 15px;    font-size: 90%}.blog_list_style01 .item .info .date .tag {    display: inline-block;    margin-left: 20px;    color: transparent;    font-size: 90%;    letter-spacing: -1em;}.blog_list_style01 .item .info .date .tag a {    background-color: var(--mcolor);    display: inline-block;    margin-left: 2px;    padding: 0 10px;    color: #fff;    letter-spacing: 0;    text-decoration: none;}.blog_list_style01 .item .info .date .tag a.blog {    background-color: var(--scolor);}.blog_list_style01 .item .info .ttl {    margin-bottom: 10px;    overflow: hidden;    white-space: nowrap;    text-overflow: ellipsis;    text-decoration: underline;    font-size: 120%;    font-weight: 600;    color: #333333;}.blog_list_style01 .item .info .ttl a {    color: inherit;}.blog_list_style01 .item .info .des {    padding-bottom: 45px;}.blog_list_style01 .item .info .button {    background-color: #fff;    border: 2px solid var(--scolor);    border-radius: 30px;    position: absolute;    bottom: 0px;    right: 0;    overflow: hidden;}.blog_list_style01 .item .info .button a {    position: relative;    z-index: 1;    display: block;    padding: 6px 10px 5px;    font-size: 90%;    color: var(--scolor);    text-decoration: none;}.blog_list_style01 .item .info .button a:before {    opacity: 0;}.blog_list_style01 .item .info .button span {    top: -1px;    position: relative;}.blog_list_style01 .item .info .button:after {    content: "";    background-color: var(--scolor);    position: absolute;    z-index: 0;    top: 0;    bottom: 0;    right: 0;    width: 0;    transition: all 0.3s ease;}.blog_list_style01 .item .info .button:hover a {    opacity: 1;    color: #fff;}.blog_list_style01 .item .info .button:hover:after {    width: 100%}@media only screen and (max-width:640px) {    .blog_list_style01 .item {        display: block;    }    .blog_list_style01 .item figure {        margin: 0 auto;    }    .blog_list_style01 .item .info {        width: 100%;        max-width: 420px;        margin: 0 auto;        padding-bottom: 0;    }    .blog_list_style01 .item .info .button {        position: relative;        display: table;    }}.blog_list_style02.colImg .list {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    align-items: flex-start;    justify-content: flex-start;}.blog_list_style02.colImg p {    margin-bottom: 5px;}.blog_list_style02.colImg p:last-child {    margin-bottom: 0;}.blog_list_style02.colImg figure {    margin-bottom: 15px;}.blog_list_style02.colImg .text p {    font-size: 1em;}.blog_list_style02.colImg .text .ttl {    font-family: inherit;    font-size: 1.1em;    font-weight: bold;    line-height: 1.8;    text-align: center;    color: #0e7cad;}.blog_list_style02.colImg4_blog .item {    width: 24%;    margin-right: 1%;    margin-bottom: 15px;    position: relative;}.blog_list_style02.colImg4_blog .item:nth-child(4) {    margin-right: 0;}.blog_list_style02.colImg4_blog .item a {    position: absolute;    top: 0;    bottom: 0;    left: 0;    right: 0;    z-index: 1;}.blog_list_style02.colImg4_blog .item .img {    background: url(../images/shared_blog_logo.png) center no-repeat;    background-size: contain;    background-color: #fff;    border: 1px solid #000;    position: relative;    width: 100%;    height: 400px;    margin-bottom: 15px;}.blog_list_style02.colImg4_blog .item .img:before {    position: absolute;    top: 0;    bottom: 0;    left: 0;    right: 0;}.blog_list_style02.colImg4_blog .item .img img {    transform: translate(-50%, -50%);    transition: all 0.3s ease;    position: absolute;    top: 50%;    left: 50%;    max-height: 100%;    max-width: 100%}.blog_list_style02.colImg4_blog .item:hover a {    opacity: 1;}.blog_list_style02.colImg4_blog .item:hover .img img {    filter: blur(5px) grayscale(50%);    transform: translate(-50%, -50%) scale(1.15);}.blog_list_style02.colImg4_blog figure {    background-color: #ddd;    position: relative;    overflow: hidden;    width: 100%;    height: 100%}@media only screen and (max-width:1000px) and (min-width:769px) {    .blog_list_style02.colImg4_blog .item .img {        height: 30vw;    }}@media only screen and (max-width:768px) {    .blog_list_style02.colImg4_blog .item .img {        height: 280px;    }    .blog_list_style02.colImg4_blog figure {        height: 260px;    }}@media only screen and (max-width:640px) {    .blog_list_style02.colImg .list {        justify-content: space-around;    }    .blog_list_style02.colImg .item {        margin-bottom: 15px;    }    .blog_list_style02.colImg figure {        margin-bottom: 5px;    }    .blog_list_style02.colImg .text {        font-size: 14px;    }    .blog_list_style02.colImg4_blog .item {        width: 49%    }    .blog_list_style02.colImg4_blog .item .img {        height: 48vw;    }    .blog_list_style02.colImg4_blog figure {        height: 48vw;    }}.blog_detail_style02 {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    justify-content: space-around;    margin-bottom: 30px;}.blog_detail_style02 .box_gallery {    width: 35%;    max-width: 400px;}.blog_detail_style02 .box_gallery .main_img {    background: #ededed;    position: relative;    height: 400px;    margin-bottom: 11px;}.blog_detail_style02 .box_gallery .main_img .item {    transition: all 0.3s ease;    position: absolute;    top: 0;    bottom: 0;    left: 0;    right: 0;    opacity: 0;}.blog_detail_style02 .box_gallery .main_img .item.active {    opacity: 1;}.blog_detail_style02 .box_gallery .main_img .img {    overflow: hidden;    margin: 0;    width: 100%;    height: 100%}.blog_detail_style02 .box_gallery .main_img .img img {    transform: translate(-50%, -50%);    position: absolute;    top: 50%;    left: 50%;    max-width: 100%;    max-height: 100%}.blog_detail_style02 .box_gallery .thumb {    display: flex;    flex-wrap: wrap;    margin-bottom: 10px;}.blog_detail_style02 .box_gallery .thumb li {    background-color: #ededed;    transition: all 0.2s ease;    width: calc(12.5% - 4.4px);    margin-right: 5px;    margin-bottom: 5px;    height: 20vw;    max-height: 40px;    overflow: hidden;    position: relative;    cursor: pointer;    text-align: center;}.blog_detail_style02 .box_gallery .thumb li:nth-child(8n+0) {    margin-right: 0;}.blog_detail_style02 .box_gallery .thumb li:hover {    opacity: 0.7;}.blog_detail_style02 .box_gallery .thumb li img {    width: auto;    max-height: 100%;    max-width: 100%;    overflow: hidden;    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);}.blog_detail_style02 .box_gallery .thumb.col_5 li {    width: calc(20% - 4px);    max-height: 77px;}.blog_detail_style02 .box_gallery .thumb.col_5 li:nth-child(5) {    margin-right: 0;}.blog_detail_style02 .box_gallery.withSlick .main_img {    height: auto;}.blog_detail_style02 .box_gallery.withSlick .main_img .item {    height: 400px;}.blog_detail_style02 .box_gallery.withSlick .main_img .item:nth-child(n) {    display: block;}.blog_detail_style02 .box_gallery.withSlick .thumb li {    opacity: 0.5;}.blog_detail_style02 .box_gallery.withSlick .thumb li:after {    content: "";    transition: all 0.2s ease;    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;    border: 1px solid transparent;    z-index: 1;}.blog_detail_style02 .box_gallery.withSlick .thumb li.active {    opacity: 1;}.blog_detail_style02 .box_gallery.withSlick .thumb li.active:after {    border-color: #ff9933;}.blog_detail_style02 .box_gallery.withSlick .thumb li:hover {    opacity: 1;}.blog_detail_style02 .box_gallery.withSlick .controls p {    display: table;    cursor: pointer;}.blog_detail_style02 .box_gallery.withSlick .controls p:hover {    text-decoration: underline;}.blog_detail_style02 .box_info {    width: 62%;    max-width: 710px;}.blog_detail_style02 .box_info .intro {    margin-bottom: 20px;}.blog_detail_style02 .box_info table {}.blog_detail_style02 .box_info table th {    width: 30%;    background: #f5f5f5;    color: #99be3b;}.blog_detail_style02.noGallery .box_info {    max-width: 100%;    width: 100%}@media only screen and (max-width:768px) {    .blog_detail_style02 .box_gallery {        width: 100%;        margin: 0 auto 30px;    }    .blog_detail_style02 .box_gallery .main_img {        max-height: 400px;        height: 100vw;    }    .blog_detail_style02 .box_info {        width: 100%;        margin: 0 auto;    }    .blog_detail_style02 .box_info table th {        width: 100%    }    .blog_detail_style02 .box_info table.tbl_style03 {        border-bottom: none;    }}.main_blog_container {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    justify-content: space-between;}.main_blog_container .main_blog_content {    max-width: 100%;    width: calc(100% - 250px);}.main_blog_container .main_blog_content>div {    padding-top: 0;}.main_blog_container .sidebar {    width: 220px;}.main_blog_container .sidebar .txt_head, .main_blog_container .sidebar .widgettitle {    background-color: var(--mcolor);    transform: none;    position: static;    display: block;    margin-bottom: 0;    padding: 15px 10px;    width: 100%;    writing-mode: horizontal-tb;    font-size: 18px;    color: #fff;    text-align: center;}.main_blog_container .sidebar ul:not(.children) {    background-color: #fff;    border: 1px solid #ddebf2;    border-top: 0;    padding: 0 10px;}.main_blog_container .sidebar ul:not(.children)>li {    border-bottom: 1px solid #959595;    padding: 12px 10px;    font-size: 80%}.main_blog_container .sidebar ul:not(.children)>li:last-child {    border-bottom: 0;}.main_blog_container .sidebar ul:not(.children)>li a {    color: inherit;    font-size: inherit;    text-decoration: underline;}.main_blog_container .sidebar ul:not(.children)>li a:hover {    text-decoration: none;}.main_blog_container .sidebar ul.children {    padding: 7px 7px;}.main_blog_container .sidebar ul.children li {    padding-bottom: 5px;}.main_blog_container .sidebar ul.children li:last-child {    padding-bottom: 0;}@media only screen and (max-width:768px) {    .main_blog_container .main_blog_content {        width: auto;        margin: 0 auto;    }    .main_blog_container .sidebar {        display: none;    }}.blog_post_button {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    justify-content: space-between;    align-items: center;    max-width: 600px;    margin: 100px auto 0;}.blog_post_button>div {    border-radius: 10px;    position: relative;    width: 32%;    color: #fff;    text-align: center;    line-height: 1;    font-size: 16px;}.blog_post_button>div a {    transition: all 0.3s;    display: block;    position: relative;    z-index: 1;    padding: 11px 10px 10px;    max-width: 100%;    white-space: nowrap;    overflow: hidden;    text-overflow: ellipsis;    text-transform: uppercase;    line-height: inherit;    color: inherit;    text-align: center;    text-decoration: none;    background-color: transparent;    border: 1px solid var(--scolor);    border-radius: 30px;    color: var(--scolor);}.blog_post_button>div a:hover {    background-color: var(--mcolor);    border-color: var(--mcolor);    box-shadow: 4px 4px 4px rgba(0, 0, 0, .2);    color: #fff;}@media screen and (max-width: 920px) {    .blog_post_button>div {        font-size: 14px;    }}/* ===========  CONTACT ===========  */.contact-form-style01 .contact-table {    background-size: cover;    width: 100%;    margin: 0 auto 0px;    overflow: hidden;    position: relative;}.contact-form-style01 .contact-table:before {    content: "";    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;}.contact-form-style01 .contact-table input, .contact-form-style01 .contact-table select, .contact-form-style01 .contact-table textarea {    border: 1px solid;    padding: 4px 8px;    border-radius: 5px;    font-size: 1rem;}.contact-form-style01 .contact-table input {    width: 100%}.contact-form-style01 .contact-table textarea {    max-width: 100%;    min-width: 100%;    width: 100%;    height: 7em;}.contact-form-style01 .contact-table input, .contact-form-style01 .contact-table textarea {    transition: all 0.2s ease-in-out;}.contact-form-style01 .contact-table input[type=checkbox], .contact-form-style01 .contact-table input[type=radio] {    margin: 5px 3px 5px 0px;    width: auto;}.contact-form-style01 .contact-table [readonly*=readonly] {    background: none;    border: 0;    font-weight: bold;}.contact-form-style01 .contact-table dl {    position: relative;    z-index: 1;    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: -webkit-box;    display: -ms-flexbox;    display: flex;    -ms-flex-wrap: wrap;    flex-wrap: wrap;    justify-content: space-between;}.contact-form-style01 .contact-table dl:last-child dd, .contact-form-style01 .contact-table dl:last-child dt {    border-bottom: 0px;}.contact-form-style01 .contact-table dt {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: -webkit-box;    display: -ms-flexbox;    display: flex;    flex-wrap: wrap;    align-items: center;    width: 400px;    padding: 15px 20px;    font-size: 18px;    font-weight: 500;    line-height: 1.5;}.contact-form-style01 .contact-table dt i {    font-style: normal;}.contact-form-style01 .contact-table dt i.small {    font-size: 80%;    display: block;}.contact-form-style01 .contact-table dt span {    display: inline-block;    border-radius: 7px;    padding: 5px 7px 2px;    margin-left: 15px;    font-size: 70%;    line-height: 1;}.contact-form-style01 .contact-table dd {    width: calc(100% - 400px);    padding: 15px 25px;    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: -webkit-box;    display: -ms-flexbox;    display: flex;    flex-wrap: wrap;    align-items: center;    font-weight: 500;}.contact-form-style01 .contact-table .postal_code {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;}.contact-form-style01 .contact-table .inline span {    max-width: 75px;    margin: 0 5px;    text-align: center;}.contact-form-style01 .contact-table .inline input {    text-align: center;}.contact-form-style01 .contact-table .clockpicker input {    width: 70px;    text-align: center;}.contact-form-style01 .contact-table input:not([type=radio]):not([type=checkbox]):focus, .contact-form-style01 .contact-table textarea:focus {    color: #495057;    background-color: #fff;    border-color: #80bdff;    outline: 0;    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);}.contact-form-style01 .confirm-table textarea {    resize: none;    width: 100%}.contact-form-style01 .confirm-table input:not([type=radio]):not([type=checkbox]):focus, .contact-form-style01 .confirm-table textarea:focus {    color: inherit;    background-color: transparent;    border-color: transparent;    outline: 0;    box-shadow: none;}.contact-form-style01 .button.thanks_btn, .contact-form-style01 .input_btn {    position: relative;    display: flex;    justify-content: center;    align-items: center;    flex-wrap: wrap;    max-width: 520px;    margin: 40px auto 0;}.contact-form-style01 .button.thanks_btn a, .contact-form-style01 .button.thanks_btn input, .contact-form-style01 .input_btn a, .contact-form-style01 .input_btn input {    color: inherit;    text-decoration: none;    line-height: 1;}.contact-form-style01 .button.thanks_btn, .contact-form-style01 .input_btn input[type=button], .contact-form-style01 .input_btn input[type=submit] {    width: 200px;    height: 45px;    border: none;    padding: 10px;    text-align: center;    font-size: 100%;    font-weight: normal;    margin: 0px 10px 10px;    text-decoration: none;    cursor: pointer;    font-size: 16px;    font-weight: bold;    font-family: var(--f-quick);}.contact-form-style01 .button.thanks_btn:hover, .contact-form-style01 .input_btn input[type=button]:hover, .contact-form-style01 .input_btn input[type=submit]:hover {    opacity: 0.8;}.contact-form-style01 .button.thanks_btn {    padding: 0;}.contact-form-style01 .button.thanks_btn a {    display: flex;    width: 100%;    height: 100%;    align-items: center;    justify-content: center;}.contact-form-style01 .button.thanks_btn, .contact-form-style01 .input_btn input[type=button], .contact-form-style01 .input_btn input[type=submit] {    background-color: transparent;    color: var(--scolor);    border-radius: 30px;    border: 1px solid var(--scolor);}.contact-form-style01 .contact-table {    border: 1px solid var(--scolor);}.contact-form-style01 .contact-table input, .contact-form-style01 .contact-table select, .contact-form-style01 .contact-table textarea {    border-color: #ddd;}.contact-form-style01 .contact-table dt {    background-color: #d7d9ef;    border-bottom: 1px solid var(--scolor);    color: var(--scolor);}.contact-form-style01 .contact-table dt span {    background-color: #ffffff;    color: #ff3c7f;}.contact-form-style01 .contact-table dd {    border-bottom: 1px solid var(--scolor);    background-color: #fff;}.contact-form-style01 .contact-table dd i {    font-style: normal;    font-size: 80%;    color: #ff3c7f;    margin-left: -5px;}.contact-form-style01 .wpcf7-not-valid-tip {    display: block;    margin: 3px 0 0;    color: red;    font-size: 12px;}.contact-form-style02 {    background: url(../images/contact-form-bg.jpg);    padding: 80px 50px 80px;}.contact-form-style02 .contact-table {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    flex-wrap: wrap;    justify-content: space-between;}.contact-form-style02 .contact-table input:not([type=radio]):not([type=checkbox]), .contact-form-style02 .contact-table textarea {    background-clip: padding-box;    border: none;    outline: 0;    box-shadow: none;    height: auto;    display: block;    border-radius: 0;    width: 100%;    padding-bottom: 15px;    margin-bottom: 0;    border-bottom: 1px dashed;    transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;    font-size: 1em;    font-weight: 400;    line-height: 1.5;    text-transform: none;}.contact-form-style02 .contact-table textarea {    max-width: 100%;    border: 1px dashed;    padding: 20px;}.contact-form-style02 .contact-table dl {    position: relative;    z-index: 0;    width: 49%;    margin-bottom: 60px;}.contact-form-style02 .contact-table dl:last-child {    margin-bottom: 0;}.contact-form-style02 .contact-table dl dt {    font-size: 0.9em;}.contact-form-style02 .contact-table dl dt span {    position: relative;    top: -0.1em;    display: inline-block;    padding: 0px 5px;    margin-left: 8px;    border-radius: 7px;    font-size: 0.7em;}.contact-form-style02 .contact-table dl.inline dd {    display: -webkit-flex;    display: -moz-flex;    display: -ms-flex;    display: -o-flex;    display: flex;    justify-content: space-around;    align-items: center;}.contact-form-style02 .contact-table dl.inline input {    text-align: center;}.contact-form-style02 .contact-table dl.hasBD dd {    padding: 15px;    border: 1px dashed;    transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;}.contact-form-style02 .contact-table dl.full {    width: 100%;    padding: 20px 0;}.contact-form-style02 .contact-table dl.full dt {    padding-bottom: 15px;}.contact-form-style02 .contact-table dl:not(.full) dt {    position: absolute;    z-index: 0;    bottom: 15px;    left: 0px;    transform: translateY(0%);    transition: all 0.4s ease;}.contact-form-style02 .contact-table dl:not(.full) dd {    padding: 0px 0px;}.contact-form-style02 .contact-table dl:not(.full).focus dt, .contact-form-style02 .contact-table dl:not(.full).non-empty dt {    bottom: -5px;    transform: translateY(100%);    font-size: 0.75em;}.contact-form-style02 .contact-table dl:not(.full) .wpcf7-not-valid-tip {    position: absolute;    bottom: 0px;    left: 0;    right: 0;    z-index: -1;}.contact-form-style02 .confirm-table dl:not(.hasBD):not(.non-empty) {    opacity: 0.45;}.contact-form-style02 .wpcf7-not-valid-tip {    display: block;    text-align: right;}.contact-form-style02 .button.thanks_btn, .contact-form-style02 .input_btn {    position: relative;    display: table;    margin: 40px auto 0;    height: 45px;}.contact-form-style02 .button.thanks_btn a, .contact-form-style02 .button.thanks_btn input, .contact-form-style02 .input_btn a, .contact-form-style02 .input_btn input {    color: inherit;}.contact-form-style02 .button.thanks_btn:after, .contact-form-style02 .button.thanks_btn:before, .contact-form-style02 .input_btn:after, .contact-form-style02 .input_btn:before {    content: "";    position: absolute;    left: 50%;    width: 100%;    height: 2px;    transform: translateX(-50%);    transition: all 0.3s cubic-bezier(0.34, 0.36, 0.06, 1.01);}.contact-form-style02 .button.thanks_btn:before, .contact-form-style02 .input_btn:before {    top: 0;}.contact-form-style02 .button.thanks_btn:after, .contact-form-style02 .input_btn:after {    bottom: 0;}.contact-form-style02 .button.thanks_btn:hover:before, .contact-form-style02 .input_btn:hover:before {    top: 100%;    width: 80%}.contact-form-style02 .button.thanks_btn:hover:after, .contact-form-style02 .input_btn:hover:after {    bottom: -7px;    width: 60%}.contact-form-style02 .button.thanks_btn, .contact-form-style02 .input_btn input[type=button], .contact-form-style02 .input_btn input[type=submit] {    background-color: transparent;    border: none;    outline: 0;    padding: 10px;    cursor: pointer;    text-align: center;    font-size: 100%;    font-weight: normal;    text-decoration: none;}.contact-form-style02 .button.thanks_btn, .contact-form-style02 .input_btn {    color: #333;}.contact-form-style02 .button.thanks_btn:after, .contact-form-style02 .button.thanks_btn:before, .contact-form-style02 .input_btn:after, .contact-form-style02 .input_btn:before {    background-color: #fcbb45;}.contact-form-style02 .contact-table input, .contact-form-style02 .contact-table textarea {    background-color: transparent;    border-color: #a1a3a2;    color: #495057;}.contact-form-style02 .contact-table input:focus, .contact-form-style02 .contact-table textarea:focus {    border-color: #000;    color: #495057;}.contact-form-style02 .contact-table dl.hasBD dd {    border-color: #a1a3a2;    color: #495057;}.contact-form-style02 .contact-table dl.hasBD.focus dd {    border-color: #000;    color: #495057;}.contact-form-style02 .contact-table dl dt {    font-size: 0.9em;}.contact-form-style02 .contact-table dl dt span {    background-color: #353535;    color: #ffffff;}.screen-reader-response {    display: none;}.wpcf7-response-output {    padding-top: 20px;}.contact-form-style01 .contact-table input {    width: 100%;}.wpcf7-form-control-wrap {    width: 100%;}.contact-form-style01 .contact-table dd .wpcf7-radio span:not(:last-child) {    margin-right: 20px;}.contact-form-style01 .contact-table dl.ct_age dd {    display: flex;    align-items: center;}.contact-form-style01 .contact-table dl.ct_age dd .wpcf7-form-control-wrap {    width: 200px;    margin-right: 10px;}.contact-form-style01 .contact-table dl .wpcf7-form-control-wrap[data-name="date-499"] input {    width: 200px;}@media screen and (max-width: 920px) {    .contact-form-style01 .button.thanks_btn, .contact-form-style01 .input_btn input[type=button], .contact-form-style01 .input_btn input[type=submit] {        font-size: 14px;    }    .contact-form-style01 .contact-table dt {        font-size: 16px;        padding: 11px 20px;    }}@media screen and (max-width: 768px) {    .contact-form-style01 .contact-table dl:not(:first-child) dt {        border-top: 1px solid var(--scolor);    }}/* RESET */.under main table:last-child,.under main .list_faq:last-child,.under main .list_faq dl:last-child,.under main .list01:last-child,.under main .list01 li:last-child,.under main .list02:last-child,.under main .list02 li:last-child,.under main .list_check:last-child,.under main .list_check li:last-child,.under main .list_step:last-child,.under main .list_step dl:last-child,.under main section p:last-child,.under main p:last-child,.under main .frame01:last-child,.under main .frame02:last-child,.under main .frame_pick:last-child {    margin-bottom: 0}.under .txt_cl_main {    color: #a8a183;}.red {    color: red;}.check_privacy {    text-align: center;    margin: 10px 0 0;}.check_privacy a {    text-decoration: underline;    color: #a8a183;}.grecaptcha-badge {    visibility: hidden;}.h_contact_tel a{  pointer-events: auto;  cursor: pointer;  position: relative;  z-index: 9999;}header::before, header::after{  pointer-events: none;}/* footer の親メニュー（submenu直下のa）もクリックできるようにする */footer .ft_menu_ct li.submenu > a{  pointer-events: auto !important;  cursor: pointer;}footer::before{  pointer-events: none;}/* EGDE */@supports (-ms-ime-align: auto) {}/* FIREFOX */@-moz-document url-prefix() {}/* Safari 10.1+ (which is the latest version of Safari at this time) */@media not all and (min-resolution: 0.001dpcm) {}