@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; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; -webkit-text-size-adjust : 100%; }
body { color:#333; }
h1,h2,h3,h4,h5,h6 { font-size:100%;}
a { color: #FFF; 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: #31B2C5;
  --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 }
.secont_page_title::before,.secont_page_title::after{  content: "";  width:20px;  border-top: 1px solid #DCDFE4;}
.secont_page_title:before {  margin-right: 1rem; }
.secont_page_title:after {  margin-left: 1rem; }


@media screen and (min-width: 320px) and (max-width: 768px) {
nav, .menu__line { background-color:#FFF;}/*背景*/
/*スマホメニューバー*/
.hun_menu  { background:#28374D;}
 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;}カレントメニューデザイン*/

}

.newscon { width:680px; float:left; }
.newscon img.imgfit { width:100%;} 

.ircon { width:330px; float:right;}


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


/*------タイトルデザイン-------*/
.design_title01 { font-size:5.5rem; color:#FFF; position: relative;  display: block;  margin-bottom: 10px;  font-family: "Sawarabi Mincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-weight:normal; text-align:left; margin-top:100px;}
.design_title01:first-letter { color:#EBDC72}
.design_title01::before {  content: url(images/bg_h1.png);position: absolute; z-index:-30;    top: 50%;    left: 0;    transform: translate(-50%, -50%);  }



.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:42rem; border-left:#003333 solid 3px; padding-left:10px; font-weight:bold; display:block; }

.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:4.5rem; margin-top:60px; margin-left:15px;}
.newscon { width:100%;}	
	
}



/*-------------------------------------------------------------------------------------*/
/*ボタン設定* 
/*-------------------------------------------------------------------------------------*/
.btn01 { font-size:1.4rem; color:#F1A2C4;  border-radius: 0px; background-color: #FFF; font-weight:bold;  display: inline-block; padding:2.3rem; text-align:center; 
-box-sizing: border-box;  -webkit-transition: all .3s;  transition: all .3s; min-width:160px; position:relative;border:#F1A2C4 1px solid}
.btn01:after {   font-family: 'Font Awesome 5 Free';  content: "\f067"; font-size:12px; position:absolute; top:50%; right:5px;transform: translate(-50%, -50%);}
.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
---------------------------------------------------------*/
.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:#DCA456 !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}*/
}


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

.ctwaku { border:#FFF solid 1px; font-size:13px; padding:3px;}

.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:60%; background-repeat: no-repeat; margin-bottom:60px; overflow:hidden;background-position: right top;}
.style777>div { width: calc( var(--width) / 2); position:relative; left: calc(50% -  (var(--width) / 2 - 0px));}/*widthは全体の横幅の半分　calcの部分でズレを調整*/
@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:-30px; padding:0px; padding-top:29px;}
}





ul.style111 li {background-repeat: no-repeat; background-position:top center; background-size: cover; background-size:100% 300px; }
.style111-inner { width:85%; margin-left:auto; margin-top:200px; background-color:rgba( 255, 255, 255, 0.9 ); padding:30px; border-left:#FEB25A solid 9px;}




ul.style888 { }
ul.style888 li { background-color:#FFF; padding:20px; border-radius: 20px; position:relative; margin-bottom:30px;}
.qa_q { color:var(--maincolor);}
.qa_q:before { font-family: "Sawarabi Mincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; content: "Q"; font-size:3rem; position: relative; top:50%; left:0; font-weight:bold; padding-right:10px; color:#333;}
.qa_a:before { font-family: "Sawarabi Mincho" , "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;  content: "A"; font-size:3rem; position: relative; top:50%; left:0; font-weight:bold; padding-right:10px;}




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; position:relative;}
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;}
}



ul.style000 {display: grid ; gap: 3.3%; grid-template-columns: 1fr 1fr 1fr;}
ul.style000 li { margin-bottom:30px; text-align:left; position:relative;}
ul.style000 img.thumbnail {object-fit: cover; height:200px;}
@media screen and (max-width: 768px){
ul.style000 {display: block ;}
ul.style000 li {display: block; -}
}



img.marude { 
    border-radius: 50%;
    width: 180px;
    height: 180px; 
    object-fit: cover;　　/*画像の縦横比を保ったまま領域をカバー */
}


div.koe { background-color:#F0FAFB; width:900px; margin:-90px auto 0 auto; padding:100px 20px 30px 20px; border:#FFF solid 5px;}
@media screen and (max-width: 768px){
div.koe { width:96%; margin-left:auto; margin-right:auto;}

}

.blog_data_002 { background-color:#F4B7D1; color:#FFF; width:62px; height:69px; position:absolute; top:-30px; right:0px; padding:15px; text-align:center; font-size:20px; font-weight:bold;}
.blog_data_002 span { display:block; font-size:14px;}

.saisyosakura:first-letter { color:#F1A0C4} {} 

.aaa {}
.hiddenbox { background-color:#3A1F51; width:880px; padding:30px; margin:auto; display:none;}


.accordion_area {
	width: 900px;
	margin: 0 auto;
	display: grid;
grid-template-columns: 260px 260px 260px;gap: 50px;
	position:relative;
}
.accordion_one._flex { margin-bottom:40px;}
.accordion_one._flex:hover { cursor:pointer;}
.accordion_one._flex img:hover { opacity:0.6;}

.accordion_inner {
	display: none; width:880px; background-color:#3A1F51; color:#FFF; position:  relative; top:0px ;	padding: 20px; 
	box-sizing: border-box; margin-top:20px;}
.accordion_one._flex .accordion_inner:hover { cursor: default ;}
.accordion_inner img:hover { opacity:1!important;}
.accordion_inner:after{    border: solid transparent;    content:'';    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(58, 31, 81, 0);
    border-top-width:15px;
    border-bottom-width:15px;
    border-left-width:25px;
    border-right-width:25px;
    margin-left: -25px;
    border-bottom-color:#3A1F51;
    bottom:100%;
}

.inner_one { left:0px;}
.inner_sec { left:-310px;}
.inner_thi { left:-620px}
.inner_one:after { left:130px;}
.inner_sec:after { left:450px;}
.inner_thi:after { left:750px}

.acname { font-size:2rem; }
.acname span { padding-left:20px; font-size:1.4rem;}

.grid22 {grid-template-columns: 425px 425px !important;}
.grid22>div:first-child { text-align:right}
.grid22>div:last-child { text-align:left}


/*.mainvideo {
  height: 100%; 
  height: 100vh;
  position: relative; top:-250px; left:0;
  width: 100%; 
}

#video {
  background: url('/video_bg.jpg') no-repeat; // 動画が再生を始めるまで、cssのほうでも背景を設定します。
  background-attachment: fixed; // 中央揃えになるように、fixed。
  background-position: center center; // positionも中央に。
  background-size: cover; // 画面サイズに応じてサイズを可変するように設定。
  left: 0;
  // 以下、画面いっぱいにするためのCSS設定
  min-height: 100%;
  min-height: 100vh;
  min-width: 100%;
  min-width: 100vw;
  // wrapperのサイズに応じて、leftの位置をjQueryで指定するため、positionはabsoluteにします。
  position: absolute;
  top: 0;
  // z-indexは調整してください。
  z-index: 1;
}*/


/* video */
.video{
  width: 100%;
  height: 100vh;
  background: url(../img/kv-alternative.jpg) no-repeat center/cover;
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.video video{
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}




@media screen and (max-width: 768px){
.accordion_area {	width: 100%;	padding-left:15px; padding-right:15px;	display: grid; grid-template-columns: 155px 155px; gap: 20px;}
.accordion_one._flex { margin-bottom:20px;}
.accordion_inner {width:330px; margin-left:auto; margin-right:auto; background-color:#3A1F51; color:#FFF; position:  relative; top:0px ;	padding: 20px; 
	box-sizing: border-box; margin-top:20px;}

.inner_one { left:0px;}
.inner_sec { left:-175px;}
.inner_thi { left:-620px}
.inner_one:after { left:80px;}
.inner_sec:after { left:250px;}
.inner_thi:after { left:750px}
img.board { width:155px;}

.video{  height: 380px;   background: url(../img/kv-alternative.jpg) no-repeat center/cover;
  position: relative;
  top: 0px;
  left: 0;
  overflow: hidden; margin-bottom:30px;
}
.video video{  min-width: 30%; width:180%;

  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
h1 img { width:200px;}

}

.ircon p+p { margin:0;}
