@charset "utf-8";

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
料金シミュレーター　＞　結果
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.cmn_result_area .pack_name_wrap {
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 1px dashed var(--accent);
	word-break: auto-phrase;
}
.cmn_result_area .pack_name_wrap:not(:has(.inner)) {
	display:none;
}

.cmn_result_area .price_wrap {
	text-align:center;
	font-weight: bold;
}

.cmn_result_area .price {
	display: inline-block;
	font-size: 30px;
	line-height: 1em;
	margin-right: 5px;
	color: var(--accent);
}

.cmn_result_area .price_sub {
	font-size: 14px;
	line-height: 1em;
}

.cmn_result_area .option_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    padding-top: 20px;
}

.cmn_result_area .option_wrap:not(:has([class*="option"])) {
	display: none;
}

.cmn_result_area .option_wrap > * {
    font-size: 13px;
    line-height: 1em;
    padding: 5px;
    border: 2px solid;
}

.cmn_result_area .option_wrap > .option1 {
    color: #2d75b8;
}

.cmn_result_area .option_wrap > .option2 {
    color: var(--accent);
}

.cmn_result_area .option_wrap > .option3 {
    color: #FF880C;
}

.cmn_result_area .koji_wrap{
	padding: 10px 5px;
	margin-top: 20px;
	border: 1px dashed var(--accent);
	text-align: center;
}

.cmn_result_area .koji_wrap .koji_price_wrap{
	
}

.cmn_result_area .koji_wrap .koji_price{
	text-decoration: line-through;
}

.cmn_result_area .koji_wrap .koji_comment{
	font-size: 26px;
	color: var(--accent);
}

.cmn_result_area .koji_wrap .koji_btn a {
    margin: 5px 0 0;
}

.cmn_result_area .koji_wrap:not(:has(.koji_price .inner)) {
    display: none;
}

.cmn_result_area .koji_wrap .koji_comment:not(:has(.inner)) {
    display: none;
}

.cmn_result_area .comment_wrap {
    line-height: 1.3em;
    font-size: 14px;
    padding: 7px;
    margin-top: 20px;
    border-radius: 8px;
    background-color: #f2f8fd;
}

.cmn_result_area .comment_wrap:not(:has(.inner)) {
	display:none;
}

.cmn_result_area .comment_wrap .comment1 {
    font-weight: bold;
    color: var(--accent);
}

.cmn_result_area .comment_wrap .comment2 {
    padding-top: 5px;
    margin-top: 2px;
    border-top: 1px solid #aacbff;
}

.cmn_result_area .comment_wrap .comment2:not(:has(.inner)) {
	display:none;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
料金シミュレーター　＞　選択肢
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.single_wrap > *,
.pack_wrap > * > *{
	cursor: pointer;
}

.single_wrap > *.active,
.pack_wrap > *.active > *{
	background-color: #fff8d9;
	border-color:orange;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
料金シミュレーター　＞　選択肢【ラジオボタンバージョン・廃止予定】
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*
.page-simulator .cat_group label {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 5px 10px;
    border-radius: 8px;
    border: 1px solid #9eb4d7;
    font-size: 17px;
    font-weight: bold;
    cursor: pointer;
}

.page-simulator .cat_group label:has(:checked) {
    background-color:#fff2e4;
    border-color:#ff8b11;
}

.page-simulator .cat_group label input {
    display: none;
}

.page-simulator .cat_group label .name {
    
}

.page-simulator .cat_group label .note .block {
    display:block;
    text-align:right;
    line-height: 1;
}

.page-simulator .cat_group label .note .s {
    font-size: 13px;
}

.page-simulator .cat_group label .note .ss {
    font-size: 0.75em;
}

.page-simulator .cat_group label .price {
    width: 100%;
    text-align: center;
    border-top: 1px solid #9eb4d7;
    font-size: 14px;
}

.page-simulator .cat_group label .price strong {
    font-size: 22px;
    color: var(--ctk-01);
    margin: 0 3px;
}
*/

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
基本レイアウト 2023-09-19 mk
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* トップページのH1を隠す */
.home .entry-header{
	display: none;
}

/* 背景 */
body {
    background: #FBF4F5 url("images/bg-body.jpg") 230px 100px repeat fixed;
/*    color: #003894;*/
    font-family: 'メイリオ', 'Meiryo', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3', Osaka, sans-serif;
}

.widget ul li {
    margin-bottom: 0;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ヘッダー　>　パンくず
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
div.breadcrumbs *{
	color: #fff;
	font-size: 14px;
}

div.breadcrumbs * a{
	text-decoration: none;
}

div.breadcrumbs * a :hover{
	text-decoration: underline;
}

div.breadcrumbs{
	position: absolute;
	text-align: left;
	padding: 20px;
	z-index: 1;
	margin-left: 50px
}

div.breadcrumbs span.kugiri::after {
    content: "\f105";
    padding-left: 5px;
    padding-right: 5px;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    color: #fff;
}

/*検索結果でヒットした一番上のページのCSSがあたるため修正（2024-03-28）mkw*/
body.search-results div.breadcrumbs{
	position: absolute;
	text-align: left;
	padding: 20px;
	z-index: 1;
	margin-left: 50px
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ヘッダー　>　ハンバーガーメニュー中身　（PC・スマホ共通）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#generate-slideout-menu li.menu-item a {
    font-weight: normal;
    display: block;
    text-align: left;
    font-size: 14px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.slideout-navigation .main-nav{
	margin-bottom: 0;
	padding-bottom: 30px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ヘッダー　>　ハンバーガーメニューのカスタマイズ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.sp .my_hamburger {
    width: 70px;
    height: 50px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
スライダー 2023-10-31 fuji
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*全スライダー共通*/
:is(.ms-skin-default .ms-nav-next, .ms-skin-default .ms-nav-prev){
	height: 100%;
    width: 35px;
    top: auto;
    bottom: 0;
    background: url("images/slider_arrow.svg") no-repeat center center #003894;
    background-size: 17px;
}
	
.ms-skin-default .ms-nav-next {
    right: 0;
    border-radius: 0 10px 10px 0;
	z-index: inherit;
}

.ms-skin-default .ms-nav-prev {
    left: 0;
    border-radius: 0px 10px 10px 0px;
    transform: scale(-1, 1);
	z-index: inherit;
}
.ms-skin-default .ms-bullet {
    width: 10px;
    height: 10px;
    background: #C8C8C8;
    border-radius: 50%;
}

.ms-skin-default .ms-bullet.ms-bullet-selected {
    background: #003894;
}

.ms-inner-controls-cont {
	position: static;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップ　＞　「ご加入検討中の方」「ご利用中のお客さま」
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*「ご加入検討中の方」*/
section#top_customer .items_y>*:not(:first-child):hover{
	background-image: url(images/customer-kanyu-bg.png)
}
section#top_customer .items_b>*:not(:first-child):hover{
	background-image: url(images/customer-user-bg.png)
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップ　＞　投稿表示「お知らせ」～「障害情報」
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*タブ*/
#top_topic .tab-label{
    width: calc(100%/5);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップ　＞　情報カメラ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*タブ*/
#top_camera .tab-label{
    width: calc(100%/3);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップ　＞　緊急情報
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
section#top_caution:not(:has(.txt_area > *)) {
    display: none;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップ　＞　番組情報
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#top_program p.txt{
	overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
情報カメラ　＞　各カメラページ　index04~11上部に線が出るため
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.refresh{
	overflow: hidden
}

.refresh img{
	margin-top: -2px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
料金シミュレーター　＞　料金表示（下固定）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#simulator_fixed {
	width: calc(100% - 230px);
	position: fixed;
	bottom: 0;
	left: 230px;
	z-index: 1;
}

/*トップへ戻るボタン非表示*/
body[class*="simulator"] a.generate-back-to-top{
	display: none;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
サービス案内　＞　光テレビ　＞　チャンネル比較表
光ハイブリッド　チャンネル一覧　＞　チャンネル比較表
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ch_tbl table {
    background: #fff;
	position: relative;
	border-collapse: collapse;
	width: 1000px;
}
.ch_tbl td{
	background-color: #fff;
}
.ch_tbl th{
	background-color: #E7F0FF;
}
.ch_tbl th, .ch_tbl td{
    border:1px solid #003894
}
.ch_tbl thead{
    border-bottom:0;
    background:#e7f0ff;
}

.ch_tbl th:nth-child(n+3){
    color:#fff;
    width:12%;
	font-size:15px;
}

.ch_tbl th:nth-child(2){
    color:#000;
}
.ch_tbl th:nth-child(3){
    background:#eb2800;
}
.ch_tbl th:nth-child(4){
    background:#fabe14;
}
.ch_tbl th:nth-child(5){
    background:#e64191;
}
.ch_tbl th:nth-child(6){
    background:#5855c2;
}
/*光テレビ　光シンプル　グリーン*/
.hikari_tv .ch_tbl th:nth-child(6){
    background:#22b5ab;
}
.ch_tbl th:nth-child(7){
    background:#4bbeef;
}
.ch_tbl th:nth-child(8){
    background:#22b6af;
}
.ch_tbl td:nth-child(4){
    color:#eb2800;
}
.ch_tbl td:nth-child(5){
    color:#fabe14;
}
.ch_tbl td:nth-child(6){
    color:#e64191;
}
.ch_tbl td:nth-child(7){
    color:#5855c2;
}
/*光テレビ　光シンプル　グリーン*/
.hikari_tv .ch_tbl td:nth-child(7){
    color:#22b5ab;
}
.ch_tbl td:nth-child(8){
    color:#4bbeef;
}
.ch_tbl td:nth-child(9){
    color:#22b6af;
}
.ch_tbl td:nth-child(n + 4){
	text-align:center;
	font-size:30px;
	line-height:1.3;
}

.ch_tbl td:nth-child(1){
	text-align:center;
	width:6em;
}
.ch_tbl td:nth-child(2){
	text-align:center;
	width:7em;
	line-height: 1;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
サービス案内　＞　光テレビ　＞　テーブル（オプションサービス・周辺機器）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*録画機能付きSTB(セットトップボックス)*/
.page-tv .course_stp{
	padding: 0 5px;
	margin-right: 5px;
	color: #fff;
}

/*機能比較表*/
.hikaku-tbl th{
	background-color: var(--main)!important;
	color: #fff;
}

.hikaku-tbl td:first-child{
	font-weight: 700;
	background-color: #E7F0FF;
}

.page-tv .gb-container-accordion_item {
    border-bottom: none;
}

/*テーブル内の番号なしリスト　余白不要のため*/
.gb-container-67fb532a ul{
	margin: 0;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
サービス案内　＞　光テレビ (2023-11-01）san
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ch_tbl_op.ch_tbl th:nth-child(2) {
	background-color:#e7f0ff;
 	color:#000;
 	width:480px;
}

.ch_tbl_op.ch_tbl td:nth-child(n + 4){
	font-size:16px;
	color: #000;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
サービス案内　＞　光テレビ　＞　オプションチャンネルのテーブル(2024-1-04）san
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.optional_ch.ch_tbl_op.ch_tbl th:nth-child(3){
	color: #000;
	background-color: #e7f0ff;
	width: 380px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ご加入検討中の方　＞　新築戸建の方LP
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*見出しリボン*/
.h_Ribbon {
  clip-path: polygon(
    100% 0%,
    calc(100% - 14px) 50%,
    100% 100%,
    0% 100%,
    14px 50%,
    0% 0%
  );
  background: #fff;
  padding: 8px 40px;
  border: 2px solid #000;
  box-shadow: 10px 5px 5px red;
  display: inline-block;
  margin: 0 auto;
}
.h_Ribbon_shadow {
  filter: drop-shadow(10px 0px 0px #000) drop-shadow(-10px 0px 0px #000);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ご加入検討中の方　＞　集合住所の方　＞　光ハイブリットサービス　＞　光ハイブリッド　チャンネル一覧
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ch_tbl_hfc th:nth-child(n+3){
    width:100px;
}
.ch_tbl_hfc th:nth-child(2){
    width:200px;
}
/*
.ch_tbl_hfc td:nth-child(2){
	text-align:center;
	max-width:5em;
	line-height: 1;
}
*/
.ch_tbl_hfc td:nth-child(1){
	text-align:center;
	max-width: 90px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ご加入検討中の方　＞　集合住所の方　＞　集合住宅物件名検索　
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.buken_tbl table{
	table-layout: fixed;
}
.buken_tbl td:nth-child(n+3){
    text-align: center;
}
.buken_tbl th{
	background-color: #003894;
	color: #ffffff;
	border:1px solid #000;
}
.buken_tbl td{
	background-color: #fff;
}
.buken_tbl th:nth-child(1){
	width:35%;    
}
.buken_tbl th:nth-child(2){
	width:40%;    
}

.buken_tbl th:nth-child(3){
	width:10%;    
}
.buken_tbl th:nth-child(4){
	width:15%;    
}
/*thの下ボーダー削除*/
.page-bukken-kensaku .wp-block-table thead,
.page-address-kensaku .wp-block-table thead{
	border-bottom:none;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
よくある質問＞アコーディオンのアイコン
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#faq_top .gb-accordion__icon,.gb-accordion__icon-open {
    color:var(--main);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
検索結果
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*検索結果＞検索窓の幅*/
.entry-content form.search_form_style{
    max-width:350px;
    margin:0 auto;
}
/*検索結果＞文字の幅*/
div#page.site.grid-container.container.hfeed {
    /* max-width:1000px; */
}
/*検索結果のpタグの余白*/
.entry-summary>p:last-child{
	padding-bottom: 20px;
}
/*検索結果のaタグの余白*/
.search article .entry-title {
	padding-bottom: 5px
}
/*検索結果＞見つからなかった時のレイアウト*/
.no-results.not-found{
	text-align: center;
}
.no-results.not-found h1.entry-title{
	margin-bottom: 20px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
投稿ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*背景*/
.single-post  div.inside-article{
	background-color: #fff;
	padding: 40px;
	border-radius:10px;
}

/*ボタンのフォントカラー変更*/
.single-post .paging-navigation a.gb-button{
	color:#003894;
}
/*戻るボタンの背景*/
.single-post p.back_to_list a{
	background-color: white;
	
}
/*戻るボタンの背景*/
.gb-container-89f91a7d > .gb-inside-container {
    max-width: none;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
かにみた　アーカイブ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.post-type-archive-ch121 .generate-columns.grid-33,.grid-sizer.grid-33{
	width:100%;
}
.kanimita_archives {
    padding:20px 40px;
    margin-top:0;
	margin-bottom: 20px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
404エラー時の余白
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.error404 .entry-title{
 	padding-top:200px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フッター
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*フッターお問い合わせ 下線*/
section.contact_area h3::before{
    width: 280px;
    height: 15px;
    border-radius: 9999px;
    position: absolute;
    left: 50%;
    bottom: 0px;
    z-index: -1;
    transform: translateX(-50%);
    content: "";
}

section.contact_area .tel::before{
    background-color: #FFDCFF;
}

section.contact_area .web::before{
    background-color: #E6F050;
}

/*フッターナビ*/
#footer-widgets ul.menu > li {
    font-weight: normal;
}

#footer-widgets ul.menu {
    justify-content: normal;
    gap: 10px 20px;
    font-size: 16px;
}

#footer-widgets ul a{
    position: relative;
    margin-right: 25px;
}

#footer-widgets ul.menu li a::after{
    font-family: "Font Awesome 6 Free";
    content: "\f138";
    font-weight: 900;/* 要指定 */
    font-size: inherit;
    margin-left: 5px;
    position: absolute;
}

#footer-widgets ul.menu li a{
    text-decoration: none;
}

#footer-widgets ul.menu li a:hover{
    text-decoration: underline;
}

#footer-widgets .footer-widgets-container{
	border-bottom: solid 1px #ffffff42;
}

/*検索結果でヒットした一番上のページのCSSがあたるため修正（2024-03-28）mkw*/
body.search-results .site-footer .footer_info > div {
    width: auto;
}

body.search-results .site-footer .footer_info > div p{
	margin-top: auto;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
　固定プロモ　＞　見出し
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* 自前バージョン2024-03-04mk */
#header_title h1.jimae {
    letter-spacing: 0.2em;
    font-weight: bold;
    color: var(--white);
}

/*下線*/
div#header_title div.title_underline::before {
	content: "";
	position: absolute;
    width: calc(100% - 20px);
    background-color: #003894;
    left: 0;
    bottom: -7px;
    height: 20px;
    border-radius: 9999px;
	margin: 0 10px;
}

/*ドロップシャドウ*/
div#header_title h1::before{
    content: attr(data-innertext);
    -webkit-text-stroke: 5px #fff;
	position: absolute;
	left: 0;
    right: -3px;
	bottom: -2px;
	z-index: -1;
}

/*縁取り*/
div#header_title h1::after{
    content: attr(data-innertext);
    -webkit-text-stroke: 5px #003894;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　キャンペーン＆プレゼント
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.cmn_post_list [class^="post-term-item"] {
	padding:5px 30px;
    color:#fff;
	font-size: 12px;
}

.cmn_post_list .term-present{
	background-color:#faa0be;
}
.cmn_post_list .term-campaign{
	background-color:#FABE14;
}

.cmn_post_list p.cmn_event:before {
    content: "応募期間";
	font-weight: 500;
	font-size: 14px;
    color:#fff;
    background-color:var(--main);
    padding:2px 10px;
    border-radius:10px;
    margin-right:5px;
}

.page-campaign-present .present:not(:has(.kikan)).present,
.page-campaign-present .campaign:not(:has(.kikan)).campaign{
	display:none;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　検索窓（ヘッダー、フッター、サイドバー）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.side_search{
	width:100%;
	padding:0 15px;
}

form.search_form_style {
    margin: 0 5px 30px;
    display: flex;
    border: #003894 2px solid;
    border-radius: 9999px;
    overflow: hidden;
	position: relative;
}

form.search_form_style input[type="text"] {
	border: 0;
	border-radius: 0;
	background: #ffffff;
	width: 100%;
}

form.search_form_style .form_text {
	line-height:1em;
	padding:3px 10px;
	background: #fff;
	font-size:0.9em;
	border: 1px solid #ddd;
}

form.search_form_style .screen_reader_text {
	display: none;
}

form.search_form_style::before {
    content: '';
    width: 39px;
    height: 100%;
    background: #003894;
    position: absolute;
    right: 0;
    top: 0;
}

form.search_form_style .search_btn {
	background: transparent;
	padding: 0;
	margin: 0;
	text-indent: -9999px;
	display: block;
	width: 39px;
	height: 30px;
	position: absolute;
	right: 0px;
/*	top: 4px;*/
	z-index: 2;
	border: none;
	border-radius: 0px;
	box-shadow: none;
}

form.search_form_style::after {
    font-family: "icomoon";
    content: '\e905';
    height: 100%;
    position: absolute;
    right: 10px;
    top: 0px;
    display: flex;
    align-items: center;
    z-index: 1;
    font-size: 2.0rem;
	color: #fff;
}

/*デフォルトのアイコンを消す*/
form.search_form_style  [class*=icon]{
	display:none;
}

/*footer > 余分な余白の削除*/
#footer-widgets .search_wrap p{
	margin-bottom:0;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　タブ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.gb-tabs__buttons>*:first-child:not(.kensaku_tab)  {
    border-left: transparent!important;
}
.gb-tabs__buttons>*:last-child:not(.kensaku_tab)  {
    border-right: transparent!important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　リスト（番号なし）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
ul.list_type04 > li:before {
	content: '・';
	width:1.1em;
	height:2px;
	top: -9px;
	font-size: 2em;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　リスト（よくあるご質問）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.question_list > li {
	position: relative;
	font-size: 18px;
	line-height: 1.5;
	margin-top: 0;
	margin-bottom: 1.3em;
	color:var(--main);
	font-weight: 500;
}

ul.question_list > li {
	padding-left: 2.2em;
	padding-right: 0.5em;
}

/* Qアイコン */
.question_list li::before{
	font-size: 1.8em;
	line-height: 1.5;
	margin-right: 5px;
	position: absolute;
	left: 0px;
	top: -12px;
	color:var(--main)
}

ul.question_list > li::before {
	font-family: "icomoon";
	content: '\e92f';
	vertical-align: bottom;
}

/* ▶アイコン */
ul.question_list > li a::after {
	font-family: "icomoon";
	content: '\e913';
	vertical-align: bottom;
	position: absolute;
	right:-1.3em;
}

/* ホバー */
ul.question_list > li a{
	position: relative;
	color:var(--main);
	text-decoration: none;
}

ul.question_list > li a:hover{
	text-decoration: underline;
}

ul.question_list > li a:hover::after {
	content: '\e914';
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　アコーディオン（よくある質問・新築戸建の方・加入キャンペーン）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* QA */
.gb-container-accordion.faq .gb-button-accordion_ttl,
.basic_qa_box .ttl {
	padding: 20px 20px 20px 100px;
}

.gb-container-accordion.faq .gb-button-accordion_ttl:before,
.basic_qa_box .ttl::before {
    content: 'Q';
    color: #fff;
    font-family: "M PLUS Rounded 1c", sans-serif;
    transform: rotate(0.03deg);/* シャギーを防ぐ指定 */
    font-size: 20px;
    font-weight: 900;
    background: #003894;
    border-radius: 50%;
    width: 42px;
    height: 42px;
    padding-top: 4px;
    text-align: center;
    position: absolute;
    left: 30px;
    top: 18px;
}

.gb-container-accordion.faq .gb-container-accordion_content,
.basic_qa_box .content {
	padding: 15px 35px 45px 100px;
	background-color: transparent;
}

.gb-container-accordion.faq .gb-container-accordion_content::before,
.basic_qa_box .content::before {
    content: 'A';
    position: absolute;
    color: #fff;
    font-family: "M PLUS Rounded 1c", sans-serif;
    transform: rotate(0.03deg);/* シャギーを防ぐ指定 */
    font-size: 20px;
    font-weight: 900;
    background: #E64191;
    border-radius: 50%;
    width: 42px;
    height: 42px;
    padding-top: 4px;
    text-align: center;
    top: 12px;
	left: 30px;
}

/* 丸いデザインの場合 */
.gb-container-accordion.faq.deco .gb-button-accordion_ttl {
	margin-bottom: 20px;
}

/*新築の方＞ご相談からご利用までの流れFAQ*/
.gb-container-accordion.faq.deco #sintiku-accordion .gb-button-accordion_ttl {
	background-color: var(--accent);
	color: #fff;
	font-size: 30px;
	
}
.gb-container-accordion.faq #sintiku-accordion .gb-button-accordion_ttl::before{
	font-size:30px;
    background-color:transparent;
    font-weight: 600;
	padding-top: 0;
}

#sintiku-accordion  .gb-accordion__icon-open{
	color:#fff;
}
.gb-container-accordion.faq .gb-container-accordion_content #sintiku-anser {
	font-size: 22px;
}

 .gb-container-accordion.faq #sintiku-accordion .gb-container-accordion_content::before{
	color:var(--main);
	background-color:transparent;
	font-weight: 600;
	font-size:30px;
	padding-top: 0px;
}

/*新築の方＞その他のおすすめプランアコーディオン*/
.gb-container div.lp_width{
	max-width: 1200px;
}
.gb-container-accordion.faq #sintiku_plan .gb-button-accordion_ttl{
	color: #469B14;
	background-color:#fff;
	font-size: 30px;
	justify-content: center;
}

.gb-container-accordion.faq #sintiku_plan .gb-button-accordion_ttl::before{
	display: none;
}
.gb-container-accordion.faq #sintiku_plan .gb-container-accordion_content::before{
	display: none;
}
#sintiku_plan  .gb-accordion__icon-open{
	color: #469B14;
}

#sintiku_plan.gb-container-accordion_item{
	border-bottom:none;
}

#sintiku-accordion.gb-container-accordion_item{
	border-bottom:none;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　括弧付き番号付きリスト（番組基準）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.cmn_list01 > li{
 list-style: none;
 counter-increment: count-ex01; 
 position: relative;
 padding-left: 4rem;
 line-height: 1.4;
 font-size:16px;
 margin-bottom: 1em;
}

.cmn_list01 > li:before {
 content:  "(" counter(count-ex01) ")"!important;
 position: absolute;
 left: 0;
}

/* オプション */
ul.cmn_list01 ul.opt > li {
    text-indent: -1em;
    padding-left: 1em;
}

ul.cmn_list01 ul.opt ul {
    margin-left: 0em;
}

ul.cmn_list01 ul.opt ul > li {
    text-indent: -2em;
    padding-left: 2em;
}

ul.cmn_list01 ul.opt ul > li {
	margin-right:2em;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　テーブル01
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ctk_table01 {
  padding: 0 50px 0 20px;
  background: linear-gradient(
    90deg,
    #003894 0,
    #003894 21px,
    #fff 21px,
    #fff 100%
  );
  max-width: 1000px;
  margin: 0 auto 20px auto;
  border-radius: 0 30px 30px 0;
  box-shadow: 4px 4px 0 0 rgba(230, 65, 145, 0.35);
  box-sizing: border-box;
  color:var(--main)
}
.ctk_table01 table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 !important;
  border: 0 !important;
}
.ctk_table01 table td {
  padding: 20px;
  padding-left: 50px;
  padding-right: 0;
  border: none;
  border-bottom: 1px solid #003894;
  font-weight: 500;
}
.ctk_table01 tr td:first-child {
  background: #003894;
  color: #fff;
  border-bottom: 1px solid #fff;
  padding-left: 0;
  padding-right: 20px;
  width: 130px;
  vertical-align: top;
}
.ctk_table01 tr:first-child td:first-child {
  border-radius: 0 30px 0 0;
}
.ctk_table01 tr:last-child td:first-child {
  border-radius: 0 0 30px 0;
}
.ctk_table01 tr:last-child td {
  border: none;
}
.ctk_table01 figcaption {
    display: none;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ぶらっとおでかけBOX　＞　テーブル
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.table_odekake{
	font-size: 20px;
	font-weight: bold;
    text-align: left;
	color: var(--main);
}
.page-odekakebox ul{
	margin-top: 5px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用　＞　アイコン・フォント
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*電話アイコン*/
.cmn_tel_icon::before {
    font-family: "Font Awesome 6 Free";
    content: "\f2a0";
    vertical-align:0;
    margin-right: 10px;
}

/*フォント M PLUS Rounded 1c*/
.cmn_m-plus, [class*="_m-plus"]{
    font-family: "M PLUS Rounded 1c", sans-serif;
	/* ↓シャギーを防ぐ指定→（テーブルなどでoverflowが効かなくなる不具合があるので併用しないよう注意2024-01-09mk） */
    transform: rotate(0.03deg);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Global Styles　＞　汎用コンテナ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* コンテナ02（アイコン有） */
.gb-container-box02::before{
    font-family: "icomoon";
    position: absolute;
    bottom: 0;
    right: calc(50% - 0.5em);
    transform: translateY(-50%);
    content: "\e914";
    font-size: 22px;
}

/* コンテナ03（アイコン有） */
.gb-container-box03::before{
    font-family: "icomoon";
    position: absolute;
    bottom: 0;
    right: calc(50% - 0.5em);
    transform: translateY(-50%);
    content: "\e913";
    font-size: 22px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Global Styles　＞　汎用見出し
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* 見出し大・見出し小 */
[class*="gb-headline-large"],
[class*="gb-headline-small"]{
    position: relative;
}

/* 見出し大B */
.gb-headline-large_b_m-plus::after {
    content: '';
    position: absolute;
    background-color: #A6BADA;
    border-radius: 9999px;
	width: 100%;
    height: 15px;
    left: 50%;
    bottom: 0;
    z-index: -1;
    transform: translateX(-50%);
}

/* 見出し小A */
.gb-headline-small_a_m-plus::after {
    font-family: "Font Awesome 6 Free";
    content: "\f105";
    font-weight: 900;/* 要指定 */
	color: #00b9f5;
    font-size: inherit;
    position: absolute;
	top: 0px;
	left: 0px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Global Styles　＞　汎用ボタン
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ボタン01（小）（大） */
[class*="gb-button-basic_btn01"]::after{
    font-family: "Font Awesome 6 Free";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    content: "\f138";
    font-weight: 900;/* 要指定 */
    font-size: inherit;
}

[class*="gb-button-basic_btn01"]{
    font-family: "M PLUS Rounded 1c", sans-serif;
    transform: rotate(0.03deg);/* シャギーを防ぐ指定 */
}

/*ボタン02　デザイン決まってから指定*/
.gb-button-wrapper .gb-button-basic_btn02{
	padding: 15px 25px;
}
.gb-button-basic_btn02::before {
    font-family: "icomoon";
    content: '\e914';
    font-size: 18px;
    line-height: 1;
    position: absolute;
    left: 0;
    top: calc(50% - .5em);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
画像ポップアップ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* 虫眼鏡アイコン */
a:has(.image_popup){
	position:relative;
	display:inline-block;
}

a:has(.image_popup):after {
    content: "\e905";
    font-family: "icomoon";
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    font-size: 2rem;
    color: #fff;
    background-color: rgba(0,0,0,0.5);
    width: 30px;
    height: 30px;
    text-align: center;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ページ内リンク　[>]を縦にする（リンクが#で始まるものがセレクタ）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ビッガーリンク用 */
.gb-container:has(a.gb-container-link[href^="#"])::before{
	transform: translateY(-50%) rotate(90deg);
}

a[href^="#"]::after{
	transform: rotate(90deg);
	top:auto;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フォーム
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* メッシュWi-Fiお申し込み　＞　画像崩れ */
.wpforms-container-full .wpforms-entry-preview-value img {
    display: block;
    border: 1px solid #ccc;
    margin-bottom: 10px!important;
}

/* WP-Forms　＞　余白調整 */
div.wpforms-container-full{
	margin: 0 auto 24px auto;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
その他
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* アンカー下線 */
a{
	text-decoration: underline;
}

/* アンカー下線 不要な場合 */
.no_underline a{
	text-decoration: none;
}

/* 見出し大3(サイトに反映させたい画像へのルートパスを記述・相対パスだと管理画面で404になるため) */
/*.gb-headline-h_large3::before {
    background: url("/generate/wp-content/themes/generatepress_child/images/logo_icon.png") no-repeat center center / contain;
}*/

/*特定のコンテンツにスタイルを反映させる際の見本*/
#home_samplecoding .items > div{
	border:4px solid red;
}

#home_samplecoding .btn{
	background:red;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
お問い合わせフォーム　＞　郵便番号自動入力（zipaddr-jp）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* 「ハイフンなしで入力！」というメッセージが邪魔だったので非表示に2024-02-19mk */
div#autozip {
    display: none!important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ハンバーガーメニューのカスタマイズ(2023-03-13mk)
↓↓↓下記をまずは削除した上で、【https://coco-factory.jp/ugokuweb/move01-cat/humbugermenu/】から、お好みのボタンのCSSを追加
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/*==================================================
　5-2-1 3本線が×に
===================================*/
/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.openbtn{
	/*ボタン内側の基点となるためrelativeを指定。
追従するナビゲーションの場合はfixed＋top、rightといった位置をセットで指定*/
	position: relative;
	background:#fff;
	cursor: pointer;
    width: 50px;
    height:50px;
}

/*ボタン内側*/
.openbtn span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 3px;
/*    border-radius: 2px;*/
	background: #003894;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

/*activeクラスが付与されると線が回転して×に*/

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;/*真ん中の線は透過*/
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}