﻿/* all page */
/* font */
@import url('https://fonts.googleapis.com/css2?family=Nunito&display=swap');
#intro .intro_title, #top_cms .cms_title p, .top_cms_box.cms1 .cms_title p, .cate_list li .cate_no, .cate_title, .sub_cate_title, .box_title, .box_title1{
    font-family: 'Nunito', sans-serif;
}

/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #160a0a;text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
.txt_color1{color: #ff8161;} /* メインカラー */
.txt_color2{color: #ff8161;} /* サブカラー */
.txt_color3{color: #a67c52} /* アクセントカラー1 */
.txt_color4{color: #fbac98;} /* アクセントカラー2 */

/* background-color */
.bg_color1{background-color: #ff8161;} /* メインカラー */
.bg_color2{background-color: #fff7ed;} /* サブカラー */
.bg_color3, .hvr_bg_color3:hover{background-color: #fff7ed;} /* アクセントカラー1 */
.bg_color4{background-color: #ffa591;} /* アクセントカラー2 */

/* border-color ※!important */
.border_color1{border-color: #160a0a}
.border_color2{border-color: #ffa591;}
.border_color3{border-color: #ff8161;}
.border_color4{border-color: #ffa591;}

.overlay {
    background-color: rgba(255,129,97,0.5);
}
.blur {
    background: #ffffff;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.txt_white, .hvr_txt_white:hover {
    color: #333;
}
#pc_nav li a::after, #footer_nav li a::after {
    background: #fc9f87;
    height: 2px;
}

/* header */
header.scr_header {
    background-color: rgba(255,255,255,0.9)!important;
}
#logo{
    padding-left: 20px;
}
#pc_nav li a {
    color: #000;
    font-weight: bold;
}
#pc_nav li a::after {
    background: #fc9f87;
    height: 2px;
}
.menu-trigger-bar {
    background-color: black;
}
.menu-trigger-bar:before {
    background-color: #ff8161;
}

/* top ----------------*/

/* main img */
#main_img:before {
    background-color: rgba(255,255,255,0.35)!important;
}
#main_img .scr, #page_title_img .scr {
    color: #fff;
    font-weight: bold;
}
#main_img .catch{
    color: #ffffff;
    text-shadow: 1px 1px 0 #ff8161, -1px -1px 0 #ff8161, -1px 1px 0 #ff8161, 1px -1px 0 #ff8161, 0px 1px 0 #ff8161, 0-1px 0 #ff8161, -1px 0 0 #ff8161, 1px 0 0 #ff8161;
    bottom: 18%;
    left: 50px;
    font-size: calc(1rem + 50px);
    font-weight: bold;
    letter-spacing: 0.8px;
}
#main_img .catch br{
    display: none;
}

/* main */
.liana {
    color: #ff8161;
    font-family: 'Nunito', sans-serif;
}
.intro_img1, .intro_photo .filter, .intro_img2, .con_img, .con_photo .filter {
    border-radius: 50px;
}
#intro .intro_photo h2, .top_title h2 > span {
    color: #ff8161;
}
.top_title .rotate_txt span:nth-child(-n+4) {
    color: #fff;
}

/* intro */
#intro .con_title{
    line-height: 1;
}
#intro .intro_title{
    font-size: 20px;
    font-weight: bold;
    position: relative;
}
#intro .intro_title::after{
    content: "";
    background-color: #ff8161;
    width: 35px;
    height: 2px;
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
}

/* contents */
#contents .con_title {
    font-size: 28px;
	font-weight: bold;
	background:linear-gradient(transparent 60%, #fff0dd 60%);
	display: inline;
}
#contents .con_txt {
    margin-top: 20px;
}

/* topcms */
.top_cms_box.cms1::before {
    display: inline-block;
    content: "";
    width: 100%;
    height: 100%;
    background: #fff7ed;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
#top_cms .cms_title{
	text-align: center;
	margin-bottom: 100px;
}
#top_cms .cms_title p, .top_cms_box.cms1 .cms_title p{
    font-family: 'Nunito', sans-serif;
	font-weight: bold;
	position: relative;
}
#top_cms .cms_title p::before{
	content: "";
	border-bottom: solid 2px #ff8161;
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 35px;
}
#top_cms .top_cms_box{
    position: relative;
}
#top_cms .top_cms_box:nth-child(3)::before{
    content: "";
    background-color: #fff7ed;
    width: 200%;
    height: 100%;
    position: absolute;
    top: 0;
    left: -50%;
    z-index: -2;
}
.more .more_item{
    border-radius: 10px;
}
.more .more_item:hover{
    border-color: #ff8161;
}
.more .more_item:hover .icon-right.after:before {
    color: black;
}
.more .more_item:hover .icon-right.after:after {
    color: black;
}
.more .more_item:after{
    display: none;
}

.cms_4-b .cate_box figure {
    border-radius: 10px;
}
.cms_4-b .box_inner .hover {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    background-color: rgba(255,255,255,0.8);
    background-position: 0 -125px;
}
.cms_4-b .box_inner a:hover .hover {
    opacity: 1;
}
.cms_4-b .box_inner .hover p {
    font-size: 16px;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 65%;
    left: 0;
    text-align: center;
    color: #000;
    font-weight: bold;
}
.cms_4-b .box_inner .hover:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 45px;
    height: 45px;
    background-image: url(./Dup/img/plus.png);
    background-position: top center;
    background-size: 45px;
    background-repeat: no-repeat;
    transform: translate(-50%, -50%);
}

.cms_6-a .cate_box:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
}
.v_type2 .demo_box {padding-top: 70px}
.v_type2 {counter-reset: number 0;}
.v_type2 .cate_box {padding: 50px 20px 30px;}
.v_type2 .cate_box:before {
    counter-increment: number 1;
    content: "0" counter(number);
    display: inline-block;
    position: absolute;
    top: -43px;
    left: -5px;
    z-index: 1;
    font-size: 80px;
    font-weight: 100;
    font-style: italic;
    color: #a67c52;
    background-color: #fff;
    line-height: 1;
    padding: 0 25px 0 0;
}

/* footer */
.info_btn_wrap a{
    color: #fff;
    background-color: #ff8161;
}
.info_btn_wrap a:hover{
    color: #ff8161;
    background-color: #fff;
}
footer .scr {
    color: #ff8161;
    font-size: 18px;
    font-weight: bold;
}
.scroll_d > span {
    background-color: #ff8161;
}
footer .scroll_d > span::before {
    background-color: #ffefef;
}
#copyright, #copyright a{
    color: #fff;
}
.line_banner{
    max-width: 350px;
    margin-top: 50px;
}
.map {
    height: 550px;
}


/* underpage */
#page_title_img:before {
    background-color: rgba(255,255,255,0.35)!important;
}
#page_title .en {
    color: #ff8161;
}
#page_title .en:before {
    background-color: #ff8161;
}
#page_title .jp span {
    line-height: 2;
}
.cate_list li a{
    color: #fff;
}
.cate_list li a:hover{
    color: #ff8161;
}

/* cms1 */
.pager li a {
    background-color: #fff7ed;
}
.youtube_box{
  position: relative;
  width: 60%;
  padding-top: 36.25%;
margin-bottom: 50px;
}
.youtube_box iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* cms2 */

/* cms3 */
.flow_type2 .cate_title {
    border-bottom: solid 3px #ccc;
    position: relative;
}
.flow_type2 .cate_title::after {
    content: '';
    display: block;
    background: #ffa591;
    width: 30%;
    height: 3px;
    position: absolute;
    left: 0;
    bottom: -3px;
}
.flow_type2 .box_wrap {
	border: 3px solid #ff8161;
}
.flow_type2 .cate_box {
	padding: 30px;
	width: 100%!important;
}
.flow_type2 .box_txt1 {
    background-color: #f7f7f7;
    color: #ff8161;
    text-align: center;
}
.flow_type2 .cate_box:not(:last-child) {
	border-bottom: 3px solid #ff8161;
	position: relative;
}
.flow_type2 .cate_box:not(:last-child)::before,
.flow_type2 .cate_box:not(:last-child)::after {
	content: "";
	border: solid transparent;
	position: absolute;
	top: 100%;
	left: 17%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.flow_type2 .cate_box:not(:last-child)::before {
	border-width: 22px;
	border-top-color: #ff8161;
}
.flow_type2 .cate_box:not(:last-child)::after {
	border-width: 18px;
	border-top-color: #fff;
}

.flow_type2{counter-reset: number 0;}

.flow_type2 .box_txt1::before {
    counter-increment: number 1;
    content: "step." counter(number);
    background-color: #ff8161;
    padding: 5px 10px;
    font-weight: 700;
    color: #ffffff;
    display: block;
    margin: 0px auto 10px;
    width: 50%;
}

/* cms4 */

/* cms5 */

/* page7 */

/* page8 */
#contact_tel a{
    color: #fff;
    border-radius: 10px;
}
.banner_wrap .banner a{
    border: 1px solid;
}

/* page9 */
#page9 .box p a{
    color: #fff;
}

/* page10 */
#page10 .left, #page10 .right{
    border-color: #1e1e1e;
}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
    #main_img .catch{
        font-size: calc(1rem + 25px);
    }
    #intro .intro_img2{
        margin-top: 50px;
    }
    #contents .con_title {
        font-size: 26px;
    }
    .top_title .rotate_txt span:nth-child(-n+4) {
        color: #ff8161;
    }
    .top_title .rotate_txt span:nth-child(-n+2) {
        color: #fff;
    }
    #footer_info #logo2 img{
        max-width: 250px;
    }
    footer .scr {
        font-size: 14px;
    }
    .map {height: 600px;}
    
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
    #main_img .catch{
        left: 20px;
        font-size: calc(1rem + 10px);
    }
    #main_img .catch br{
        display: block;
    }
    .intro_img1_sp, .intro_photo .filter, .intro_img2, .con_img, .con_photo .filter {
        border-radius: 30px;
    }
    .top_title .rotate_txt span:nth-child(-n+3) {
        color: #fff;
    }
    #contents .con_title {
        font-size: 22px;
    }
    #top_cms .top_cms_box {
        padding-left: 0;
        padding-right: 0;
    }
    #top_cms .cms_title {
        margin-bottom: 50px;
    }
    #footer_info .info_txt #logo2, #footer_info .info_txt #footertxt, #footer_info .info_txt #h1txt{
        width: 90%;
    }
    .map {height: 300px;}
.flow_type2 .cate_box:first-child {
    padding: 20px 20px 30px 20px;
}
.flow_type2 .cate_box:not(:first-child) {
    padding: 40px 20px 20px 20px;
}
.flow_type2 .cate_box:not(:last-child)::before, .flow_type2 .cate_box:not(:last-child)::after {
    left: 50%;
}
.v_type2 .cate_box{padding: 42px 25px 25px;}
.v_type2 .cate_box:before{top: -31px;font-size: 48px;}
.youtube_box {
    width: 100%;
    padding-top: 66.25%;
}
}

@-moz-document url-prefix(){
    #pc_nav li a.txt_white {
    letter-spacing: normal;
    }
    .overlay .overlay-nav > ul li a {
   letter-spacing: normal;
    }
    .modal-box .inner{
        scrollbar-width: none; 
    }
    .blur{background: linear-gradient(180deg, rgba(143, 139, 135, .85), rgba(149, 149, 149, .9));}
    .overlay:before {
    background-color: rgba(175, 177, 183, .6);
}

/*-------- IE --------*/
@media all and (-ms-high-contrast:none){
    .pager li a, .info_btn_wrap a{padding-top: 15px;}
    .banner_wrap .banner a{padding-bottom: 15px;}
.flow_type2 :not(:last-child).cate_box::before, .flow_type2 :not(:last-child).cate_box::after{top:98.1%;}
}
}


