@charset "UTF-8";
/*---------------------------------------------------------
Theme Name: hsc_ultimate
Version: 20230421
---------------------------------------------------------*/
/*初期化*/
* { -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;}
section { position:relative;}


html {    font-size: 62.5%; }
/* Text elements */
body { font-size:1.6em; text-align: center;  -webkit-text-size-adjust : 100%; }
body { color:#333;font-family: 'Noto Serif JP', serif; }
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%;}/*アイコンフォントの右側のつまりすぎとちょっと小さいのを解消*/


/*------common--------*/
:root {
  --maincolor: #1D3E22;
  --width:1080px;
}
.maincolor { color: var(--maincolor);}
.maincolor_bg { background-color: var(--maincolor);}
.width { width: var(--width); margin-left:auto; margin-right:auto;}


/*パソコン・スマホ両方共通の設定*/
#wrapper { position:relative;}

/*ヘッダー設定*/
header { 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; }/*ナビゲーションの文字*/
/*キービジュアル設定*/


/*キービジュアル第二階層設定*/
.secont_page_title{ display:flex;  align-items: center;  justify-content: center; font-size:2.3rem; color:#DCDFE4; font-weight:bold; padding:120px 0 60px 0 ; background-image:url(images/bg_top.png);background-size:cover; background-position:bottom center; height:300px; background-repeat:no-repeat;}


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


@media screen and (min-width: 768px){/*パソコンのみの設定*/

/*ナビゲーション設定*/
nav { background-color:none; 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(/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;}カレントメニューデザイン*/

}

/*フッター設定*/
footer { border-top: var(--maincolor) solid 0px; background-color:var(--maincolor) }


/*------タイトルデザイン-------*/
.design_title01 { font-size:3.5rem;  position: relative; margin-bottom: 50px;}
.design_title01:before {  content: '';  position: absolute;  width: 100px;  background-color: #FFF; border-radius: 2px; bottom: -20px;  display: inline-block;   height: 3px;  left: 50%;  -webkit-transform: translateX(-50%);  transform: translateX(-50%);   }

.mojiiro { color:#3FC}


.design_title02 { font-size:3.5rem;  position: relative;  display: inline-block;  margin-bottom: 50px;}
.design_title02:before {  content: '';  position: absolute;  width: 100px;  background-color: #FEB25B; border-radius: 2px; bottom: -20px;  height: 3px;  left: 50%;  -webkit-transform: translateX(-50%);  transform: translateX(-50%);   }
.design_title02 span { display:block; color:#FEB25B; font-size:20px; font-weight:normal; margin-bottom: 5px; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

.design_title03 { color:#003333; font-size:42rem; border-left:#003333 solid 3px; padding-left:10px; font-weight:bold; display:block; }
.design_title04 { background: url(/images/bg_title02.png) no-repeat left center;; font-size:2.2rem; text-align:left; padding-left:50px; margin-bottom:3.0rem;}

.blog_title { background:url(/images/title_bg.png) no-repeat center bottom; font-size:2.8rem; color:#687688; padding-bottom:50px;}

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


@media screen and (max-width: 768px){
.design_title01 { font-size:2.5rem;}
	
	
}



/*-------------------------------------------------------------------------------------*/
/*ボタン設定* 
/*-------------------------------------------------------------------------------------*/
.btn01 { border-radius: 5px; background-color:#FFF; border:#CCC 1px solid; font-weight:bold;  display: inline-block; padding:1.9rem 3rem; text-align:center; 
-box-sizing: border-box;  -webkit-transition: all .3s;  transition: all .3s; min-width:160px; position:relative; }
.btn01:hover {  background-color: #FFF; color:var(--maincolor); border:var(--maincolor) 1px solid; 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 )"; }


/*-------------------------------------------------------------------------------------*/
/*横幅縦幅、各種必要マージン設定*/
/*-------------------------------------------------------------------------------------*/


.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
---------------------------------------------------------*/

.formbg { background-color: var(--maincolor); background-image:url(/images/formbg.png); background-repeat: no-repeat; background-position:left center; padding:50px 0;}


.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:#333333 !important; background-color:#FEB25A !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;
}

.btn03 {
    border: #FFF solid 1px;
    padding: 10px 20px 10px 20px;
}

.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: #FEB25A;
    font-size: 32px;
    padding-top: 10px;
}







table.tabledesign_1 { text-align:left;}
table.tabledesign_1 th { width:380px;}
table.tabledesign_1 th , table.tabledesign_1 td { padding:5px;}
table.tabledesign_1 tr:nth-child(even) { background: #F6F6F6;}
table.tabledesign_1 tr:nth-child(odd) {	background: #EFEFEF;}

.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(/images/bg/style002.jpg) center left no-repeat;}
.com_bgimg_style003 { background-image:url(/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;}



/*---------------------------------------------------------
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 {
  max-width: 100%;
	overflow: hidden;
}
	




.style777 { background-size:50%; background-repeat: no-repeat; padding-top:145px; margin-bottom:60px; overflow:hidden;}
.style777>div { background-color:rgba( 255, 255, 255, 0.97 ); width: calc( var(--width) / 2); position:relative; left: calc(50% - 100px); padding:50px;}/*widthは全体の横幅の半分　calcの部分でズレを調整*/
.style777:nth-child(even) { background-position: right top;}
.style777:nth-child(even) >div {left: calc(50% -  (var(--width) / 2 - 100px));}
@media screen and (max-width: 768px){
.style777 { background-size:100%; background-repeat: no-repeat; padding-top:155px; margin-bottom:60px;}
.style777>div { width: 90%; position:relative; left: 45px; padding:30px;}
.style777:nth-child(even) >div {left: 0;}
}




dl.style888 { text-align:left; padding-left:10px;}
dl.style888 dt { position:relative; padding-left:40px; font-size:2rem; font-style:2rem; font-weight:bold;}
dl.style888 dt:before { font-family: 'Material Icons';  content: "\e887"; font-size:5rem; position:absolute; top:50%; left:5px;transform: translate(-50%, -50%); color:var(--maincolor); font-weight:bold;}
dl.style888 dd { padding-left:40px; margin-top:20px;}



ul.newslist {}
ul.newslist li {display: grid ; grid-template-columns: 90px 130px auto; margin-bottom:30px; text-align:left;}
.category-n { background-color:var(--maincolor); color:#FFF; font-size:13px; font-weight:bold; height:15px; padding-bottom:10px; width:80px; text-align:center;-webkit-flex: 1;  flex: 1;}
.data-n {opacity:0.6;}
@media screen and (max-width: 768px){
ul.newslist li {  display: grid;  grid-template-columns	:100px auto;  grid-template-rows	:25px;}
.category-n {  grid-column: 1 / 2;  grid-row: 1 / 2;}
.data-n {  grid-column: 2 / 3;  grid-row: 1 / 2;}
.main-n {  grid-column: 1/ 3;  grid-row: 2/ 3;}
}


ul.bloglist-pc_yoko-sp_tate {display: grid ; gap: 3.3%; grid-template-columns: 1fr 1fr 1fr;}
ul.bloglist-pc_yoko-sp_tate li { margin-bottom:30px; text-align:left;}
ul.bloglist-pc_yoko-sp_tate img.thumbnail {object-fit: cover; height:200px;}
@media screen and (max-width: 768px){
ul.bloglist-pc_yoko-sp_tate {display: block ;}
ul.bloglist-pc_yoko-sp_tate li {display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; align-items: stretch;}
ul.bloglist-pc_yoko-sp_tate img.thumbnail {object-fit: cover; width:100px; height:100px;}
}






.cus-row { display: grid; grid-template-columns: 1fr 1fr; margin-bottom:70px;}
.cus-row>div:nth-child(1) { height:500px; margin-right:-150px; background:left top / cover no-repeat;}
.cus-row>div:nth-child(2) { margin-top:100px; margin-left:-100px; padding:2rem; background-color:rgba( 255, 255, 255, 0.95 );width:calc(var(--width) / 2); } 
.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-row1 { display: grid; grid-template-columns: 1fr 1fr;}
.cus-row1>div:nth-child(1) { height:400px; margin-right:-150px; background:center / cover no-repeat;}
.cus-row1>div:nth-child(2) { margin-top:100px; margin-left:-100px; background-color:rgba( 255, 255, 255, 0.9 );width:calc(var(--width) / 2); } 
.cus-row1:nth-child(even) { transform: scaleX(-1);}
.cus-row1:nth-child(even)>div {transform: scaleX(-1);}
@media screen and (max-width: 768px){
.cus-row1 { display: block; } 
.cus-row1>* { margin:0;}
.cus-row1>div:nth-child(1){ height:300px;}
.cus-row1>div:nth-child(2) { width:90%; margin-top:-50px;}
}






