@charset "UTF-8";
/*---------------------------------------------------------
Theme Name: hsc_ultimate
Version: 20190705
---------------------------------------------------------*/
/*初期化*/
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
* { margin: 0px; padding: 0px; line-height:1.2; word-wrap: break-word; }
ul { list-style: none; }
ol  { display: block; text-align:left; list-style-type: disc; margin-block-start: 1em; margin-block-end: 1em; margin-inline-start: 0px; margin-inline-end: 0px; padding-inline-start:1.5em; }
a {text-decoration:underline; font-size:100%; overflow:hidden; outline:none; }
img, a img { border: none; text-decoration:none; max-width:100%; }
.clearBoth { clear:both; font-size:1px; height:0; text-align:center; }
iframe { vertical-align: bottom;}
strong { font-weight:bold;}
main { position:relative; }
img { vertical-align: middle;}

.grecaptcha-badge { visibility: hidden; }

/*---------------------------------------------------------
common
---------------------------------------------------------*/
html {    font-size: 62.5%; }
/* Text elements */
body { font-size:1.6em; text-align: center; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; -webkit-text-size-adjust : 100%; }
body { color:#333; }
footer {background-color:#4A6EA9; }
h1,h2,h3,h4,h5,h6 { font-size:100%;}
a { color: #666; text-decoration: none; }
a:hover { text-decoration:underline;}
a:hover { opacity: 0.6; filter: alpha(opacity=60); -ms-filter: "alpha( opacity=60 )"; }

/*pの設定*/
p {text-align:left; line-height:1.4;}
p+p { margin-top:19px;  line-height:1.7; }/*pが連続していたら、マージン*/
.fa { margin-right:5px; font-size:130%;}/*アイコンフォントの右側のつまりすぎとちょっと小さいのを解消*/

:root {
  --width:1240px;
}
.maincolor { color: var(--maincolor);}
.maincolor_bg { background-color: var(--maincolor);}
.width { width: var(--width); margin-left:auto; margin-right:auto;}


/*---------------------------------------------------------
common
---------------------------------------------------------*/
body { color:#333; }
/*パソコン・スマホ両方共通の設定*/
#wrapper { position:relative; overflow:hidden;}

/*ヘッダー設定*/
header.coom { background:rgba(0,0,0,0.0); position:absolute; top:0; left:0;}

/*スマホナビメニューの色*/
.navimenu_icon { color:#CCC; padding-right:10px;}
ul#menu-glnv>li a { font-size: 1.4rem; font-weight: bold; color:#333; text-decoration:none; opacity:0.8; }/*ナビゲーションの文字*/
/*キービジュアル設定*/


/*キービジュアル第二階層設定*/
body:not(.home)  #keyvisual_wrap { background-image:url(https://just-house.info/images/bg/keyvisual_wrap.jpg);  background-repeat:no-repeat; background-size: cover; background-position:center;}
main { background-color:#FFF;}

nav { background-color:none; width:800px; }/*ナビゲーションの背景色*/


.maincolor { color:#30B116 !important;}
.bg_maincolor { background-color:#D71044;}
.bg_green { font-weight:bold;  text-decoration: underline; 
  text-decoration-thickness: 0.5em; 
  text-decoration-color: #D6E24B; 
  text-underline-offset: -0.2em; 
  text-decoration-skip-ink: none; 
}
  
#catch2 { border-top:#D2B852 5px solid; background-color:#F7F5EA}



#page-top { background-color:#51B4D4; color:#FFF; opacity:0.6;}
@media screen and (min-width: 320px) and (max-width: 768px) {
nav, .menu__line { background-color:#FFF;}/*背景*/
/*スマホメニューバー*/
.hun_menu  { background:#4A6EA9;}
 ul#menu-glnv>li a { color:#333;}
}


@media screen and (min-width: 768px){/*パソコンのみの設定*/
#maincatch { height:531px;}
#maincatch {padding:60px 0 60px 0;}


/*ナビゲーション設定*/
#navigation { width:695px; margin:auto;}/*ナビゲーションの横幅*/
ul#menu-glnv {}/*ナビゲーションの高さ　ここを設定したらスマホ版も設定する*/
ul#menu-glnv>li { padding:10px 0; padding:20px 0;}
ul#menu-glnv>li a { color:#FFF;}



#menu-glnv > li a:hover { color: #ccc; }/*マウスオーバー時*/
#menu-glnv > li:hover > a { opacity:0.7; }/*ナビゲーションの文字にカーソルがある時の色*/
.current-menu-item a { }/*ナビゲーションカレントの背景設定*/
/*ナビゲーション　プルダウンの設定*/
li ul.sub-menu { width:280px; }/*プルダウンの幅*/
li ul.sub-menu li a { color: #333 !important; }/*プルダウンの文字の色*/
ul#menu-glnv>li { background:url(https://just-house.info/images/parts/navi.png) no-repeat }/*ナビゲーションの文字の間の装飾*/
ul#menu-glnv>li:first-child { background:none;}/*ナビゲーションの文字の間の装飾を一番最初は削除している*/
/*ul#menu-glnv>li.current-menu-item a { color: #FFFF!important; background:none;}カレントメニューデザイン*/

}



/*-------------------------------------------------------------------------------------*/
/*タイトルデザイン* 
/*-------------------------------------------------------------------------------------*/
.design_title01 { background:url(./images/bg_title.png) no-repeat bottom center; font-size:3.3rem; text-align:center; padding-bottom:35px; margin-bottom:3.0rem;}

.design_title02 { background: url(/images/bg_title02.png) no-repeat left center;; font-size:2.2rem; text-align:left; padding-left:50px; margin-bottom:3.0rem;}
.design_title03 { color:#003333; font-size:23px; border-left:#003333 solid 3px; padding-left:10px; font-weight:bold; display:block; }
.design_title04 {
  position: relative;
  display: inline-block;
  margin-bottom: 2em;
}
.design_title04:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 100px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #30B116;
  border-radius: 2px;
}


.single_title { font-size:26px; padding:20px; margin-bottom:15px; color:#D71044;}

.title001 { font-size:6.6rem; margin-bottom:50px;}
.topred:first-letter { color:#D71044;}

ol.jccinfo li { list-style:decimal; margin-bottom:20px;}
/*-------------------------------------------------------------------------------------*/
/*ボタン設定* 
/*-------------------------------------------------------------------------------------*/
.btn01 { background-color:#F5F5F5; font-weight:bold;  display: inline-block; padding:1.5rem; text-align:center; 
-box-sizing: border-box;  -webkit-transition: all .3s;  transition: all .3s; min-width:172px;}
.btn01:hover {  background-color: #000; color:#FFF; text-decoration:none; opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha( opacity=100 )"; }

.btn02 { background-color:#DDCA81; font-weight:bold;  display: inline-block ; padding:1.5rem;  text-align:center; 
-box-sizing: border-box;  -webkit-transition: all .3s;  transition: all .3s;min-width:172px;}
.btn02:hover {  background-color: #000; color:#FFF; text-decoration:none; opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha( opacity=100 )"; }

.btn03 { display:inline-block; min-width:300px;	text-align: center;
	text-decoration: none;
	padding: 1rem 4rem;
	font-weight: bold;
	border: 1px solid #4A6EA9;
	background: #FFF;
	color: #4A6EA9;
	position: relative;
	transition: 0.5s;
}
.btn03::before {
	content: '';
	position: absolute;
	top: calc(50% - 2px);
	right: 1em;
	transform: translateY(calc(-50% - 2px)) rotate(45deg);
	width: 10px;
	height: 1px;
	background: #FFF;
	background-color: #4A6EA9;
}
.btn03::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 15px;
	height: 1px;
	background-color: #4A6EA9;
}


.btn03:hover {	background: #4A6EA9; color: #FFF;}



/*-------------------------------------------------------------------------------------*/
/*横幅縦幅、各種必要マージン設定*/
/*-------------------------------------------------------------------------------------*/
.width { width:1080px; margin-left:auto; margin-right:auto;}

.contents { width:810px; float:left;}
#side_contents { width:230px; float:right;}



@media screen and (min-width: 320px) and (max-width: 768px) {/*スマホのみの設定*/
#keyvisual { height:880px;}
#maincatch { height:650px;}

.catch { padding:80px 20px;}



ul#menu-glnv>li { background:none; }/*ナビゲーションの文字の間の装飾を削除*/
	
.title001 { font-size:30px; margin-bottom:50px;}
.topred:first-letter { color:#D71044;}

ol.jccinfo li { list-style:decimal; margin-bottom:20px;}
.t60 { font-size:30px !important;}
}
/*---------------------------------------------------------
original
---------------------------------------------------------*/

.cause{  display: grid ;  padding: 0; grid-template-columns: 1fr 1fr 1fr 1fr;}


.cause li{    width: 100%;    margin: 0;	text-align: center;}

.cause li+li{
    position: relative;
}
.cause li+li::before{
    content: "";
    display: block;
    height: 6em;
    border-left: 2px solid #F8EDDC;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}


h3 { font-size:32px; font-weight:bold; text-align:left; margin-bottom:60px;}
h3 span.blue{ color:#225BB9; }
h3 span.eng { font-size:14px !important; font-weight:normal !important; display:inline-block; padding-left:30px;}

h3 span.eng:before {    content: '＿'; text-align:left; display     : inline-block; transform   : scale(3.7, 0.7); margin-right:25px; }

@media screen and (min-width: 320px) and (max-width: 768px) {
h3 span.eng { padding-left:30px; padding-right:30px; margin-top:10px;}
h3 span.eng:before {    content: '＿'; text-align:left; display     : inline-block; transform   : scale(2.1, 0.7); margin-right:15px; }
h3 span.eng:after {    content: '＿'; text-align:left; display     : inline-block; transform   : scale(2.1, 0.7); margin-left:15px; }
}




.qa_q {
    text-align: left;
    background: url(./images/qa_q.png) no-repeat;
    padding-left: 40px;
    margin-bottom: 10px;
    font-size: 22px;
	font-weight:bold;
}

.qa_a {
    text-align: left;
    background: url(./images/qa_a.png) no-repeat;
    padding-left: 40px;
    margin-bottom: 30px;
}




.causebg { background-color:#F8F4F0}

.box1{ padding: 2em 0; margin: 3em 0; color: #5d627b; background: white; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.22);}

.box2wrap { position:relative; padding-bottom:60px; overflow:hidden;}
.box2 {
  padding: 2em 2em;
  background-color: white; /* ボックスの背景色を白に設定 */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.22); /* シャドウ */
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 0 100%); /* 右上の角を切り落とす形状 */
}






.singlepageaa { height:250px; padding-top:150px !important; color:#FFF; font-size:24px;}
.singlepageaa2 { height:250px; padding-top:150px !important; color:#FFF; font-size:24px;}

.single-fudo h1.entry-title  { font-size:2.2rem}
.innt { color:#FAF000 !important; background-color:#039E88 !important;}
span.newsicon { background-color:#DDCA81; font-size:1.3rem; padding:5px; color:#FFF;}


@media screen and (min-width: 320px) and (max-width: 768px) {/*スマホのみの設定*/
/*.singlepageaa2 {height:100%; padding-top:50px !important; padding-bottom:50px}
body.archive h1.singlepageaa {height:100%; padding-top:50px !important; padding-bottom:50px}
body.single h1.singlepageaa {height:100%; padding-top:50px !important; padding-bottom:50px}*/
}



.style_reason {
    background-repeat: no-repeat;
    background-size: auto 100%;
    padding: 50px 0;
}


.style50 {
    background-repeat: no-repeat;
    background-size: auto 100%;
    padding: 50px 0;
}



.footer001 {
    background-image: url(./images/bg_contact.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 60px 0;
}

.eigode { background-color: #00699B; color:#FFF; padding:8px; border-radius: 8px; margin-right:10px; cursor:pointer;}
.nihongode { background-color: #00699B; color:#FFF; padding:8px;  border-radius: 8px; cursor:pointer;}
.noactivee { background-color:#FFF; color:#333; border:#00699B solid 1px;}
.float_member{ float:right; padding-left:10px; padding-bottom:10px; }
.nihongoyaku { margin-top:30px;}
.eigoyaku { margin-top:30px;}
.plof_name { font-size:20px; font-weight:bold;font-family:"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif; border-bottom:#CCC solid 1px;}

.yakutoji { display:none;}
.gengolist {  border-radius: 20px; padding:3px 15px; font-size:11px; background-color:#D71044; color:#FFF; font-weight:bold; white-space:nowrap;} .gengolist a { text-decoration:none; color:#FFF;  white-space:nowrap;}


.titleback {
    background-image: url(./images/titleback_bg.png);
    height: 68px;
    background-repeat: no-repeat;
    background-position: right;
    position: absolute;
    right: 50%;
    width: 50%;
    top: 0;
}

.titleback_width {
    width: 540px;
    float: right;
    color: #30B116;
    font-size: 32px;
    padding-top: 10px;
}




ul.yajiruisi { width:560px; margin-left:auto; margin-right:auto;}
ul.yajiruisi li { background:url(https://just-house.info/images/2.png) no-repeat left center; text-align:left; padding-left:50px; margin-bottom:30px; font-size:18px;}

ul.newslist95 li { margin-bottom:15px; padding-bottom:15px; text-align:left; color:white; } 
ul.newslist95 li span { padding:0.6rem;  border-radius: 0px; display:inline-block; margin-left:20px; width:300px; text-align:left; font-size:1.8rem}
.maincolor_bg { background-color:#CCCC00}

table.tabledesign_1 { text-align:left;}
table.tabledesign_1 th { width:150px; font-weight:bold;}
table.tabledesign_1 th , table.tabledesign_1 td { padding:5px;}


.logopt { padding:7.5px; background-color:#96C7CE;}

.qacat { margin:30px 0; color:#666;}
.qatitle {
	background-color:#E26B38;
	padding:10px;
	font-size:100%;
	text-align:left;
	color:#FFF;
	margin-bottom:20px;
}
.qatitle:before { content:"Q"; opacity:0.6; padding-right:10px;} 
.com_style002 { background:url(https://just-house.info/images/bg/style002.jpg) center left no-repeat;}
.com_bgimg_style003 { background-image:url(https://just-house.info/images/bg/style003.jpg); background-size: cover;}
.bigcoin { width:850px; margin:auto; padding-left:230px;}

.postbox h3 { margin-top:50px; margin-bottom:20px; border-bottom:#C03 solid 1px; padding-bottom:10px; font-size:26px;}




.cus-row { display: grid; grid-template-columns: 1fr 1fr; margin-top:50px; margin-bottom:50px;}
.cus-row>div:nth-child(1) { height:500px; margin-right:-300px; background:left top / cover no-repeat;}
.cus-row>div:nth-child(2) { margin-top:100px; margin-left:-300px; padding:3rem; background-color:rgba( 255, 255, 255, 0.85 ); width:calc(var(--width) / 1.5); } 
.cus-row:nth-child(even) { transform: scaleX(-1);}
.cus-row:nth-child(even)>div {transform: scaleX(-1);}
@media screen and (max-width: 768px){
.cus-row { display: block; } 
.cus-row>div:nth-child(1){ height:300px; width:100%;}
.cus-row>div:nth-child(2) { width:90%; margin-top:-80px; margin-left:0;}
}


.cus-row2 { display: grid; grid-template-columns: 1fr 1fr; margin-top:50px; margin-bottom:50px; text-align: left;}
.cus-row2>div:nth-child(1) { height:500px; margin-right:-300px; background:left top / cover no-repeat; }
.cus-row2>div:nth-child(2) { margin-top:300px; padding:3rem; margin-left:-100px; background-color:rgba( 255, 255, 255, 0.85 ); width:600px;   } 
.cus-row2 { transform: scaleX(-1);}
.cus-row2>div {transform: scaleX(-1);}
@media screen and (max-width: 768px){
.cus-row2 { display: block; } 
.cus-row2>div:nth-child(1){ height:300px; width:100%;}
.cus-row2>div:nth-child(2) { width:90%; margin-top:-80px; margin-left:0;}
}


.cus-row3 { display: grid; grid-template-columns: 1fr 1fr; margin-top:50px; margin-bottom:50px; text-align: left;}
.cus-row3>div:nth-child(1) { height:500px; margin-right:-300px; background:left top / cover no-repeat; }
.cus-row3>div:nth-child(2) { margin-top:300px; padding:3rem; margin-left:-100px; width:600px;   } 
.cus-row3 { transform: scaleX(-1);}
.cus-row3>div {transform: scaleX(-1);}
@media screen and (max-width: 768px){
.cus-row3 { display: block; } 
.cus-row3>div:nth-child(1){ height:300px; width:100%;}
.cus-row3>div:nth-child(2) { width:90%; margin-top:-80px; margin-left:0;}
}


/*---------------------------------------------------------
chachanimation
---------------------------------------------------------*/



.animetion1 {
    animation-name: fadein;
    animation-duration: 2s;
    animation-iteration-count: 1;
}
@keyframes fadein {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

.apptext { border-bottom:#DDCA81 solid 1px; padding-top:20px; font-size:1.4rem; font-weight: bold;} 
ul.app_bg li { padding:20px 0;}

ul.app_bg li:nth-child(odd) { background-color: #E2E2E2;}
 
 
 
 /*---slider------*/
 
 
 
html, body {
	margin: 0;
	padding: 0;
}
* {
	box-sizing: border-box;
}
.sliderArea {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 25px;
}
.sliderArea.w300 {
	max-width: 300px;
}
.slick-slide {
	margin: 0 5px;
}
.slick-slide img {
	width: 100%;
	height: auto;
}
.slick-prev, .slick-next {
	z-index: 1;
}
.slick-prev:before, .slick-next:before {
	color: #000;
}
.slick-slide {
	transition: all ease-in-out .3s;
	opacity: .2;
}
.slick-active {
	opacity: 1;
}
.slick-current {
	opacity: 1;
}
.thumb {
	margin: 20px 0 0;
}
.thumb .slick-slide {
	cursor: pointer;
}
.thumb .slick-slide:hover {
	opacity: .7;
}

.slick-prev,.slick-next{    top:30% !important;}

/*====================================================================
.full-screen
====================================================================*/

.full-screen .slick-list {
	overflow: visible;
}
.full-screen.slider {
	max-width: 300px;
	margin: 0 auto;
}
/*====================================================================
以下は不要です。
====================================================================*/


section { position:relative; 
  max-width: 100%;
}



.order { display: flex; justify-content: center;/*横*/ align-items:  flex-end;/*縦*/ }
.order  img { margin-left:15px; margin-right:15px;}
.ordertext { position:absolute; top:60px; left:50%;  transform: translate(-50%, 0%) scale(1.5); color:#FFF; font-weight:bold;}

img.stepimg { margin-left:40px;}
.sensen { position:absolute; top:100px; left:50px; background:url(images/sen.png) left top repeat-y; width:20px; height:300px; }


.bgstyle001 {  background-image:url(./images/bg_cause.png)}

.apuroti { display: grid ; column-gap: 3.3%; grid-template-columns: 1fr 1fr;}

@media screen and (min-width: 320px) and (max-width: 768px) {
		.bgstyle001 {  background-image: url(images/sp-bg001.png); background-size: 100% auto; background-position:top;}
		.order { display: block}
		.box2 { text-align:left; padding-left:50px; padding-top:100px;}
		.sp_reg { position:absolute; top:5px; left:5px;}
		img.stepimg { margin-left:0px; width:100%;}
		
		.cause{  display: grid ;  padding: 0; grid-template-columns: 1fr 1fr ;}
		.cause li { margin-bottom:60px;}
		
.apuroti {  grid-template-columns: 1fr 1fr;  display: block;}
.sensen { position:absolute; top:60px; left:23px; background:url(images/sen.png) left top repeat-y; width:20px; height:100%; }
#point .box2 { padding:30px;}

}



.sankaku01 { position:absolute; top:-50px; right:-3%;}
.sankaku02 { position:absolute; top:-50px; left:-3%;}
.sankaku03 { position:absolute; top:150px; left: 50%;transform: translate(-50%, -50%);}

.mt200 { margin-top:200px !important;}

.secondtitle { font-size:48px; color:#FFF; position:relative; z-index:2;}

@media screen and (min-width: 320px) and (max-width: 768px) {
.secondtitle { font-size:38px; color:#FFF;}
.sankaku01 , .sankaku02 { transform: scale(0.5);}
.sankaku01 {  top:-130px; right:-33%;}
.sankaku02 {  top:-130px; left:-33%;}
}



table.style-001 { border:none; text-align:left; border-spacing: 0px 20px; }
table.style-001 th { font-weight:bold;vertical-align:top; padding:10px 20px 20px 10px;background-color:#FBFBFB; margin-bottom:20px;}
table.style-001 th p {border-bottom:#069 solid 2px;}
table.style-001 td { padding:20px;margin-bottom:20px;}
@media screen and (min-width: 320px) and (max-width: 768px) {
table.style-001 th , table.style-001 td { display:block;}
}

/* 上に戻るボタン */
.pagetop {
	color: #fff;
	background-color: rgba(0,0,0,0.3);
	text-decoration: none;
	display: none;
	position: fixed;
	bottom: 1rem;
	right: 1rem;
	font-size: 1.5rem;
	width: 3.3rem;
	height: 3.3rem;
	line-height: 3.3rem;
	border-radius: 3.3rem;
	text-align: center;
	cursor: pointer;
}

.pagetop:hover {
	color: #fff !important;
	background-color: #ed702b;
	text-decoration: none;
}
