@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/



/************************************
** 最新の投稿、親要素のulをflexboxで横並びにし、要素が溢れた場合に折り返す設定
************************************/
.wp-block-latest-posts__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.wp-block-latest-posts__list li {
    width: 30%;
    box-sizing: border-box;
    margin: 10px;
}
.wp-block-latest-posts__featured-image {
    text-align: center;
}
.wp-block-latest-posts__featured-image {
    position: relative;
    width: 100%;
    padding-top: 56.25%; /* 16:9 のアスペクト比を維持 */
    overflow: hidden;
}
.wp-block-latest-posts__featured-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
/************************************
** 最新の投稿を見やすくする
************************************/
.wp-block-latest-posts__list li{
    text-align: center;
}
.wp-block-latest-posts__post-title{
    font-weight: 700;
    text-decoration: none;
    color: inherit;
}
.wp-block-latest-posts__post-excerpt{
    font-size:0.8em;
    color:#444;
}
/*1023px以下*/
@media screen and (max-width: 1023px){
    .wp-block-latest-posts__post-excerpt{display:none !important;}
}



/************************************
** 最初のリストには点が付き、リスト内のリストには点が付かない
************************************/
ul.wp-block-list > li.list_saisyodake {
    list-style-type: disc;
}

ul.wp-block-list > li.list_saisyodake ul {
    list-style-type: none;
}

/************************************
** 子テーマ用のスタイルを書く
************************************/
:root {
    --gsss-main-color: #2EA4DB;
    --gsss-main-color-light: #73C3EB;
    --gsss-main-color-dark: #0078A7;
    --gsss-sub-color: #FFD700;
    --gsss-sub-color-light: #FFEB73;
    --gsss-sub-color-dark: #CCAC00;

    --gsss-text-size: 100%; /* すべてのテキストのデフォルトサイズを％で設定 */
    --gsss-text-size-s: 90%;
    --gsss-text-size-ss: 80%;
    --gsss-text-size-l: 110%;
    --gsss-text-size-ll: 120%;
}


/*よみやすいように調整*/
body {
  letter-spacing: 1px; /* 全体の文字間 */
  line-height: 1.8; /* 全体の行間 */
}

/*ロゴが長体にならないようにする処理*/
.logo img{
	width:auto;
	max-height:100px;
}
/*1023px以下*/
@media screen and (max-width: 1023px){
	.logo img{
		width:auto;
		max-height:60px;
	}	
}

/*ページ内リンクスムーズスクロール*/
html { scroll-behavior: smooth;}

/*ページ内リンクをクリックしたときに少し下にスクロールさせる*/
* {scroll-margin-top: 150px;}


/*トップに表示しないようにする処理*/
.front-top-page .entry-title{display:none;}
.front-top-page .date-tags{display:none;}
.front-top-page .entry-footer{display:none;}

/*固定に表示しないようにする処理*/
.page .date-tags{display:none;}


.memo{ 
	border: 1px solid transparent;/* margin-top,-bottomが効かない */
	padding: 0.1px;/* margin-top,-bottomが効かない */
	overflow: hidden;/* margin-top,-bottomが効かない */
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
.pc_only{display:block !important;}
.sp_only{display:none !important;}

/*1023px以下*/
@media screen and (max-width: 1023px){
	.pc_only{display:none !important;}
	.sp_only{display:block !important;}
}

/************************************
** cocoonの追従上部戻るボタン
************************************/
.go-to-top .go-to-top-button{
    background-color: var(--gsss-main-color); 
}

/************************************
** 見出し
************************************/
/* 共通のリセットスタイル */
.article h2, .article h3, .article h4, .article h5, .article h6 {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    color: inherit;
    background: none;
}

/* .article 内の H2 スタイル */
.article h2 , .widget h2{
    font-family: 'Arial', sans-serif;
    font-size: 2.5rem; /* 40px */
    font-weight: bold;
    color: var(--gsss-main-color); 
    margin-top: 2rem; /* 上下の余白を広げる */
    margin-bottom: 1.5rem;
    border-bottom: 2px solid var(--gsss-main-color);
    padding-bottom: 1rem; /* 下のパディングを広げる */
}

/* .article 内の H3 スタイル */
.article h3 {
    font-family: 'Arial', sans-serif;
    font-size: 1.5rem; /* 24px */
    font-weight: bold;
    color: #333333; 
    margin-top: 1.75rem; /* 上下の余白を広げる */
    margin-bottom: 1.25rem;
    padding-left: 0.75rem; /* 左のパディングを広げる */
    border-left: 4px solid var(--gsss-main-color);
}

/* .article 内の H4 スタイル */
.article h4 {
    font-family: 'Arial', sans-serif;
    font-size: 1.5rem; /* 24px */
    font-weight: bold;
    color: #333333; 
    margin-top: 1.75rem; /* 上下の余白を広げる */
    margin-bottom: 1.25rem;
    padding-left: 0.75rem; /* 左のパディングを広げる */
    border-left: 0px solid #ffffff;
}

/* .article 内の H5 スタイル */
.article h5 {
    font-family: 'Arial', sans-serif;
    font-size: 1.5rem; /* 24px */
    font-weight: bold;
    color: #333333; 
    margin-top: 1.75rem; /* 上下の余白を広げる */
    margin-bottom: 1.25rem;
    padding-left: 0.75rem; /* 左のパディングを広げる */
    border-left: 0px solid #ffffff;
}

/* .article 内の H6 スタイル */
.article h6 {
    font-family: 'Arial', sans-serif;
    font-size: 1.5rem; /* 24px */
    font-weight: bold;
    color: #333333; 
    margin-top: 1.75rem; /* 上下の余白を広げる */
    margin-bottom: 1.25rem;
    padding-left: 0.75rem; /* 左のパディングを広げる */
    border-left: 0px solid #ffffff;
}

/*1023px以下*/
@media screen and (max-width: 1023px){
	/* h1スタイル */
	.article h1 {
	    font-size: 1.3em;
	}
	.article h2 {
	    font-size: 1.3em;
	}
	/* h3スタイル */
	.article h3 {
	    font-size: 1.2em;
	}
	/* h4スタイル */
	.article h4 {
	    font-size: 1.2em;
	}
	/* h5スタイル */
	.article h5 {
	    font-size: 1.1em;
	}
	/* h6スタイル */
	.article h6 {
	    font-size: 1.1em;
	}
}

/************************************
** モバイルフッター 電話をかける１つ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
	.mobile-footer-menu-buttons{
		background-color: var(--gsss-main-color-dark); /* 必要に応じて色を調整 */
		padding-top:0.25em;
		padding-bottom:0.25em;
		opacity: 0.9;
	}
	.mobile-footer-menu-buttons.mobile-menu-buttons .menu-icon{
		font-size: 30px;
		color:#fff;
	}
	.mobile-footer-menu-buttons.mobile-menu-buttons .menu-caption{
		font-size: 20px;
		font-weight:normal;
		color:#fff;
		opacity:1;
	}
}



/************************************
** ++gsss_cocoon++ モバイルのみの調整
************************************/
.header-container-in.hlt-top-menu.hlt-tm-small .logo-header img {
  max-height: 40px;
}

/************************************
** ++gsss_cocoon++ モバイルのみの調整
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
    .header .tagline{padding: 5px 0 0 0;margin:0px;}
    .header .logo-text{padding: 0 0 5px 0;}
    .header-container-in.hlt-top-menu.hlt-tm-small .logo-header {background: #fff;max-height: 120px;}
    .header-container-in.hlt-top-menu.hlt-tm-small .logo-header img {max-height: 120px;}
	.fvmp4{margin-top:20px;}
}

/************************************
** cocoonのヘッダーメニューの調整
************************************/
#header-container .wrap {
    width: 100%;
}

html body .header-container,
html body #navi{
    background: none;
    background-color: transparent;
}

html body .fixed-header {
    background-color: rgba(255, 255, 255, 0.9);
}

#header-container .navi-in a {
    color: #333;
}
#navi a {
    text-decoration: none; /* 初期状態では下線なし */
    color: #333;
    position: relative; /* 擬似要素の位置を相対的に設定 */
}
#navi a:hover {
    background: none !important;
    background-color: transparent !important;
}
#navi a::after {
    content: '';
    position: absolute;
    left: 25%; /* 左側からの開始位置を調整して短くする */
    right: 25%; /* 右側からの終了位置を調整して短くする */
    bottom: 0; /* テキストのすぐ下に配置 */
    height: 4px; /* ラインの太さを太く設定 */
    background-color: var(--gsss-main-color); /* ラインの色 */
    border-radius: 4px; /* 角を丸くする */
    transform: scaleX(0); /* 初期状態で線を表示しない */
    transition: transform 0.3s ease-in-out; /* スムーズでゆっくりしたトランジション */
}
#navi a:hover::after {
    transform: scaleX(1); /* ホバー時に線を表示 */
}

/*  「ヘッダーを固定する」にチェック後、サブメニューを表示 */
.navi-in .has-sub{
    display: inline-block;/* スクロール時、下矢印だけ出る */
}
.navi-in > ul li:hover > ul {
    display: block;/* スクロールしてないとき、 */
}
.fixed-header .navi-in > ul li:hover > ul {
    display: block;/* スクロールしたとき、 */
}

/*  投稿一覧のカテゴリの文字色 */
.cat-label{
    color: #fff;
}

/************************************
** cocoonのフッターメニューの調整
************************************/
#footer {
    background-color: #ffffff; /* 背景色を白に設定 */
    border-top: 1px solid var(--gsss-main-color); /* 上部に1pxのメインカラーのボーダーを設定 */
    color: #000000 !important; /* 文字色を黒に設定 */
}
#footer, #footer a:not(.sns-button), .footer-title{
    color: #000000 !important; /* 文字色を黒に設定 */	
}

/************************************
** ++gsss_cocoon++ ヘッダーモバイルボタンが設定されてるときロゴいらない
************************************/
@media screen and (max-width: 1023px){
  #header-container{
    display:none;
  }
}

/************************************
** ++gsss_cocoon++ ナビメニューコンテンツ（スマホで開いたときの左側のメニュー）
************************************/
.navi-menu-content .navi-menu-close-button{
    background-color: #fff;
    color: #333;
    font-weight: normal;
    box-shadow: 0 0 5px darkgrey;
    min-height: 50px;
    text-align: left;
    font-size: 1em;
    display: flex;
    align-items: center; /* 上下中央に配置 */
    justify-content: flex-start; /* テキストを左寄せに */
    padding: 0 10px; /* 左右にマージンを追加 */
}
.navi-menu-content .navi-menu-close-button .fa-close{
	margin: auto 0; /* アイコンを上下中央に配置 */
}


.navi-menu-content ul.menu-drawer{
	margin-top: 2em;
	margin-bottom: 6em;
}
.navi-menu-content ul.menu-drawer li a{
	border-bottom:1px solid #000;
}






/************************************
** ++gsss_cocoon++ LPランディングページ横幅いっぱい
************************************/

/**上下のセクションをピッタリとくっつけるための処理**/
@media screen and (max-width: 1023px){
	#content{overflow: hidden;}
	.content{margin:0;}
	.entry-content{margin:0;}
	.footer{margin:0;}
	.article{margin:0;}
	.main{padding:0;}
	.mapa_topbottom_0{margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;}
}
@media screen and (max-width: 1023px){.content{margin:0 0.25rem;}}


/**左右横幅いっぱいにするための処理(コンテンツはパディングあり)**/
.lp_box{
	margin-left: calc((100% - 100vw) / 2) !important;
	margin-right: calc((100% - 100vw) / 2) !important;
	padding-left: calc(50vw - 50% ) !important;
	padding-right: calc(50vw - 50% ) !important;
	width: 100vw;
	overflow: hidden;
	border:0;
}
/*1023px以下*/
@media screen and (max-width: 1023px){
	.lp_box{
		margin-left: calc((100% - 100vw) / 2) !important;
		margin-right: calc((100% - 100vw) / 2) !important;
		padding-left: calc(52vw - 50% ) !important;
		padding-right: calc(52vw - 50% ) !important;
		width: 100vw;
		overflow: hidden;
		border:0;
	}
}
/**左右横幅いっぱいにするための処理(コンテンツはパディングなし)**/
.lp_box_full{
	margin-left: calc((100% - 100vw) / 2) !important;
	margin-right: calc((100% - 100vw) / 2) !important;
	width: 100vw;
	overflow: hidden;
	border:0;
}
.lp_box_full > div{
	max-width:90vw !important;
	min-width:50vw !important;
	margin:0 auto;
}
/*1023px以下*/
@media screen and (max-width: 1023px){
	.lp_box_full{
		margin-left: calc((100% - 100vw) / 2) !important;
		margin-right: calc((100% - 100vw) / 2) !important;
		width: 100vw;
		overflow: hidden;
		border:0;
	}
}

/**セクションのデザイン**/
.lp_box.text_1{background-color: transparent;border:0;}
.lp_box.text_3l{font-size: 4.3vw;}
@media screen and (max-width: 1023px){.lp_box.text_3l{font-size: 6vw;}}
.lp_box.text_2l{font-size: 2.6vw;}
@media screen and (max-width: 1023px){.lp_box.text_2l{font-size: 6vw;}}
.lp_box.text_l{font-size: 2vw;}

.lp_box.text_center{text-align:center;padding: 1.5em 0 1.5em 0 !important;}

.lp_box.bgcolor_1{
	/*background: linear-gradient(45deg , var(--webgsss-main1usui2-color), var(--webgsss-main1usui-color));*/
	/*background-image: url('https://shakoshomei.gsss.pro/kobe/wp-content/uploads/2023/05/4.jpg');*/
	/*background-attachment: fixed;*/
	background-size: cover;
	background-position: center;
	color:#fff;
	background-color: var(--webgsss-main1-color);
}


/************************************
** フォームのデザイン
************************************/
form u.hissu {
	font-size:10px;
	text-decoration:none;
	display: inline-block;
	margin: 0 1em 0 1em;
	padding: .4em;
	line-height: 1;
	text-decoration: none;
	color: #fff;
	background-color: var(--gsss-main-color);;
	border: 1px solid var(--gsss-main-color);;
}
form u.nini {
	font-size:10px;
	text-decoration:none;
	display: inline-block;
	margin: 0 1em 0 1em;
	padding: .4em;
	line-height: 1;
	text-decoration: none;
	color: #fff;
	background-color: #999;
	border: 1px solid #999;
}
form u.kotei {
	font-size:10px;
	text-decoration:none;
	display: inline-block;
	margin: 0 1em 0 1em;
	padding: .4em;
	line-height: 1;
	text-decoration: none;
	color: #fff;
	background-color: #333;
	border: 1px solid #333;
}
/* チェック・ラジオを一行ごとに */
.wpcf7-form-control .wpcf7-list-item{
	display:block;
}

/* 禁止マーク */
input:disabled {
    cursor: not-allowed;
}
label.disabled {
    cursor: not-allowed;color:#999;
}
/* 郵便番号 */
input[name="your_date"]{width:40%;}
input[name="your_name"]{width:40%;}
input[name="your_name_furigana"]{width:50%;}
input[name="your_denwa"]{width:50%;}
input[name="your_email"]{width:60%;}
input[name="zip"]{width:30%;}
input[name="pref"]{width:30%;}
input[name="city"]{width:30%;}
input[name="addr"]{width:100%;}
input[name="addr2"]{width:100%;}
select[name="your_todohuken"]{width:60%;}
@media screen and (max-width: 1023px){
	input[name="your_date"]{width:70%;}
	input[name="your_name"]{width:70%;}
	input[name="your_name_furigana"]{width:70%;}
	input[name="your_denwa"]{width:80%;}
	input[name="your_email"]{width:90%;}
	input[name="zip"]{width:60%;}
	input[name="pref"]{width:60%;}
	input[name="city"]{width:60%;}
	input[name="addr"]{width:100%;}
	input[name="addr2"]{width:100%;}
	select[name="your_todohuken"]{width:60%;}
}

input[name="your_gosyoukai_name"]{width:40%;}
@media screen and (max-width: 1023px){input[name="your_gosyoukai_name"]{width:70%;}}
input[name="your_gosyoukai_tanto"]{width:40%;}
@media screen and (max-width: 1023px){input[name="your_gosyoukai_tanto"]{width:70%;}}
input[name="your_gosyoukai_denwa"]{width:50%;}
@media screen and (max-width: 1023px){input[name="your_gosyoukai_denwa"]{width:80%;}}
input[name="your_gosyoukai_email"]{width:60%;}
@media screen and (max-width: 1023px){input[name="your_gosyoukai_email"]{width:90%;}}

/* フォームオブジェクト */
input {border: 1px solid #808080 !important;margin:4px 0;}
textarea {border: 1px solid #808080 !important;margin:2px 0;}
input:focus {background-color: var(--gsss-main-color-light);border: 1px solid #000 !important;}
textarea:focus {background-color: var(--gsss-main-color-light);border: 1px solid #000 !important;}
input:focus[type="submit"] {background-color: var(--gsss-main-color-light);}

input[type="submit"] {
    display:block;
    background-color: var(--gsss-main-color);
    color:#fff;
    border: 2px solid var(--gsss-main-color);
    font-weight:bold;
    text-align:center;
    margin: 1rem auto 0 auto;
    width: 60%;
	font-size:1em;
	transition: background-color 0.3s, color 0.3s, border 0.3s;
}
input[type="submit"]:hover {
    background-color: #fff;
    color: var(--gsss-main-color);
    border: 2px solid var(--gsss-main-color) !important;
}


 
 
/************************************
** テーブルのデザイン
************************************/
.table{
  width:100%;
  font-size:0.9em;
  display:table;
  border-collapse: collapse;
  border-spacing: 0;
}
.table .tr{
  width: 100%;
  display:table-row;
  border: 1px solid #aaa;
  border-collapse: collapse;
  border-spacing: 0;
}

@media screen and (max-width: 767px) {
  .table .tr{
    display: block;
    width:100%;
  }
}
.table .tr .td{
  display: table-cell;
  border-left: 1px solid #aaa;
  border-right: 1px solid #aaa;
  padding: 8px 13px;
  vertical-align:top;
  border-collapse: collapse;
  border-spacing: 0;
}
@media screen and (max-width: 767px) {
  .table .tr .td{
    display: block;
    width:100%;
  }
}
.table .label{
	background    : #fcfcfc;
	width:30%;
}
.table .input{
	width:70%;
}

.table .tr .td:nth-child(2){
width:70%;
}
@media screen and (max-width: 767px) {
  .table .tr .td:nth-child(2){
    display: block;
    width:100%;
  }
}

.tr_midashi{
	background:#eee;
	color:#333;
	font-weight:bold;
}

/************************************
** アニメーション フェードインなど
************************************/
/*  スマホ描画幅処理 */
@media screen and (max-width: 1023px){#content{overflow: hidden;}}

/* fade up 複数の場合*/
.page .u-fade-type-up{transform: translateY(50px);opacity: 0;}
.page .u-fade-type-up.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;}
.page .is-active .u-fade-type-up{transition: 1.6s;transform: translateY(0);opacity: 1;}
.page .is-active .u-fade-type-up:nth-child(2){transition-delay: .4s;}
.page .is-active .u-fade-type-up:nth-child(3){transition-delay: .8s;}
.page .is-active .u-fade-type-up:nth-child(4){transition-delay: 1.2s;}
.page .is-active .u-fade-type-up:nth-child(5){transition-delay: 1.6s;}
.page .is-active .u-fade-type-up:nth-child(6){transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .is-active .u-fade-type-up{transition-delay:0s;}
}

/* fade up  単一の場合 */
.page .u-fade-type-up1{transform: translateY(50px);opacity: 0;}
.page .u-fade-type-up1.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;}
.page .u-fade-type-up2{transform: translateY(50px);opacity: 0;}
.page .u-fade-type-up2.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: .4s;}
.page .u-fade-type-up3{transform: translateY(50px);opacity: 0;}
.page .u-fade-type-up3.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: .8s;}
.page .u-fade-type-up4{transform: translateY(50px);opacity: 0;}
.page .u-fade-type-up4.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: 1.2s;}
.page .u-fade-type-up5{transform: translateY(50px);opacity: 0;}
.page .u-fade-type-up5.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: 1.6s;}
.page .u-fade-type-up6{transform: translateY(50px);opacity: 0;}
.page .u-fade-type-up6.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .u-fade-type-up2.is-active{transition-delay:0s;}
  .page .u-fade-type-up3.is-active{transition-delay:0s;}
  .page .u-fade-type-up4.is-active{transition-delay:0s;}
  .page .u-fade-type-up5.is-active{transition-delay:0s;}
  .page .u-fade-type-up6.is-active{transition-delay:0s;}
}

/* fade down 複数の場合*/
.page .u-fade-type-down{transform: translateY(-50px);opacity: 0;}
.page .u-fade-type-down.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;}
.page .is-active .u-fade-type-down{transition: 1.6s;transform: translateY(0);opacity: 1;}
.page .is-active .u-fade-type-down:nth-child(2){transition-delay: .4s;}
.page .is-active .u-fade-type-down:nth-child(3){transition-delay: .8s;}
.page .is-active .u-fade-type-down:nth-child(4){transition-delay: 1.2s;}
.page .is-active .u-fade-type-down:nth-child(5){transition-delay: 1.6s;}
.page .is-active .u-fade-type-down:nth-child(6){transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .is-active .u-fade-type-down{transition-delay:0s;}
}

/* fade down  単一の場合 */
.page .u-fade-type-down1{transform: translateY(-50px);opacity: 0;}
.page .u-fade-type-down1.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;}
.page .u-fade-type-down2{transform: translateY(-50px);opacity: 0;}
.page .u-fade-type-down2.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: .4s;}
.page .u-fade-type-down3{transform: translateY(-50px);opacity: 0;}
.page .u-fade-type-down3.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: .8s;}
.page .u-fade-type-down4{transform: translateY(-50px);opacity: 0;}
.page .u-fade-type-down4.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: 1.2s;}
.page .u-fade-type-down5{transform: translateY(-50px);opacity: 0;}
.page .u-fade-type-down5.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: 1.6s;}
.page .u-fade-type-down6{transform: translateY(-50px);opacity: 0;}
.page .u-fade-type-down6.is-active{transition: 1.6s;transform: translateY(0);opacity: 1;transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .u-fade-type-down2.is-active{transition-delay:0s;}
  .page .u-fade-type-down3.is-active{transition-delay:0s;}
  .page .u-fade-type-down4.is-active{transition-delay:0s;}
  .page .u-fade-type-down5.is-active{transition-delay:0s;}
  .page .u-fade-type-down6.is-active{transition-delay:0s;}
}

/* fade left */
.page .u-fade-type-left{transform: translateX(50px);opacity: 0;}
.page .u-fade-type-left.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;}
.page .is-active .u-fade-type-left{transition: 1.6s;transform: translateX(0);opacity: 1;}
.page .is-active .u-fade-type-left:nth-child(2){transition-delay: .2s;}
.page .is-active .u-fade-type-left:nth-child(3){transition-delay: .4s;}
.page .is-active .u-fade-type-left:nth-child(4){transition-delay: 1.2s;}
.page .is-active .u-fade-type-left:nth-child(5){transition-delay: 1.6s;}
.page .is-active .u-fade-type-left:nth-child(6){transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .is-active .u-fade-type-left{transition-delay:0s;}
}

/* fade left  単一の場合 */
.page .u-fade-type-left1{transform: translateX(50px);opacity: 0;}
.page .u-fade-type-left1.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;}
.page .u-fade-type-left2{transform: translateX(50px);opacity: 0;}
.page .u-fade-type-left2.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: .4s;}
.page .u-fade-type-left3{transform: translateX(50px);opacity: 0;}
.page .u-fade-type-left3.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: .8s;}
.page .u-fade-type-left4{transform: translateX(50px);opacity: 0;}
.page .u-fade-type-left4.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: 1.2s;}
.page .u-fade-type-left5{transform: translateX(50px);opacity: 0;}
.page .u-fade-type-left5.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: 1.6s;}
.page .u-fade-type-left6{transform: translateX(50px);opacity: 0;}
.page .u-fade-type-left6.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .u-fade-type-left2.is-active{transition-delay:0s;}
  .page .u-fade-type-left3.is-active{transition-delay:0s;}
  .page .u-fade-type-left4.is-active{transition-delay:0s;}
  .page .u-fade-type-left5.is-active{transition-delay:0s;}
  .page .u-fade-type-left6.is-active{transition-delay:0s;}
}

/* fade right */
.page .u-fade-type-right{transform: translateX(-50px);opacity: 0;}
.page .u-fade-type-right.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;}
.page .is-active .u-fade-type-right{transition: 1.6s;transform: translateX(0);opacity: 1;}
.page .is-active .u-fade-type-right:nth-child(2){transition-delay: .2s;}
.page .is-active .u-fade-type-right:nth-child(3){transition-delay: .4s;}
.page .is-active .u-fade-type-right:nth-child(4){transition-delay: 1.2s;}
.page .is-active .u-fade-type-right:nth-child(5){transition-delay: 1.6s;}
.page .is-active .u-fade-type-right:nth-child(6){transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .is-active .u-fade-type-right{transition-delay:0s;}
}

/* fade right  単一の場合 */
.page .u-fade-type-right1{transform: translateX(-50px);opacity: 0;}
.page .u-fade-type-right1.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;}
.page .u-fade-type-right2{transform: translateX(-50px);opacity: 0;}
.page .u-fade-type-right2.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: .4s;}
.page .u-fade-type-right3{transform: translateX(-50px);opacity: 0;}
.page .u-fade-type-right3.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: .8s;}
.page .u-fade-type-right4{transform: translateX(-50px);opacity: 0;}
.page .u-fade-type-right4.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: 1.2s;}
.page .u-fade-type-right5{transform: translateX(-50px);opacity: 0;}
.page .u-fade-type-right5.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: 1.6s;}
.page .u-fade-type-right6{transform: translateX(-50px);opacity: 0;}
.page .u-fade-type-right6.is-active{transition: 1.6s;transform: translateX(0);opacity: 1;transition-delay: 2s;}
@media screen and (max-width: 1023px) {
  .page .u-fade-type-right2.is-active{transition-delay:0s;}
  .page .u-fade-type-right3.is-active{transition-delay:0s;}
  .page .u-fade-type-right4.is-active{transition-delay:0s;}
  .page .u-fade-type-right5.is-active{transition-delay:0s;}
  .page .u-fade-type-right6.is-active{transition-delay:0s;}
}

/* fade 画像の場合 */
.js-scroll-trigger {position:relative;}
.js-scroll-trigger img.u-fade-type-up:nth-child(1){position:static;top:0;right:0;bottom:0;left:0;margin:0;}
.js-scroll-trigger img.u-fade-type-up{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;}
.js-scroll-trigger img.u-fade-type-down:nth-child(1){position:static;top:0;right:0;bottom:0;left:0;margin:0;}
.js-scroll-trigger img.u-fade-type-down{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;}
.js-scroll-trigger img.u-fade-type-left:nth-child(1){position:static;top:0;right:0;bottom:0;left:0;margin:0;}
.js-scroll-trigger img.u-fade-type-left{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;}
.js-scroll-trigger img.u-fade-type-right:nth-child(1){position:static;top:0;right:0;bottom:0;left:0;margin:0;}
.js-scroll-trigger img.u-fade-type-right{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;}

/************************************
** アニメーション 文字アンダーライン
************************************/
/* アニメーション前のスタイル */
.marker-under {
  display: inline;
  position: relative;
  background-image: linear-gradient(90deg, #ffff66, #ffff66); /* 単色の場合は同じ色、グラデーションの場合は別々の色 */
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 30%; /* '30%'の部分にマーカーの太さを記入 */
  transition: all 2s ease-in-out; /* マーカーを引く速度を調整 */
  font-weight: bold; /* ついでに太字にしたい場合 */
}
/* アニメーション発火時 */
.marker-under.inview {
  background-size: 100% 30%; /* '30%'の部分は上で設定した太さに合わせる */
}

    
/************************************
** 画像リンクホバー
************************************/
a img{overflow:hidden;}
a img:hover{
	opacity:0.5;
	transition:1.3s;
}


/************************************
** flex順番整え
** スマホで見たときにカラム逆にする
************************************/
@media screen and (max-width: 1023px) {
	.flex-order-gyaku div:first-child{
		order: 2;
	}
	.flex-order-gyaku div:last-child{
		order: 1;
	}
}




/************************************
** トップページアニメーション 個別指定
************************************/
.gsss_container {
    position: relative;
    max-width: 1024px;
    max-height: 100%;
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
    padding: 0px;
}
.gsss_container img {
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: auto;
    z-index: 1;
    vertical-align: bottom; /* これを追加 */
}
.page .u-fade-type-right{transform: translateX(-20px);opacity: 0;}
.page .is-active .u-fade-type-right{transition: 3.0s;transform: translateX(0);opacity: 1;}
.public-page .is-active .u-fade-type-right:nth-child(2){transition-delay: 2s;z-index:10;}
.public-page .is-active .u-fade-type-right:nth-child(3){transition-delay: 4s;z-index:11;}
.public-page .is-active .u-fade-type-right:nth-child(4){transition-delay: 6s;z-index:12;}
.public-page .is-active .u-fade-type-right:nth-child(5){transition-delay: 8s;z-index:13;}
.public-page .is-active .u-fade-type-right:nth-child(6){transition-delay: 10s;z-index:14;}




/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}






