@charset "utf-8";

/*-----------------------
    page_contents.css
------------------------*/

/*----- strengths -----*/

.stg_head {
	padding: 90px 0;
}
.stg_head .frame {
	display: flex;
	justify-content: space-between;
	margin-bottom: 90px;
}
.stg_head .frame .conts {
	width: 50%;
}
.stg_head .frame .conts .ttl {
	margin-bottom: 30px;
	font-size: 30px;
	font-weight: 700;
	line-height: 2;
}
.stg_head .frame:nth-of-type(2n+1) .conts {
	order: 2;
}
.stg_head .frame .pic {
	width: 45%;
}
.stg_head .frame .pic.ranger {
	background: url("/system_panel/uploads/images/stg_ranger_bg.png") center bottom no-repeat;
	background-size: 100% auto;
}

.stg_area {
	padding: 120px 0 60px;
}
.stg_area .frame {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.stg_area .frame .map {
	width: 45%;
}
.stg_area .frame .conts {
	width: 50%;
	order: 2;
}
.stg_area .frame .conts .pm {
	margin-bottom: 40px;
}

@media screen and (min-width: 768px) and (max-width: 1260px){
    
	.stg_head {
		padding: 7.5vw 0;
	}
	.stg_head .frame {
		margin-bottom: 7vw;
	}
	.stg_head .frame .conts {
		width: 48%;
	}
	.stg_head .frame .conts .ttl {
		margin-bottom: 2.5vw;
		font-size: 2.25vw;
	}
	.stg_head .frame .pic {
		width: 48%;
	}

	.stg_area {
		padding: 8vw 0 6vw;
	}
	.stg_area .frame .map {
		width: 43%;
	}
	.stg_area .frame .conts {
		width: 55%;
	}
	.stg_area .frame .conts .pm {
		margin-bottom: 3vw;
	}
	
}
@media screen and (max-width: 767px){
    
	.stg_head {
		padding: 50px 0;
	}
	.stg_head .frame {
		display: block;
		margin-bottom: 40px;
	}
	.stg_head .frame .conts {
		width: 100%;
	}
	.stg_head .frame .conts .ttl {
		margin-bottom: 15px;
		font-size: 22px;
	}
	.stg_head .frame .pic {
		margin: 20px auto 0;
		width: min(400px,100%);
	}

	.stg_area {
		padding: 50px 0;
	}
	.stg_area .frame {
		display: block;
	}
	.stg_area .frame .map {
		width: 100%;
		text-align: center;
	}
	.stg_area .frame .conts {
		width: 100%;
	}
	.stg_area .frame .conts .pm {
		margin-bottom: 20px;
	}
    
}

/*----- thermobarrier -----*/

/* head, dis */

.tmb_head {
	padding: 90px 0 0;
}
.tmb_head .logo {
	text-align: center;
}
.tmb_head .logo img {
	width: 500px;
}
.tmb_head .frame {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.tmb_head .frame .conts {
	width: 49%;
}
.tmb_head .frame .conts .ttl {
	margin-bottom: 20px;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.5;
}
.tmb_head .frame .illust {
	width: 50%;
}

.tmb_dis {
	padding: 160px 0 120px;
}
.tmb_dis .frame {
	display: flex;
	justify-content: space-between;
	margin: 15px 0 90px;
}
.tmb_dis .frame .colbox {
	width: 47.5%;
}
.tmb_dis .frame .colbox .ttl {
	margin-bottom: 15px;
	font-size: 31px;
	font-weight: bold;
}

@media screen and (min-width: 768px) and (max-width: 1260px){
	
	.tmb_head {
		padding: 7vw 0 0;
	}
	.tmb_head .logo img {
		width: 40vw;
		margin-bottom: 3vw;
	}
	.tmb_head .frame .conts {
		width: 60%;
	}
	.tmb_head .frame .conts .ttl {
		margin-bottom: 2vw;
		font-size: 2.5vw;
	}
	.tmb_head .frame .illust {
		width: 40%;
	}
	
	.tmb_dis {
		padding: 10vw 0 8vw;
	}
	.tmb_dis .frame {
		margin: 1.5vw 0 7vw;
	}
	.tmb_dis .frame .colbox {
		width: 48%;
	}
	.tmb_dis .frame .colbox .ttl {
		margin-bottom: 1.5vw;
		font-size: 2.8vw;
	}
    
}
@media screen and (max-width: 767px){
   
	.tmb_head {
		padding: 50px 0 0;
	}
	.tmb_head .logo img {
		width: min(350px,80%);
		margin-bottom: 20px;
	}
	.tmb_head .frame {
		display: block;
	}
	.tmb_head .frame .conts {
		width: 100%;
	}
	.tmb_head .frame .conts .ttl {
		margin-bottom: 15px;
		font-size: 22px;
	}
	.tmb_head .frame .illust {
		width: 100%;
	}
	
	.tmb_dis {
		padding: 50px 0;
	}
	.tmb_dis .frame {
		display: block;
		margin: 15px 0 30px;
	}
	.tmb_dis .frame .colbox {
		width: 100%;
		margin-bottom: 20px;
	}
	.tmb_dis .frame .colbox .ttl {
		margin: 15px 0;
		font-size: 24px;
		text-align: center;
	}
	
}

/* features, data */

.tmb_features {
	padding: 80px 0;
}
.tmb_features .frame {
	display: flex;
	justify-content: space-between;
	margin-bottom: 60px;
}
.tmb_features .frame .conts {
	width: 50%;
	order: 2;
}
.tmb_features .frame .conts .ttl {
	margin-bottom: 30px;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.5;
}
.tmb_features .frame .pic {
	width: 45%;
}
.tmb_features .frame .pic img{
	aspect-ratio: 27/20;
}

.tmb_features .ctabox {
	position: relative;
	background: url("/system_panel/uploads/images/svc_yellow.png");
	padding: 40px 70px;
}
.tmb_features .ctabox .btnc {
	position: absolute;
	right: 70px;
	bottom: -15px;
	width: 281px;
}

.tmb_data {
	padding: 150px 0 0;	
}
.tmb_data .frame {
	display: flex;
	justify-content: space-between;
}
.tmb_data .frame .conts {
	width: 72%;
}
.tmb_data .frame .conts .graph {
	margin-top: 50px;
}
.tmb_data .frame .ul {
	width: 25%;
	margin-top: -90px;
}
.tmb_data .frame .ul .li {
	margin-bottom: -15px;
}
.tmb_data .ul .li img {
	width: 100%;
}
.tmb_data .ul .li.fn01 img,
.tmb_data .ul .li.fn02 img {
	width: 77.46%;
}

.tmb_data .ul.fadein .li {
    opacity: 0;
    transform: translateY(60px);
    transition: all 1s ease;
}
.tmb_data .ul.fadein.scrollin .li {
	position: relative;
    opacity: 1;
    transform: translateY(0);
}
.tmb_data .ul.fadein.scrollin .fn01 { transition-delay: 0s; z-index: 1; }
.tmb_data .ul.fadein.scrollin .fn02 { transition-delay: 1s; z-index: 2; }
.tmb_data .ul.fadein.scrollin .fn03 { transition-delay: 2s; z-index: 3; }

.tmb_data_box {
	margin-top: 30px;
}
.tmb_data_box .ttl {
	margin-bottom: -30px;
	text-align: center;
}
.tmb_data_box .ttl img.pc {
	width: 1080px;
}
.tmb_data_box .ttl img.sp {
	display: none;
}
.tmb_data_box .inner {
	padding: 40px 30px 30px;
	background: var(--blue);
}
.tmb_data_box .subttl {
	display: flex;
	justify-content: center;
	line-height: 1.5;
}
.tmb_data_box .subttl .text {
	color: var(--white);
	font-size: 36px;
	font-weight: bold;
}
.tmb_data_box .subttl .text.yellow {
	color: #fff99e;
}
.tmb_data_box .ul {
	display: flex;
	justify-content: center;
	gap: 0 50px;
	margin: 30px 0 0;
}
.tmb_data_box .ul .li {
	width: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--white);
	border-radius: 5px;
	padding: 15px 0;
	color: var(--blue);
	font-size: 23px;
	line-height: 1.5;
	text-align: center;
}

@media screen and (min-width: 768px) and (max-width: 1260px){
	
	.tmb_features {
		padding: 7vw 0;
	}
	.tmb_features .frame {
		margin-bottom: 6vw;
	}
	.tmb_features .frame .conts .ttl {
		margin-bottom: 2vw;
		font-size: 2.5vw;
	}
	
	.tmb_features .ctabox {
		padding: 3vw 4vw;
	}
	.tmb_features .ctabox .btnc {
		right: 4vw;
		bottom: -3vw;
		width: 28vw;
	}
	
	.tmb_data {
		padding: 8vw 0 0;	
	}
	.tmb_data .frame .conts .graph {
		margin-top: 4vw;
	}
	.tmb_data .frame .ul {
		width: 25%;
		margin-top: -4vw;
	}
	.tmb_data .frame .ul .li {
		margin-bottom: -1.5vw;
	}
    
	.tmb_data_box {
		margin-top: 3vw;
	}
	.tmb_data_box .ttl {
		margin-bottom: -3vw;
	}
	.tmb_data_box .ttl img.pc {
		width: 92%;
	}
	.tmb_data_box .inner {
		padding: 4.5vw 3vw 3vw;
	}
	.tmb_data_box .subttl .text {
		font-size: 2.75vw;
	}
	.tmb_data_box .ul {
		gap: 0 4vw;
		margin: 3vw 0 0;
	}
	.tmb_data_box .ul .li {
		width: 28vw;
		padding: 1vw 0;
		font-size: 2vw;
	}
	
}
@media screen and (max-width: 767px){
	
	.tmb_features {
		padding: 50px 0;
	}
	.tmb_features .frame {
		display: block;
		margin-bottom: 30px;
	}
	.tmb_features .frame .conts {
		width: 100%;
	}
	.tmb_features .frame .conts .ttl {
		margin-bottom: 15px;
		font-size: min(6vw,24px);
		text-align: center;
	}
	.tmb_features .frame .pic {
		margin: 20px auto 0;
		width: min(400px,100%);
	}
	
	.tmb_features .ctabox {
		padding: 20px 6vw 10px;
	}
	.tmb_features .ctabox .btnc {
		position: relative;
		right: auto;
		bottom: auto;
		margin: 15px auto -30px;
		width: 240px;
	}

	.tmb_data {
		padding: 50px 0 0;	
	}
	.tmb_data .frame {
		display: block;
	}
	.tmb_data .frame .conts {
		width: 100%;
	}
	.tmb_data .frame .conts .graph {
		margin-top: 20px;
	}
	.tmb_data .frame .ul {
		width: 100%;
		margin-top: 0px;
		display: flex;
		justify-content: center;
		align-items: flex-end;
		gap: 0 6px;
	}
	.tmb_data .frame .ul .li {
		margin-bottom: 0;
		width: calc(33.33% - 4px);
		text-align: center;
	}
	.tmb_data .ul .li.fn01 img,
	.tmb_data .ul .li.fn02 img {
		width: 100%;
	}
	.tmb_data .ul .li.fn03 img {
		width: 129.1%;
		max-width: 129.1%;
	}
    
	.tmb_data_box {
		margin-top: 30px;
	}
	.tmb_data_box .ttl {
		margin-bottom: -15px;
	}
	.tmb_data_box .ttl img.pc {
		display: none;
	}
	.tmb_data_box .ttl img.sp {
		display: block;
	}
	.tmb_data_box .inner {
		padding: 30px 4vw 10px;
	}
	.tmb_data_box .subttl {
		display: inline;
	}
	.tmb_data_box .subttl .text {
		font-size: 22px;
		display: inline;
	}
	.tmb_data_box .ul {
		display: block;
		margin: 20px 0 0;
	}
	.tmb_data_box .ul .li {
		width: 100%;
		margin-bottom: 12px;
		padding: 8px 0;
		font-size: 20px;
	}	
	
}

/* future, voice */

.tmb_future {
	padding: 150px 0 120px;
}
.tmb_future .frame {
	display: flex;
	justify-content: space-between;
}
.tmb_future .frame .illust {
	width: 45.833%;
	margin-top: 10px;
}
.tmb_future .frame .conts {
	width: 50%;
}
.tmb_future .frame .conts .pm {
	margin-bottom: 50px;
}

.tmb_voice {
	padding: 80px 0;
}
.tmb_voice .ul .li {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 30px;
	padding: 30px 40px;
	background: var(--white);
}
.tmb_voice .ul .li .face {
	width: 150px;
	margin-top: 10px;
}
.tmb_voice .ul .li .pm {
	width: calc(100% - 190px);
}

@media screen and (min-width: 768px) and (max-width: 1260px){

	.tmb_future {
		padding: 9vw 0 8vw;
	}
	.tmb_future .frame .illust {
		margin-top: 1vw;
	}
	.tmb_future .frame .conts .pm {
		margin-bottom: 3vw;
	}
	
	.tmb_voice {
		padding: 7vw 0;
	}
	.tmb_voice .ul .li {
		margin-bottom: 3vw;
		padding: 2vw;
	}
	.tmb_voice .ul .li .face {
		width: 13.33vw;
		margin-top: 1vw;
	}
	.tmb_voice .ul .li .pm {
		width: calc(100% - 16vw);
	}
	
}
@media screen and (max-width: 767px){

	.tmb_future {
		padding: 50px 0;
	}
	.tmb_future .frame {
		display: block;
	}
	.tmb_future .frame .illust {
		width: min(400px,100%);
		margin: 0 auto 20px;
	}
	.tmb_future .frame .conts {
		width: 100%;
	}
	.tmb_future .frame .conts .pm {
		margin-bottom: 20px;
	}	
	
	.tmb_voice {
		padding: 50px 0;
	}
	.tmb_voice .ul .li {
		display: block;
		margin-bottom: 20px;
		padding: 20px 4vw;
	}
	.tmb_voice .ul .li .face {
		width: 100%;
		margin: 0 0 10px;
		text-align: center;
	}
	.tmb_voice .ul .li .face img {
		width: 100px;
	}
	.tmb_voice .ul .li .pm {
		width: 100%;
	}
	

    
}

/*----- service -----*/

.svc_head {
    background: url("/system_panel/uploads/images/svc_bg.jpg") no-repeat;
    background-position: center bottom;
    background-size: 100% auto;
    padding: 20px 0 40px;
}
.svc_head .logo {
    margin-bottom: 30px;
    text-align: center;
}
.svc_head .logo img {
    width: 280px;
}
.svc_head .ranger {
    position: relative;
    z-index: 9;
    text-align: center;
    margin-top: 30px;
}
.svc_head .ranger img {
    width: 700px;
}
.svc_head h3.text {
    margin-top: -15px;
    padding: 30px 0 20px;
    background: var(--blue);
    border-radius: 5px;
    color: var(--white);
    font-size: 36px;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}

@media screen and (min-width: 768px) and (max-width: 1260px){
    
    .svc_head {
        padding: 2vw 0 4vw;
    }
    .svc_head .logo {
        margin-bottom: 3vw;
    }
    .svc_head .logo img {
        width: 28vw;
    }
    .svc_head .ranger {
        margin-top: 3vw;
    }
    .svc_head .ranger img {
        width: 70vw;
    }
    .svc_head h3.text {
        margin-top: -2vw;
        padding: 3vw 0 2vw;
        font-size: 2.8vw;
    }    
    
}
@media screen and (max-width: 767px){
    
    .svc_head {
        background-position: center bottom;
        background-size: 400% auto;
        padding: 20px 0 20px;
    }
    .svc_head .logo {
        margin-bottom: 20px;
    }
    .svc_head .logo img {
        width: 240px;
    }
    .svc_head .ranger {
        margin-top: 20px;
    }
    .svc_head .ranger img {
        width: min(400px,100%);
    }
    .svc_head h3.text {
        padding: 30px 6vw 20px;
        font-size: 19px;
        text-align: left;
    }    
    .svc_head h3.text br {
        display: none;
    }
    
}

/* lineup */

.svc_lineup {
    padding: 100px 0 60px;
}
.svc_lineup .inner {
    padding: 100px 0;
}
.svc_lineup .frame {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}
.svc_lineup .frame .conts {
    width: 50%;
}
.svc_lineup .frame .conts .ttl {
    margin-bottom: 20px;
}
.svc_lineup .frame .pic {
    width: 45%;
}

.svc_poch {
    display: flex;
    justify-content: space-between;
}
.svc_poch .points {
    width: 45%;
}
.svc_poch .points .ttl,
.svc_poch .checks .ttl {
    margin-bottom: 20px;
    font-size: 30px;
    font-weight: 700;
    text-align: center;    
}
.svc_poch .checks {
    width: 52%;
}
.svc_poch .points .ul .li {
    display: block;
    margin-bottom: 10px;
    padding: 22px 0;
    background: var(--white);
    text-align: center;
    font-size: 18px;
}
.svc_poch .points .ul.blue .li {
    background: #e4f7ff;
}
.svc_poch .checks .ul {
    background: #999;
    color: var(--white);
    padding: 30px 50px 20px;
}
.svc_poch .checks .ul .li {
    position: relative;
    margin-bottom: 10px;
    padding: 6px 0 5px 20px;
    font-size: 18px;
}
.svc_poch .checks .ul .li::before {
    margin-right: 5px;
    content: "□";
}
.svc_poch .checks.green .ttl {
    color: #57b459;
}
.svc_poch .checks.green .ul {
    background: url("/system_panel/uploads/images/svc_green.png");
}
.svc_poch .checks.green2 .ttl {
    color: #009a63;
}
.svc_poch .checks.green2 .ul {
    background: url("/system_panel/uploads/images/svc_green2.png");
}
.svc_poch .checks.pink .ttl {
    color: var(--pink);
}
.svc_poch .checks.pink .ul {
    background: url("/system_panel/uploads/images/svc_pink.png");
}
.svc_poch .checks.purple .ttl {
    color: var(--purple);
}
.svc_poch .checks.purple .ul {
    background: url("/system_panel/uploads/images/svc_purple.png");
}

.svc_col2 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 60px 0 40px;
}
.svc_col2 .svc_colbox {
    width: 47.5%;
}
.svc_method {
    background: var(--white);
    padding: 40px 45px;
}
.svc_method .ttl {
    display: inline-block;
    background: var(--blue);
    color: var(--white);
    margin: 20px 0 12px;
    padding: 5px 20px;
    font-size: 14px;
}
.svc_method .p {
    line-height: 2;
}
.svc_tbf_ttl {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
}
.svc_tbf_ttl > div {
    display: flex;
}
.svc_tbf_ttl .text {
    font-size: 30px;
    font-weight: bold;
}
.svc_tbf_ttl .text.pink {
    color: var(--pink);
}
.svc_colbox .capt {
    margin-top: 15px;
    font-size: 18px;
}

@media screen and (min-width: 768px) and (max-width: 1260px){
    
    .svc_lineup {
        padding: 8vw 0 5vw;
    }
    .svc_lineup .inner {
        padding: 8vw 0;
    }
    .svc_lineup .frame {
        margin-bottom: 5vw;
    }
    .svc_lineup .frame .conts {
        width: 52%;
    }
    .svc_lineup .frame .conts .ttl {
        margin-bottom: 2vw;
    }

    .svc_poch .points .ttl,
    .svc_poch .checks .ttl {
        margin-bottom: 2vw;
        font-size: 2.75vw;
    }
    .svc_poch .points .ul .li {
        margin-bottom: 1vw;
        padding: 2vw 0;
        font-size: 1.7vw;
    }
    .svc_poch .checks .ul {
        padding: 2vw 0 1.8vw 2vw;
    }
    .svc_poch .checks .ul .li {
        margin-bottom: 1vw;
        padding: .6vw 0 .5vw 2vw;
        font-size: 1.7vw;
    }
    .svc_poch .checks .ul .li::before {
        margin-right: .5vw;
    }

    .svc_col2 {
        margin: 5vw 0 3.5vw;
    }
    .svc_col2 .svc_colbox {
        width: 48%;
    }
    .svc_method {
        padding: 3vw 4vw;
    }
    .svc_method .ttl {
        margin: 2vw 0 1.2vw;
        padding: .5vw 2vw;
        font-size: 1.4vw;
    }
    .svc_method .p br {
        display: none;
    }
    .svc_tbf_ttl {
        margin-bottom: 3vw;
    }
    .svc_tbf_ttl .text {
        font-size: 2.75vw;
    }
    .svc_colbox .capt {
        margin-top: 1.5vw;
        font-size: 1.7vw;
    }

}
@media screen and (max-width: 767px){
    
    .svc_lineup {
        padding: 50px 0;
    }
    .svc_lineup .inner {
        padding: 45px 0;
    }
    .svc_lineup .frame {
        display: block;
        margin-bottom: 30px;
    }
    .svc_lineup .frame .conts {
        width: 100%;
    }
    .svc_lineup .frame .conts .ttl {
        margin-bottom: 15px;
    }
    .svc_lineup .frame .pic {
        margin: 20px auto 0;
        width: min(400px,100%);
    }

    .svc_poch {
        display: block;
    }
    .svc_poch .points {
        width: 100%;
        margin-bottom: 30px;
    }
    .svc_poch .points .ttl,
    .svc_poch .checks .ttl {
        margin-bottom: 15px;
        font-size: min(6vw,25px);
    }
    .svc_poch .checks {
        width: 100%;
    }
    .svc_poch .points .ul .li {
        padding: 14px 0;
        font-size: min(3.875vw,17px);
    }
    .svc_poch .checks .ul {
        padding: 20px 0 15px 4vw;
    }
    .svc_poch .checks .ul .li {
        margin-bottom: 1vw;
        padding: 6px 0 5px;
        font-size: min(3.3vw,15px);
    }
    .svc_poch .checks .ul .li::before {
        margin-right: 4px;
    }

    .svc_col2 {
        display: block;
        margin: 40px 0 20px;
    }
    .svc_col2 .svc_colbox {
        width: 100%;
    }
    .svc_method {
        padding: 20px 4vw;
    }
    .svc_method .pic {
        text-align: center;
    }
    .svc_method .pic img {
        max-width: 400px;
    }
    .svc_method .p br {
        display: none;
    }
    .svc_method .ttl {
        margin: 15px 0 8px;
    }
    .svc_tbf_ttl {
        display: block;
        margin-bottom: 20px;
    }
    .svc_tbf_ttl > div {
        margin-bottom: 5px;
        justify-content: center;
    }
    .svc_tbf_ttl .text {
        font-size: min(4.5vw,24px);
    }
    .svc_colbox .capt {
        margin: 10px 0 20px;
        font-size: min(3.875vw,16px);
    }
    
}

/*----- about -----*/

.about_greet {
    padding: 80px 0 90px;
    background: url("/system_panel/uploads/images/pic_about.jpg") no-repeat;
    background-position: center;
    background-size: 1920px auto;
}
.about_greet .frame {
    display: flex;
    justify-content: flex-end;
}
.about_greet .frame .conts {
    width: 50%;
}
.about_greet .frame .conts .pm {
    margin-bottom: 40px;
}
.about_greet .frame .conts .name {
    display: flex;
    align-items: baseline;
}
.about_greet .frame .conts .name h4 {
    font-size: 27px;
    font-weight: 700;
    margin-left: 15px;
    letter-spacing: 1px;
}

/* philosophy */

.about_plsy {
    padding: 120px 0 60px;
}
.about_plsy .frame {
    padding: 70px 0 30px;
    background: url("/system_panel/uploads/images/mark_four.png") no-repeat;
    background-position: right 270px bottom;
    background-size: 260px auto;
}
.about_plsy .frame .texts {
}
.about_plsy .frame .texts > div {
    margin-bottom: 10px;
}
.about_plsy .frame .texts > div > div {
    position: relative;
    display: inline-block;
    padding: 10px 5px 10px 15px;
}
.about_plsy .frame .texts .text {
    position: relative;
    z-index: 5;
    font-size: 27px;
    font-weight: 700;
}
.about_plsy .frame .texts .text br {
    display: none;
}
.about_plsy .frame .texts .leftbg {
    position: absolute;
    z-index: 1;
    display: block;
    content: "";
    top: 5px;
    left: 0;
    width: 100%;
    height: 45px;
    background: #e4f7ff;
    border-radius: 5px;
}
.about_plsy .frame .texts .fadein2.leftbg {
    opacity: 0;
	transform-origin: left top;
}
.about_plsy .frame .texts .fadein2.scrollin.leftbg {
	opacity: 1;
    animation: bg2 3s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes bg2 {
	0% {
		opacity: 0;
		transform: scaleX(0) translateX(-5%);
	}
	30% {
		transform: scaleX(1) translateX(0);
	}
	100% {
		transform: scaleX(1) translateX(0);
	}
	30%, 100% {
		opacity: 1;
	}
}
@media screen and (min-width: 768px){
    
    .about_greet {
        margin-top: -1px;
    }
    .about_greet .m_ttl .en {
        color: #fdcdcd;
    }
    .about_greet .m_ttl .text {
        color: var(--white);
    }
    .about_greet .frame .conts {
        color: var(--white);
              background: rgba(0, 0, 0, 0.3);
        padding: 12px;
    }
    
}
@media screen and (min-width: 768px) and (max-width: 1260px){

    .about_greet {
        padding: 8vw 0;
        background-size: 175% auto;
    }
    .about_greet .frame .conts {
        width: 56%;
    }
    .about_greet .frame .conts .pm {
        margin-bottom: 2vw;
    }
    .about_greet .frame .conts .pm br {
        display: none;
    }
    .about_greet .frame .conts .name h4 {
        font-size: 2.5vw;
        margin-left: 1.5vw;
    }
    
    /* philosophy */

    .about_plsy {
        padding: 8vw 0 5vw;
    }
    .about_plsy .frame {
        padding: 6vw 0 3vw;
        background-position: right 8vw bottom;
        background-size: 25vw auto;
    }
    .about_plsy .frame .texts > div {
        margin-bottom: 1vw;
    }
    .about_plsy .frame .texts > div > div {
        padding: 1vw .5vw 1vw 1.5vw;
    }
    .about_plsy .frame .texts .text {
        font-size: 2.5vw;
    }
    .about_plsy .frame .texts .leftbg {
        top: .5vw;
        height: 4.5vw;
    }
    
}
@media screen and (max-width: 767px){

    .about_greet {
        padding: 50px 0 70vw;
        background-position: left bottom;
        background-size: 133.33% auto;
    }
    .about_greet .frame {
        display: block;
    }
    .about_greet .frame .conts {
        width: 100%;
    }
    .about_greet .frame .conts .pm {
        margin-bottom: 20px;
    }
    .about_greet .frame .conts .name h4 {
        font-size: 24px;
        margin-left: 12px;
    }
    
    /* philosophy */

    .about_plsy {
        padding: 50px 0;
    }
    .about_plsy .frame {
        padding: 30px 0 200px;
        background-position: center bottom;
        background-size: 180px auto;
    }
    .about_plsy .frame .texts > div {
        margin-bottom: 0px;
        text-align: center;
    }
    .about_plsy .frame .texts > div > div {
        padding: min(2vw,10px) 2vw;
    }
    .about_plsy .frame .texts .text {
        font-size: min(4vw,20px);
        line-height: 1.4;
    }
    .about_plsy .frame .texts .text br {
        display: inline-block;
    }
    .about_plsy .frame .texts .leftbg {
        top: min(1vw,10px);
        height: min(8vw,40px);
    }
    .about_plsy .frame .texts > div:last-child .leftbg {
        height: min(14vw,66px);
    }
    
}

/* ranger */

.about_ranger {
    padding: 100px 0 60px;
}
.about_ranger .illust_area {
    padding-bottom: 25px;
    background: url("/system_panel/uploads/images/about_ranger_bg.png") bottom center no-repeat;
    background-size: 100% auto;
}
.about_ranger .illust_area .illust {
    width: 700px;
    margin: auto;
}
.about_ranger .ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px 4%;
    margin-top: 30px;
}
.about_ranger .ul .li {
    width: 48%;
}
.about_ranger .ul .li .logo {
    width: 328px;
    margin: 0 auto;
}
.about_ranger .ul .li .frame {
    position: relative;
}
.about_ranger .ul .li .frame .ttl {
    display: inline-block;
    padding: 10px 25px;
    background: var(--red);
    border-radius: 10px;
    color: var(--white);
}
.about_ranger .ul .li .frame .ttl p {
    font-size: 19px;
}
.about_ranger .ul .li .frame .ttl .text {
    padding: 35px 0 25px;
    font-size: 23px;
    font-weight: 700;
    width: 207px;
    text-align: center;
}
.about_ranger .ul .li .frame .conts {
    position: absolute;
    right: 0;
    bottom: 0;
    width: calc(100% - 240px);
    padding: 10px 20px;
    background: var(--white);
    border-radius: 8px;
    border: 4px solid var(--red);
}
.about_ranger .ul .li .frame .conts p {
    font-size: 18px;
    line-height: 1.7;
}
.about_ranger .ul .li:nth-of-type(2) .frame .ttl {
    background: var(--yellow);
}
.about_ranger .ul .li:nth-of-type(2) .frame .conts {
    border-color: var(--yellow);
}
.about_ranger .ul .li:nth-of-type(3) .frame .ttl {
    background: var(--green);
}
.about_ranger .ul .li:nth-of-type(3) .frame .conts {
    border-color: var(--green);
}
.about_ranger .ul .li:nth-of-type(4) .frame .ttl {
    background: var(--blue_dark);
}
.about_ranger .ul .li:nth-of-type(4) .frame .conts {
    border-color: var(--blue_dark);
}
.about_ranger .ul .li:nth-of-type(5) .frame .ttl {
    background: var(--pink);
}
.about_ranger .ul .li:nth-of-type(5) .frame .conts {
    border-color: var(--pink);
}

@media screen and (min-width: 768px) and (max-width: 1260px){
    
    .about_ranger {
        padding: 8vw 0 6vw;
    }
    .about_ranger .illust_area {
        padding-bottom: 2vw;
    }
    .about_ranger .illust_area .illust {
        width: 60%;
    }
    .about_ranger .ul {
        gap: 2vw 2%;
        margin-top: 3vw;
    }
    .about_ranger .ul .li {
        width: 49%;
    }
    .about_ranger .ul .li .logo {
        width: 30vw;
    }
    .about_ranger .ul .li .frame .ttl {
        padding: 1vw 1.5vw;
    }
    .about_ranger .ul .li .frame .ttl p {
        font-size: 1.8vw;
    }
    .about_ranger .ul .li .frame .ttl .text {
        padding: 2.5vw 0 1.75vw;
        font-size: 2vw;
        width: 18vw;
    }
    .about_ranger .ul .li .frame .conts {
        width: calc(100% - 20vw);
        padding: 1vw .25vw 1vw 1vw;
        border-width: .4vw;
    }
    .about_ranger .ul .li .frame .conts p {
        font-size: 1.375vw;
        line-height: 1.5;
    }
    
}
@media screen and (max-width: 767px){
    
    .about_ranger {
        padding: 50px 0;
    }
    .about_ranger .illust_area {
        padding-bottom: 15px;
        background-size: auto 150px;
    }
    .about_ranger .illust_area .illust {
        width: min(350px,87.5%);
    }
    .about_ranger .ul {
        display: block;
        margin-top: 10px;
    }
    .about_ranger .ul .li {
        width: 100%;
        margin-bottom: 10px;
    }
    .about_ranger .ul .li .logo {
        width: 250px;
        margin-top: 30px;
    }
    .about_ranger .ul .li .frame .ttl {
        display: block;
        padding: 15px 4vw 0;
        border-radius: 10px 10px 0 0;
        text-align: center;
    }
    .about_ranger .ul .li .frame .ttl p {
        font-size: 17px;
    }
    .about_ranger .ul .li .frame .ttl .text {
        padding: 10px 0;
        font-size: 21px;
        width: 100%;
    }
    .about_ranger .ul .li .frame .conts {
        position: relative;
        width: 100%;
        padding: 10px 4vw;
        border-radius: 0 0 10px 10px;
    }
    .about_ranger .ul .li .frame .conts p {
        font-size: 16px;
    }
    .about_ranger .ul .li .frame .conts p br {
        display: none;
    }

}

/* outline */

.about_outline {
    padding: 80px 0 150px;
}
.about_outline .inner {
    margin: 100px 0 75px;
}
.about_outline .ttl {
    display: inline-block;
    margin-bottom: 30px;
    padding: 5px 30px;
    background: #0a7fb2;
    color: var(--white);
    font-size: 15px;
}
.about_outline .dl > div {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
}
.about_outline .dl .dt {
    width: 15%;
    padding: 25px 30px;
    font-size: 18px;
    border-bottom: 1px solid var(--blue_dark);
}
.about_outline .dl .dd {
    width: calc(85% - 1px);
    padding: 25px 70px;
    font-size: 18px;
    border-bottom: 1px solid var(--blue_light);
}
.about_outline .dl .dd br {
    display: none;
}
.about_outline .dl .dd a {
    color: var(--text);
}
.googlemap iframe {
    width: 100%;
    height: 300px;
}

@media screen and (min-width: 768px) and (max-width: 1260px){

    .about_outline {
        padding: 7vw 0 8vw;
    }
    .about_outline .inner {
        margin: 7vw 0 6vw;
    }
    .about_outline .ttl {
        margin-bottom: 3vw;
        padding: .5vw 3vw;
        font-size: 1.5vw;
    }
    .about_outline .dl .dt {
        width: 15%;
        padding: 2.2vw 2vw;
        font-size: 1.7vw;
    }
    .about_outline .dl .dd {
        width: calc(85% - 1px);
        padding: 2.2vw 5vw;
        font-size: 1.7vw;
    }
    .googlemap iframe {
        height: 25vw;
    }    
    
}
@media screen and (max-width: 767px){

    .about_outline {
        padding: 50px 0;
    }
    .about_outline .inner {
        margin: 30px 0;
    }
    .about_outline .ttl {
        margin-bottom: 5px;
    }
    .about_outline .dl > div {
        display: block;
    }
    .about_outline .dl .dt {
        width: 100%;
        padding: 20px 0 10px;
        color: var(--blue_dark);
        font-size: 16px;
        border-bottom: none;
    }
    .about_outline .dl .dd {
        width: 100%;
        padding: 0 0 20px;
        font-size: 16px;
        line-height: 1.75;
        border-bottom-color: var(--blue_dark);
    }
    .about_outline .dl .dd br {
        display: inline-block;
    }
    .googlemap iframe {
        height: 200px;
    }        
    
}

/*----- contact -----*/

.c_head {
    background: url("/system_panel/uploads/images/contact_bg.jpg") no-repeat;
    background-position: bottom 30px center;
    background-size: 1920px auto;
	padding: 120px 0 100px;
}
.c_head .frame {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.c_head .frame .illust {
    width: 40%;
    text-align: center;
}
.c_head .frame .illust img {
    width: 360px;
}
.c_head .frame .conts {
    order: 2;
    width: 56%;
}
.c_head .frame .conts .ttl {
    margin-bottom: 50px;
}
.c_head .frame .conts .ttl > div {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
.c_head .frame .conts .ttl .text {
    font-size: 39px;
    font-weight: 700;
}
.c_head .frame .conts .ttl .sq {
    width: 250px;
    margin-right: 5px;
}
.c_head .frame .conts .sub > div {
    display: flex;
    align-items: center;
    margin-top: 15px;
}
.c_head .frame .conts .sub .tmb {
    width: 350px;
    margin-right: 10px;
}
.c_head .frame .conts .sub .text {
    font-size: 30px;
    font-weight: 700;
}
    
.c_contact {
    padding: 75px 0 90px;
}
.c_contact .ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px 15px;
    margin-top: 35px;
}
.c_contact .ul .li {
    width: calc(33.33% - 10px);
    border: 4px solid var(--text);
    border-radius: 4px;
    text-align: center;
}
.c_contact .ul .li .ttl {
    display: inline-block;
    margin: 20px 0 25px;
    padding: 10px 40px;
    background: #fb2626;
    border-radius: 25px;
    color: var(--white);
    font-size: 23px;
    font-weight: 700;
}
.c_contact .ul .li .tel {
    margin-bottom: 30px;
}
.c_contact .ul .li .tel img {
    width: 406px;
}
.c_contact .ul .li .qr {
    display: inline-block;
    margin: 0 auto 25px;
    padding: 10px;
    background: var(--white);
    border-radius: 10px;
}
.c_contact .ul .li .qr img {
    width: 92px;
    aspect-ratio: 1;
}
.c_contact .ul .li .end {
    border-top: 4px solid var(--text);
    height: 9px;
    background: #d70000;
}
.c_contact .ul .li:nth-of-type(1) {
    background: url("/system_panel/uploads/images/bg_red.png");
    width: 100%;
}
.c_contact .ul .li:nth-of-type(2) {
    background: url("/system_panel/uploads/images/bg_green.png");
}
.c_contact .ul .li:nth-of-type(2) .ttl {
    padding: 10px 10px;
    background: #57f15e;
}
.c_contact .ul .li:nth-of-type(2) .end {
    background: #17e321;
}
.c_contact .ul .li:nth-of-type(3) {
    background: url("/system_panel/uploads/images/bg_grey.png");
}
.c_contact .ul .li:nth-of-type(3) .ttl {
    padding: 10px 5px;
    background: #dac5c5;
}
.c_contact .ul .li:nth-of-type(3) .end {
    background: #cdb8b8;
}
.c_contact .ul .li:nth-of-type(4) {
    background: url("/system_panel/uploads/images/bg_blue.png");
}
.c_contact .ul .li:nth-of-type(4) .ttl {
    padding: 10px 5px;
    background: #8bcafa;
}
.c_contact .ul .li:nth-of-type(4) .end {
    background: #78bff5;
}

.form_area {
	padding: 75px 0 120px;
}
.form_area .catalog_ul {
    display: flex;
    gap: 0 20px;
    margin-bottom: 20px;
}
.form_area .catalog_ul .li {
    width: 280px;
}
.form_area .catalog_ul .li img {
    aspect-ratio: 14/9;
}
.complete {
	padding: 90px 0;
}

@media screen and (min-width: 768px) and (max-width: 1260px){
    
    .c_head {
        background-position: bottom center;
        background-size: 100% auto;
        padding: 8vw 0;
    }
    .c_head .frame .illust {
        width: 35%;
    }
    .c_head .frame .illust img {
        width: 80%;
    }
    .c_head .frame .conts {
        width: 60%;
    }
    .c_head .frame .conts .ttl {
        margin-bottom: 4vw;
    }
    .c_head .frame .conts .ttl > div {
        margin-bottom: 1.5vw;
    }
    .c_head .frame .conts .ttl .text {
        font-size: 3.33vw;
    }
    .c_head .frame .conts .ttl .sq {
        width: 22vw;
        margin-right: .5vw;
    }
    .c_head .frame .conts .sub > div {
        margin-top: 1.25vw;
    }
    .c_head .frame .conts .sub .tmb {
        width: 30vw;
        margin-right: 1vw;
    }
    .c_head .frame .conts .sub .text {
        font-size: 2.75vw;
    }	
    
    .c_contact {
        padding: 8vw 0;
    }
    .c_contact .ul {
        gap: 1.6vw 1.5vw;
        margin-top: 3vw;
    }
    .c_contact .ul .li {
        width: calc(33.33% - 1vw);
    }
    .c_contact .ul .li .ttl {
        margin: 2vw 0 2vw;
        padding: 1vw 4vw;
        font-size: 2.1vw;
    }
    .c_contact .ul .li .tel {
        margin-bottom: 2.5vw;
    }
    .c_contact .ul .li .tel img {
        width: 36vw;
    }
    .c_contact .ul .li .qr {
        margin: 0 auto 2vw;
        padding: 1vw;
        border-radius: 1vw;
    }
    .c_contact .ul .li .qr img {
        width: 9vw;
    }
    .c_contact .ul .li .end {
        height: 1vw;
    }
    .c_contact .ul .li:nth-of-type(2) .ttl {
        padding: 1vw 1vw;
    }
    .c_contact .ul .li:nth-of-type(3) .ttl,
    .c_contact .ul .li:nth-of-type(4) .ttl {
        padding: 1vw .5vw;
    }

    .form_area,
	.complete {
		padding: 8vw 0;
	}
    .form_area .catalog_ul {
        gap: 0 2vw;
        margin-bottom: 2vw;
    }
    .form_area .catalog_ul .li {
        width: 30%;
    }
	
}
@media screen and (max-width: 767px){
    
    .c_head {
        background-size: 1920px auto;
        padding: 50px 0;
    }
    .c_head .frame {
        display: block;
    }
    .c_head .frame .illust {
        width: 100%;
        margin-top: 30px;
    }
    .c_head .frame .illust img {
        width: min(300px,75%);
    }
    .c_head .frame .conts {
        width: 100%;
    }
    .c_head .frame .conts .ttl {
        margin-bottom: 30px;
    }
    .c_head .frame .conts .ttl > div {
        margin-bottom: 10px;
        justify-content: center;
    }
    .c_head .frame .conts .ttl .text {
        font-size: min(5.25vw,25px);
    }
    .c_head .frame .conts .ttl .sq {
        width: min(36vw,160px);
        margin-right: 3px;
    }
    .c_head .frame .conts .sub > div {
        margin-top: 8px;
        justify-content: center;
    }
    .c_head .frame .conts .sub .tmb {
        width: min(50vw,220px);
        margin-right: 5px;
    }
    .c_head .frame .conts .sub .text {
        font-size: min(5vw,23px);
    }	
    
    .c_contact {
        padding: 50px 0 40px;
    }
    .c_contact .ul {
        display: block;
        margin-top: 20px;
    }
    .c_contact .ul .li {
        margin-bottom: 10px;
        width: 100%;
    }
    .c_contact .ul .li .ttl {
        margin: 15px 0;
        padding: 10px;
        font-size: min(5.5vw,20px);
        width: 90%;
    }
    .c_contact .ul .li .tel img {
        width: min(90%,400px);
    }
    .c_contact .ul .li .qr {
        margin: 0 auto 20px;
    }

    .form_area,
	.complete {
		padding: 50px 0;
	}
    .form_area .catalog_ul {
        justify-content: space-between;
        margin-bottom: 2vw;
        gap: 0;
    }
    .form_area .catalog_ul .li {
        width: 32%;
    }
	
}

@media screen and (min-width: 500px){
  .spbr br{display:none;}
}
@media screen and (min-width: 768px) and (max-width: 1260px) {
  .f_support .illust {display:none;}
}