@charset "UTF-8";

/*-------------------------------------------
basic configuration
-------------------------------------------*/
html {
    font-size: 100%;
}
video {
    max-width: 100%;
    vertical-align: bottom;
}
ul {
    list-style: none;
}
a {
    color: #b7b7b7;
    text-decoration: none;
}
body {
    color: #000000;
    font-family: 'Noto Sans JP', sans-serif;
}
img {
    max-width: 100%;
    margin: auto;
    display: block;
}
/*-------------------------------------------
pc、sp表示設定
-------------------------------------------*/
.pc {
    display: block !important;
}
.sp {
    display: none !important;
}
@media only screen and (max-width: 767px) {
.pc {
    display: none !important; 
}
.sp {
    display: block !important;
}
}
/*-------------------------------------------
layout
-------------------------------------------*/
#container_0{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#header{
    width: 300px;
    height: 100%;
    position: fixed;
    z-index: 1000;
    top: 0;
}

@media screen and (max-width:768px){
#header {
    width :100%;
} 
#main-area {
    width :100%;
    margin-left: 0;
    padding-top: 0px;
} 
}
/*-------------------------------------------
global navigation
-------------------------------------------*/
nav ul{
    list-style: none;
    text-align: center;
}
nav ul li a{
    position: relative;
    display: block;
    text-decoration: none;
    color: #ffffff;
    padding: 20px 20px 16px 20px;
    transition: all .3s;
}
nav ul li a:hover{
    color:#ffffff; 
}
nav ul li li a{
    padding: 16px;
}
nav ul li.has-child img{
    max-width: 100%;
    height: auto;
    transition: all .7s;
    vertical-align: bottom;
    margin-top: 0px;
}
nav ul li.has-child img:hover{
    transform: scale(1.2);
}
nav ul li.has-child dt{
    overflow: hidden;
    margin:3px 20px 20px 20px;
}
nav li.has-child ul{
    position: absolute;
    top:0;
    left:100%;
    z-index: 4;
    width:100%;
    height: 100vh;
    background-color: #ffffff;
    opacity: 0.8;
    background-size: 10px 10px;
    background-image: repeating-linear-gradient(-45deg, #ececec 0, #ececec 2px, #ffffff 0, #ffffff 50%);
    display: none;
    visibility: hidden;
    opacity: 0;
    transition: all .3s;
}
nav li.has-child:hover > ul{
    display: block;
    visibility: visible;
    opacity: 1;
}
nav li.has-child ul li a{
    color: #000000;
}
nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
    color: #B39977;
}
@media screen and (max-width: 767px) { 
nav ul li li a{
    padding: 10px 10px;
}
#header {
    width: 100%;
    height: 72px;
    padding: 0;
    z-index: 10;
}
#navi {
    width: 300px;
    background: #ffffff;
    padding: 25px;
    position: fixed;
    top: 0;
    left: -300px;
    bottom: 0;
    opacity: 0;
    overflow-y: auto;
    transition: 0.5s;
    z-index: 20;
}
.open #navi {
    left: 0;
    opacity: 1;
}
#navi ul.nav-menu {
    margin-bottom: 30px;
}
#navi ul li {
    padding: 0;
}
.hamburger {
    width: 30px;
    height: 30px;
    cursor: pointer;
    position: fixed;
    top: 22px;
    right: 18px;
    transition: 0.5s;
    z-index: 20;
    margin-right: 10px;
}
.hamburger span {
    width: 45px;
    height: 1px;
    background-color: #ffffff;
    border-radius: 4px;
    display: block;
    position: absolute;
    left: 0;
    transition: 0.5s;
    margin-right: 10px;
}
.hamburger span:nth-child(1) {
    top: 8px;
}
.hamburger span:nth-child(2) {
    bottom: 8px;
}
.open .hamburger span {
    background-color: #ffffff;
}
.open .hamburger span:nth-child(1) {
    transform: translateY(13px) rotate(-315deg);
}
.open .hamburger span:nth-child(2) {
    transform: translateY(0px) rotate(315deg);
}
#mask {
    display: none;
    transition: 0.5s;
}
.open #mask {
    width: 100%;
    height: 100%;
    background-color: #ada89e;
    cursor: pointer;
    display: block;
    opacity: 0.8;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
}
#navi {
    background:#ada89e;
    color: #ffffff;
}
#navi li.has-child ul li{
    text-align: left;
}
#navi li.has-child ul li dl{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#navi li.has-child ul li dt{
    width:30%;
    height: auto;
    margin: 0;
}
#navi li.has-child ul li dd{
    width:64%;      
}
#navi li.has-child ul{
    position: relative;
    left:0;
    top:30px;
    width:100%;
    height: auto;
    visibility:visible;
    opacity:1;
    display: none;
    transition:none;
}
#navi li.has-child:hover > ul {
    display: none;
}
#navi ul li a{
    border-bottom:1px solid #da1212;
    color: #000000;
}
#navi ul li li a{
    padding: 0;
}
#navi ul li.has-child a::before{
    transform: rotate(135deg);
    left:20px;
    right: inherit;
}
#navi ul li.has-child.active a::before{
    transform: rotate(-45deg);
}
nav ul li.has-child dt{
    overflow: hidden;
    margin:100px 100px 100px 100px;
}
nav ul li.has-child img{
    width: 310px;
    transition: all .7s;
    vertical-align: bottom;
    margin-top: 0px;
}
}
/*-------------------------------------------
.container_nav
-------------------------------------------*/
@media screen and (min-width: 767px) {
#container_nav {
    max-width: auto;
    margin: 0px;
    padding: 8px 0 0 50px;
    border-bottom: solid 0px #000000;
}
}
@media screen and (max-width: 767px) {
    #container_nav {
    max-width: auto;
    margin: 0px;
    padding: 8px 0 0 0;
    border-bottom: solid 0px #000000;   
    }
}
/*-------------------------------------------
.text_nav
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_nav {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 15px;
    color: #ffffff;
    text-align: left;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0px;  
}
}
@media screen and (max-width: 767px) {
.text_nav {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 500;
    font-size: 15px;
    color: #ffffff;
    text-align: left;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 10px;  
}
}
/*-------------------------------------------
.text_nav_sub
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_nav_sub {
    font-family: 'Noto Sans JP', sans-serif;
    font-style:bold;
    font-weight: 200;
    font-size: 10px;
    color: #ffffff;
    text-align: left;
    padding: 0 20px 40px 20px;
    letter-spacing: 2px;
    line-height: 5px;
}
}
@media screen and (max-width: 767px) {
.text_nav_sub {
    font-family: 'Noto Sans JP', sans-serif;
    font-style:bold;
    font-weight: 200;
    font-size: 11px;
    color: #ffffff;
    text-align: left;
    padding: 0 20px 40px 20px;
    margin-bottom: 50px;
    letter-spacing: 2px;
    line-height: 12px;
}
}
/*-------------------------------------------
.text_nav_in
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_nav_in {
    font-family: 'Noto Sans JP', sans-serif;
    font-style:bold;
    font-weight: 500;
    font-size: 12px;
    color: #ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0px;  
}
}
@media screen and (max-width: 767px) {
.text_nav_in {
    font-family: 'Noto Sans JP', sans-serif;
    font-style:bold;
    font-weight: 500;
    font-size: 13px;
    color: #ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 0px;
    line-height: 20px;  
}
}
/*-------------------------------------------
#container_icon
-------------------------------------------*/
@media screen and (min-width: 767px) {
#container_icon {
    display: flex;
    flex-wrap: wrap; 
    justify-content: left;
    padding: 150px 55px 15px 55px;
}
}
@media screen and (max-width: 767px) {
#container_icon {
    display: flex;
    flex-wrap: wrap; 
    justify-content: left;
    padding: 15px 0px 150px 0px;
}
}
/*-------------------------------------------
.icon
-------------------------------------------*/
@media screen and (min-width: 767px) {
.icon{
    box-sizing:border-box;
    flex-basis: 55px;
    padding: 15px;
}
}
@media screen and (max-width: 767px) {
.icon{
    box-sizing:border-box;
    flex-basis: 70px;
    padding: 18px;
}
}
/*-------------------------------------------
.background
-------------------------------------------*/
@media screen and (min-width: 767px) {
.background_1 {
    background-color: #000000;
    padding: 100px;
}
.background_2 {
    background-color: #ada89e;
    padding-top: 100px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 100px;
}
.background_3 {
    background-color: #ffffff;
    padding-top: 0;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 0;
}
.background_4 {
    background-color: #5e584b;
    padding: 40px;
}
.background_5 {
    background-color: #fac203; 
    padding: 100px;
}
.background_6 {
    background-color: #f7f8f8; 
    padding: 15px 15px;
    margin-top: 25px;
}
.background_7 {
    background-color: #37bc73; 
    padding: 0px;
}
.background_8 {
    background-color: #e9e9e9; 
    padding: 0px;
}
.background_9 {
    background-color: #fac203;
    padding-top: 100px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 0;
}
.background_10 {
    background-color: #fac203;
    padding-top: 50px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 0px;
}
.background_11 {
    background-color: #ffffff; 
    margin: 2px;
    padding: 20px;
}
.background_13 {
    background-color: #ffffff;
    padding: 100px 100px 100px 100px;
}
.background_14 {
    background-color: #000000;
    padding: 100px;
}
.background_15 {
    background-color: #ada89e; 
    margin: 0;
    padding: 10px 30px 30px 30px;
}
.background_16 {
    background-color: #000000;
    padding: 100px;
}
.background_17 {
    background-color: #000000;
    padding-top: 100px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 0;
}
.background_18 {
    background-color: #ada89e;
    padding-top: 10px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 100px;
}
.background_19 {
    background-color: #ada89e;
    padding-top: 0;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 100px;
}
.background_20 {
    background-color: #000000;
    padding-top: 0px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 10px;
}
.background_21 {
    background-color: #2d2d2d; 
    padding: 20px;
    margin-bottom: 10px;
}
.background_22 {
    background-color: #000000;
    padding-top: 0px;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 10px;
}
.background_23 {
    background-color: #ada89e;
    padding-top: 0;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 100px;
}
.background_stripe {
    background-color: #ffffff;
    background-size: 10px 10px;
    background-image: repeating-linear-gradient(-45deg, #ececec 0, #ececec 2px, #ffffff 0, #ffffff 50%);
    padding: 100px;
}
.background_stripe_GR {
    background-color: #ffffff;
    background-size: 10px 10px;
    background-image: repeating-linear-gradient(-45deg, #eaf7eb 0, #eaf7eb 3px, #ffffff 0, #ffffff 50%);
    padding: 100px;
}
}  
@media screen and (max-width: 767px) {
.background_1 {
    background-color: #000000;
    padding: 0;
    background-size: 100%;
    margin-bottom: 0;
    margin-top: 60px;
}
.background_2 {
    background-color: #ada89e;
    padding-top: 0px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 60px;
}
.background_3 {
    background-color: #ffffff;
    padding-top: 0;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 0;
}
.background_4 {
    background-color: #5e584b;
    padding: 40px 20px;
    margin-bottom: 0;
}
.background_6 {
    background-color: #f7f8f8; 
    padding: 15px 15px;
    margin-top: 25px;
}
.background_7 {
    background-color: #37bc73; 
    padding-top: 60px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 60px;
}
.background_8 {
    background-color: #e9e9e9; 
    padding-top: 60px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 60px;
}
.background_9 {
    background-color: #fac203;
    padding-top: 60px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 0;
}
.background_10 {
    background-color: #fac203;
    padding-top: 30px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 60px;
}
.background_11 {
    background-color: #ffffff; 
    margin: 2px 0px 0px 0px;
    padding: 15px;
}
.background_13 {
    background-color: #ffffff;
    padding-top: 60px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 60px;
}
.background_14 {
    background-color: #000000;
    padding-top: 0px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 30px;
}
.background_15 {
    background-color: #ada89e; 
    margin: 0;
    padding: 0px 0px 30px 0px;
}
.background_17 {
    background-color: #000000;
    padding-top: 60px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 0;
}
.background_18 {
    background-color: #aea89e;
    padding-top: 1px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 30px;
}
.background_19 {
    background-color: #ada89e;
    padding-top: 0;
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 60px;
}
.background_20 {
    background-color: #000000;
    padding-top: 0px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 10px;
}
.background_21 {
    background-color: #2d2d2d; 
    padding: 10px 1px 10px 1px;
    margin-bottom: 10px;
}
.background_22 {
    background-color: #000000;
    padding-top: 0px;
    padding-right: 0px;
    padding-left: 0px;
    padding-bottom: 10px;
}
.background_23 {
    background-color: #ada89e;
    padding-top: 0;
    padding-bottom: 60px;
}
.background_stripe {
    background-color: #ffffff;
    background-size: 10px 10px;
    background-image: repeating-linear-gradient(-45deg, #ececec 0, #ececec 2px, #ffffff 0, #ffffff 50%);
    padding-top: 60px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 60px;
}
.background_stripe_GR {
    background-color: #ffffff;
    background-size: 10px 10px;
    background-image: repeating-linear-gradient(-45deg, #eaf7eb 0, #eaf7eb 3px, #ffffff 0, #ffffff 50%);
    padding-top: 60px;
    padding-right: 30px;
    padding-left: 30px;
    padding-bottom: 60px;
}
}
/*-------------------------------------------
.container_1
-------------------------------------------*/
.container_1 {
    max-width: 1000px;
    margin: auto;
    padding: 0 0 0 0;
}
/*-------------------------------------------
.container_2
-------------------------------------------*/
.container_2 {
    max-width: 800px;
    margin: auto;
    padding: 0 0 0 0;
}
/*-------------------------------------------
.container_3
-------------------------------------------*/
@media screen and (min-width: 767px) {
.container_3 {
    padding: 50px;
}
}
@media screen and (mmx-width: 767px) {
.container_3 {
    max-width: 700px;
    margin: auto;
    padding: 0;
}
}
/*-------------------------------------------
.container_4
-------------------------------------------*/
@media screen and (min-width: 767px) {
.container_4 {
    max-width: 800px;
    margin: auto;
    padding: 0;
}
}
@media screen and (max-width: 767px) {
.container_4 {
    max-width: 800px;
    margin: auto;
    padding: 0;
}
}
/*-------------------------------------------
.container_5
-------------------------------------------*/
@media screen and (min-width: 767px) {
.container_5 {
    max-width: 800px;
    margin: auto;
    padding: 0;
}
}
@media screen and (max-width: 767px) {
.container_5 {
    max-width: 500px;
    margin: auto;
    padding: 0;
}
}
/*-------------------------------------------
.container_logo
-------------------------------------------*/
@media screen and (min-width: 767px) {
.container_logo {
    max-width: 400px;
    margin: auto;
    padding: 0;
}
}
@media screen and (max-width: 767px) {
.container_logo {
    max-width: 500px;
    margin: auto;
    padding: 0;
}
}
/*-------------------------------------------
.column
-------------------------------------------*/
@media screen and (min-width: 767px) {
.column {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    margin-top: 0;
}
.column .img {
    width: 50%;
    padding: 0 0 0 0;
}
.column .text {
    width:  50%;
    padding: 0 0 0 0;
}
}
@media screen and (max-width: 767px) {
.column {
    flex-direction: column;
}
.column .img {
    width: 100%;
    padding: 30px 0 0 0;
}
.column .text {
    width: 100%;
    padding: 0;
}
}
/*-------------------------------------------
column2
-------------------------------------------*/
@media screen and (min-width: 767px) {
#column2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0;
    margin-top: 0;
}
#column2 article {
    width: 45%;
}
}
@media screen and (max-width: 767px) {
#column2 {
    flex-direction: column;
    align-items: center;
    margin-bottom: 0;
    margin-top: 0;
}
#column2 article {
    width: 100%;
}
}
/*-------------------------------------------
column3
-------------------------------------------*/
@media screen and (min-width: 767px) {
#column3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0;
    margin-top: 0;
}
#column3 article {
    width: 29%;
}
}
@media screen and (max-width: 767px) {
#column3 {
    flex-direction: column;
    align-items: center;
    margin-bottom: 0;
    margin-top: 0;
}
#column3 article {
    width: 100%;
}
}
/*-------------------------------------------
.text_sub
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_sub {
    font-family: 'Barlow', sans-serif;
    font-style:italic;
    font-weight: 300;
    font-size: 11px;
    color: #424141;
    text-align: left;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 32px;  
}
}
@media screen and (max-width: 767px) {
.text_sub {
    font-family: 'Barlow', sans-serif;
    font-style:italic;
    font-weight: 300;
    font-size: 11px;
    color: #424141;
    text-align: left;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 32px;  
}
}
/*-------------------------------------------
.text_title
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_title {
    font-family: 'Shippori Mincho', serif;
    font-style:bold;
    font-weight: 300;
    font-size: 48px;
    color: #ffffff;
    text-align: left;
    padding: 0;
    margin-bottom: 32px;
    letter-spacing: 2px;
    line-height: 72px;
}
}
@media screen and (max-width: 767px) {
.text_title {
    font-family: 'Shippori Mincho', serif;
    font-style:bold;
    font-weight: 300;
    font-size: 32px;
    color: #ffffff;
    text-align: left;
    padding: 0;
    margin-bottom: 40px;
    letter-spacing: 1px;
    line-height: 41px;
}
}
/*-------------------------------------------
.text_body
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_body {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 13px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 35px;
    text-align: center;
}
}
@media screen and (max-width: 767px) {
.text_body {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 13px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 30px;
}
}
/*-------------------------------------------
.text_body2
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_body2 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 14px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 25px;
}
}
@media screen and (max-width: 767px) {
.text_body2 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 14px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 25px;
}
}
/*-------------------------------------------
.text_body3
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_body3 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 13px;
    color: #000000;
    margin-bottom: 0;
    letter-spacing: 0;
    line-height: 30px;
}
}
@media screen and (max-width: 767px) {
.text_body3 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 13px;
    color: #000000;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 30px;
}
}
/*-------------------------------------------
.text_body4
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_body4 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 14px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 0;
    line-height: 30px;
    border-bottom: solid 1px #ccc;
    padding-bottom: 0;
}
}
@media screen and (max-width: 767px) {
.text_body4 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 14px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 30px;
    border-bottom: solid 1px #ccc;
    padding-bottom: 0;
}
}
/*-------------------------------------------
.text_body5
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_body5 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 13px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 30px;
}
}
@media screen and (max-width: 767px) {
.text_body5 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 13px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 30px;
}
}
/*-------------------------------------------
.text_body6
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_body6 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 11px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 25px;
}
}
@media screen and (max-width: 767px) {
.text_body6 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 12px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 25px;
}
}
/*-------------------------------------------
.text_body7
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_body7 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 15px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 25px;
    padding-top: 10px;
}
}
@media screen and (max-width: 767px) {
.text_body7 {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 15px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 25px;
}
}
/*-------------------------------------------
.text_warning
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_warning {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 12px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 17px;
    text-align: center;
}
}
@media screen and (max-width: 767px) {
.text_warning {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 12px;
    color: #ffffff;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 22px;
    text-align: center;
}
}
/*-------------------------------------------
.text_Details
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_Details{
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 12px;
    color: #747474;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 17px;
}
}
@media screen and (max-width: 767px) {
.text_Details{
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 12px;
    color: #747474;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 22px;
}
}
/*-------------------------------------------
.text_management
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_management {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 14px;
    color: #919191;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 17px;
    text-align: center;
}
}
@media screen and (max-width: 767px) {
.text_management {
    font-family: 'Shippori Mincho', serif;
    font-style:normal;
    font-weight: 100;
    font-size: 14px;
    color: #919191;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 22px;
    text-align: center;
}
}
/*-------------------------------------------
.text_content_sub
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_content_sub {
    font-family: 'Shippori Mincho', serif;
    font-style: light;
    font-weight: 200;
    font-size: 15px;
    color:#ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 0;
    line-height: 0;
}
}
@media screen and (max-width: 767px) {
.text_content_sub {
    font-family: 'Shippori Mincho', serif;
    font-style: light;
    font-weight: 200;
    font-size: 15px;
    color:#ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 0;
    line-height: 0;
}
}
/*-------------------------------------------
.text_content_sub_en
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_content_sub_en {
    font-family: 'Barlow', sans-serif;
    font-style: italic;
    font-weight: 200;
    font-size: 14px;
    color:#000000;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0;
}
}
@media screen and (max-width: 767px) {
.text_content_sub_en {
    font-family: 'Barlow', sans-serif;
    font-style: italic;
    font-weight: 200;
    font-size: 14px;
    color:#000000;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0;
}
}    
/*-------------------------------------------
.text_content_main_en
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_content_main_en {
    font-family: 'Barlow', sans-serif;
    font-style: bold;
    font-weight: 700;
    font-size: 35px;
    color:#ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 32px;
    letter-spacing: 2px;
}
}
@media screen and (max-width: 767px) {
.text_content_main_en {
    font-family: 'Barlow', sans-serif;
    font-style: bold;
    font-weight: 700;
    font-size: 32px;
    color:#ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 32px;
    letter-spacing: 2px;
}
}
/*-------------------------------------------
.text_title_2column_WH
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_title_2column_WH {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 35px;
    color:#ffffff; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 90px;
}
}
@media screen and (max-width: 767px) {
.text_title_2column_WH {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 32px;
    color:#ffffff; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 90px;
}
}
/*-------------------------------------------
.text_title_2column_BK
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_title_2column_BK {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 35px;
    color:#000000; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 90px;
}
}
@media screen and (max-width: 767px) {
.text_title_2column_BK {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 32px;
    color:#000000; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 90px;
}
}
/*-------------------------------------------
.text_title_3column
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_title_3column {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 16px;
    color:#ffffff; 
    text-align: center;
    padding: 0;
    margin-bottom: 60px;
    letter-spacing: 1px;
    line-height: 30px;
}
}
@media screen and (max-width: 767px) {
.text_title_3column {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 16px;
    color:#ffffff; 
    text-align: center;
    padding: 0;
    margin-bottom: 60px;
    letter-spacing: 1px;
    line-height: 30px;
}
}
/*-------------------------------------------
.text_title_slider
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_title_slider {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 16px;
    color:#424141; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 2px;
    line-height: 55px;
}
}
@media screen and (max-width: 767px) {
.text_title_slider {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 12px;
    color:#424141; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 55px;
}
}
/*-------------------------------------------
.text_title_slider2
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_title_slider2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 11px;
    color:#000000; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 55px;
}
}
@media screen and (max-width: 767px) {
.text_title_slider2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 11px;
    color:#000000; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 55px;
}
}
/*-------------------------------------------
.text_copyright
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_copyright {
    font-family: 'Barlow', sans-serif;
    font-style: bold;
    font-weight: 400;
    font-size: 12px;
    color: #ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0;  
}
}
@media screen and (max-width: 767px) {
.text_copyright {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 400;
    font-size: 10px;
    color: #ffffff;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0;  
}
}
/*-------------------------------------------
.firstview
-------------------------------------------*/
@media screen and (min-width: 767px) {
.firstview {
    margin: 0;
    margin-top: 0;
}
}
@media screen and (max-width: 767px) {
.firstview {
    margin-top: 0;
}
}
/*-------------------------------------------
.photo
-------------------------------------------*/
.photo {
    margin: 0;
    background-color: #1a1a1a;
}
/*-------------------------------------------
.switching
-------------------------------------------*/
@media screen and (min-width: 767px) {
.switching{
        margin-top: 100px;
}
}
@media screen and (max-width: 767px) {
.switching{
    margin-top: 50px;
}
}
/*-------------------------------------------
.text_btn
-------------------------------------------*/
@media screen and (min-width: 767px) {
.text_btn {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 16px;
    color:#ada89e; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0;
}
}
@media screen and (max-width: 767px) {
.text_btn {
    font-family: 'Barlow', sans-serif;
    font-style:bold;
    font-weight: 600;
    font-size: 20px;
    color:#ada89e; 
    text-align: center;
    padding: 0;
    margin-bottom: 0;
    letter-spacing: 1px;
    line-height: 0;
}
}
/*-------------------------------------------
.btn_new
-------------------------------------------*/
@media screen and (min-width: 767px) {
.btn_new {
    text-align: left;
}
.btn_new a{
    width: 190px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 50px;
    transition: all .2s;
    border: 2px solid #000000;
    box-shadow: #000000 2px 3px 0 0;
    display: inline-block;
    margin-top: 54px;
}
.btn_new a:hover {
    background: #fac203;
}
}
@media screen and (max-width: 767px) {
.btn_new {
    text-align: center;
}
.btn_new a{
    width: 190px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 50px;
    transition: all .2s;
    border: 2px solid #000000;
    box-shadow: #000000 2px 3px 0 0;
    display: inline-block;
    margin-top: 40px;
    margin-bottom: 20px;
}
.btn_new a:hover {
    background: #fac203;
}
}
/*-------------------------------------------
.btn_new2
-------------------------------------------*/
@media screen and (min-width: 767px) {
.btn_new2 {
    text-align: center;
}
.btn_new2 a{
    width: 240px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 0;
    transition: all .2s;

    display: inline-block;
    margin-top: 40px;
}
.btn_new2 a:hover {
    background: #a29482;
}
}
@media screen and (max-width: 767px) {
.btn_new2 {
    text-align: center;
}
.btn_new2 a{
    width: 240px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 0;
    transition: all .2s;

    display: inline-block;
    margin-top: 40px;
    margin-bottom: 30px;
}
.btn_new2 a:hover {
    background: #a29482;
}
}
/*-------------------------------------------
.btn_new3
-------------------------------------------*/
@media screen and (min-width: 767px) {
.btn_new3 {
    text-align: center;
}
.btn_new3 a{
    width: 190px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 50px;
    transition: all .2s;
    border: 2px solid #000000;
    box-shadow: #000000 2px 3px 0 0;
    display: inline-block;
    margin-top: 40px;
}
.btn_new3 a:hover {
    background: #fac203;
}
}
@media screen and (max-width: 767px) {
.btn_new3 {
    text-align: center;
}
.btn_new3 a{
    width: 190px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 50px;
    transition: all .2s;
    border: 2px solid #000000;
    box-shadow: #000000 2px 3px 0 0;
    display: inline-block;
    margin-top: 40px;
    margin-bottom: 20px;
}
.btn_new3 a:hover {
    background: #fac203;
}
}
@media screen and (max-width: 767px) {
.column3_img {
    margin-top: 80px;
}
}
/*-------------------------------------------
.btn_new4
-------------------------------------------*/
@media screen and (min-width: 767px) {
.btn_new4 {
    text-align: center;
}
.btn_new4 a{
    width: 380px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 50px;
    transition: all .2s;
    border: 2px solid #000000;
    box-shadow: #000000 2px 3px 0 0;
    display: inline-block;
    margin-top: 40px;
}
.btn_new4 a:hover {
    background: #fac203;
}
}
@media screen and (max-width: 767px) {
.btn_new4 {
    text-align: center;
}
.btn_new4 a{
    width: 190px;
    padding: 17px 0 17px 0;
    text-align: center;
    text-decoration: none;
    display: block;
    margin: 0 auto;
    color: #000000;
    background: #ffffff;
    line-height: 1;
    border-radius: 50px;
    transition: all .2s;
    border: 2px solid #000000;
    box-shadow: #000000 2px 3px 0 0;
    display: inline-block;
    margin-top: 40px;
    margin-bottom: 20px;
}
.btn_new4 a:hover {
    background: #fac203;
}
}
@media screen and (max-width: 767px) {
.column4_img {
    margin-top: 80px;
}
}
/*-------------------------------------------
solid
-------------------------------------------*/
#solid {
    border-bottom: solid 1px #dddddd;
    padding-bottom: 0.6em;
}
/*-------------------------------------------
bunner
-------------------------------------------*/
@media screen and (min-width: 990px) { 
.floating-banner {
    position: fixed;
    z-index: 999999;
    bottom: 10px;
    right: 10px;
    width: 300px;
}
.floating-banner__image {
    max-width: 100%;
}
}
@media screen and (max-width: 990px) { 
.floating-banner {
    position: fixed;
    z-index: 999999;
    bottom: 10px;
    text-align: center;
    margin: 0 10px 0px 10px;
}
.floating-banner__image {
    max-width: 100%;
}
}
/*-------------------------------------------
youtube
-------------------------------------------*/
iframe.youtube-16-9 {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
}
/*-------------------------------------------
#company_solid
-------------------------------------------*/
#company_solid {
    margin-top: 20px;
}
/*-------------------------------------------
.fadein(0time)
-------------------------------------------*/
.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    z-index: 2;
}
@keyframes fadeUpAnime {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
/*-------------------------------------------
.fadein(scroll)
-------------------------------------------*/
.fadein {
    opacity: 0;
    transform: translate(0, 30px);
    transition: all 1500ms;
}
.fadein.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}
/*-------------------------------------------
popup
-------------------------------------------*/
@media screen and (min-width: 767px) {
.popup_wrap input {
    display: none;
}
.popup_overlay {
    display: flex;
    justify-content: center;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    background: #414141;
    opacity: 0;
    transition: opacity 0.5s, transform 0s 0.5s;
    transform: scale(0);
}
.popup_trigger {
    position: absolute;
    width: 100%;
    height: 100%;
}
.popup_content {
    position: relative;
    align-self: center;
    width: 100%;
    max-width: 800px;
    box-sizing: border-box;
    background: #ada89e;
    line-height: 1px;
    transition: 0.5s;
}
.popup_content p{
    padding:20px 20px 20px 20px;
    text-align: left;
}
.popup_content img{
    padding:20px 80px 20px 80px;
    text-align: center;
}
.close_btn {
    position: absolute;
    top: 20px;
    right: 12px;
    font-size: 40px;
    cursor: pointer;
    color:#000000;
}
.popup_wrap input:checked ~ .popup_overlay {
    opacity: 1;
    transform: scale(1);
    transition: opacity 1s;
}
}
@media screen and (max-width: 767px) {
.popup_wrap input {
    display: none;
}
.popup_overlay {
    display: flex;
    justify-content: center;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    background: #161616;
    opacity: 0;
    transition: opacity 0.5s, transform 0s 0.5s;
    transform: scale(0);
}
.popup_trigger {
    position: absolute;
    width: 100%;
    height: 100%;
}
.popup_content {
    position: relative;
    align-self: center;
    width: 100%;
    max-width: 800px;
    box-sizing: border-box;
    background: #ada89e;
    line-height: 1px;
    transition: 0.5s;
}
.popup_content p{
    padding:20px 20px 20px 20px;
    text-align: left;
}
.popup_content img{
    padding:30px 30px 30px 30px;
    text-align: center;
}
.close_btn {
    position: absolute;
    top: 20px;
    right: 12px;
    font-size: 30px;
    cursor: pointer;
    color:#000000;
}
.popup_wrap input:checked ~ .popup_overlay {
    opacity: 1;
    transform: scale(1);
    transition: opacity 1s;
}
}