/*
Theme Name: majestic_plus_child
Template: majestic_plus
*/

/* ----- ボタンの背景色 ------*/
.wp-block-button__link,
.wp-block-button {
	background-color: #00a73c;
	border-radius: 5px;
/*グラデ用 	background: linear-gradient(0deg, #f35c51 0%, #fe2d2d 50%, #6b0800 100%);  */
}

.wp-element-button .wp-block-button__link, .wp-block-button {
	background-color: #ffffff;
	border-radius: 30px;
}

.wp-element-button .wp-block-button__link, .wp-block-button a {
	background-color: #00a73c;
	border-radius: 30px;
}

/* ----- ボタンの背景色 マウスオーバー ------*/
.wp-block-button__link:hover,
.wp-block-button:hover {
	opacity:.8
}

/* ----- ボタンのテキストの色 ------*/
.wp-block-button__link:not(.has-text-color),
.wp-block-button__link:not(.has-text-color):active,
.wp-block-button__link:not(.has-text-color):focus,
.wp-block-button__link:not(.has-text-color):hover,
.wp-block-button__link:not(.has-text-color):visited {
	color: #fff;
}

/* ----- ヘッダーパーツのロゴ ------*/
#smart-logo {
     top: 34px;
     left: 13px;
}
#smart-logo img {
 	max-height: 49px;
}

@media only screen and (max-width: 769px) {
	#smart-logo img {
 		max-height: 40px; 
	}
	#smart-logo {
 		top: 9px; 
 		left: 12px;
	}
}

/* ----- ヘッダーパーツの電話番号 ------*/
#header-parts .header-tell {
/*     font-size: 1.7em; */
}


h1.post-title:before,
h1.entry-title:before{
 	background: -webkit-gradient(linear, left top, right bottom, from(#fb4e4e), to(#ab2a2a));
	background: -webkit-linear-gradient(left top, #fb4e4e 0%, #ab2a2a 100%);
	background: -o-linear-gradient(left top, #fb4e4e 0%, #ab2a2a 100%);
	background: linear-gradient(to right bottom, #fb4e4e 0%, #ab2a2a 100%); 
}

/* ----- トップパーツ背景カラー ------- */
.internet-insurance,
.ins_company,
.insurance-category,
body.home .company {
	background: #fdf6ea;
}

/* ----- ページ送りカラー ------- */
.pnavi .page-numbers.current {
/* 	background-color: #ffefef; */
}


/* ----- 画面サイズ調整用 ------- */
@media screen and (min-width:770px) and ( max-width:1240px) {
	#menu-menu li a {
/* 		font-size: 1.1em; */
	}
	body,
	.bg_image,
	#nav-topbar .container {
/* 		    min-width: 1200px; */
	}
	.page-image .image-container {
/* 		height: 350px; */
	}
}

/* ----- 画面サイズ調整用2 ------- */
@media screen and (min-width:770px){
	body,
	.bg_image,
	#nav-topbar .container, .navigation{
		min-width: auto; 
	}
	.header-data .wp-block-group__inner-container {
		 display: flex;
    	line-height: 1.2;
	}
}
@media only screen and (max-width: 1300px) {
	.header-data .wp-block-group__inner-container {
		display: flex;
		flex-direction: column;
    	line-height: 1;
		margin-right: 20px;
	}
	#header-parts .header-tell {
		font-size: 25px;
	}
	#header-parts .business-hours {
		font-size: 12px;
		text-align: left;
		margin-left: 35px;
	}
}
@media only screen and (min-width:770px) and  (max-width: 1015px) {
	#smart-logo {
		width: 25%;
	}
	#smart-logo img {
		max-height: fit-content;
	}
}


/* ----- スライダースマホ対応用 ------- */
@media only screen and (max-width: 769px) {
	.main-slider,
	.bg_image {
		height: 145px;
	}
	.bg_image {
/* 		margin-top: 0px; */
	}
	body.home .site-content-contain {
		margin-top: and 5px;
	}
}
/* ----- 進行状況確認用 ------- */
.progress-box {
	position: fixed;
    left: 10px;
    bottom: 10px;
    z-index: 100;
    text-align: center;
}
.progress-box a {
	display: block;
    background: #333;
    color: #FFF;
    font-size: 14px;
    width: 100px;
    padding: 10px;
    border-radius: 5px;
	 line-height: 1;
}
.progress-box a span{
	font-size: 10px;
    display: block;
    margin-top: 5px;
}
@media only screen and (max-width: 769px) {
	.progress-box {
		display: none;
	}
}


.hide{
	display:none;
}
/*吸わんトク*/
.swan-box{
	   border-radius: 10px;
	width:60%;
	background-color:#ffffff;
    -webkit-box-shadow: 0 7px 16px -11px rgb(0 25 50 / 70%);
    box-shadow: 0 7px 16px -11px rgb(0 25 50 / 70%);
    overflow: hidden;
	margin:30px auto 20px;
	border:solid 1px #666666;
}
@media only screen and (min-width: 770px){
.swan-shohin{
	padding-top:30px;
	align-items:center;
	max-width:860px;
	min-width:820px;
	margin:0 auto;
}
}

.swan-box img{
	display:block;
	margin:0;
	padding:0;
}

.swan-box h3{
	margin:10px auto;
	font-size:22px;
}
.swan-box p{
	line-height:1.4em;
}
@media only screen and (max-width: 769px){
	.swan-box h3{
		font-size:14px;
	}
	.swan-box{
		width:90%;
	}
	.internet-insurance .swan-box figure img{
		width:100% !important;
	}
}

.internet-insurance .swan-box .wp-block-group__inner-container{
	width: 100%;
    margin: 0 auto;
    margin-top: 0;
    display: block;
    flex-wrap: wrap;
}
.internet-insurance .swan-box .wp-block-image{
	width: 100%;
    margin: 20px auto;
    text-align: center;
	border:none;
	border-radius:0;
    -webkit-box-shadow: 0 rgb(0 0 0 / 70%);
    box-shadow:none;
    overflow: hidden;
}
.internet-insurance .swan-box figure img{
	margin:0 auto;
	width:100%;
}
.internet-insurance  #swan-img{
	width:100%;
}
.swan-b img{
	width:40% !important;
}

body.solicitation-policy h2{
	padding:20px;
}

/* ----- ▼ majestic_plusテーブルバグ修正 ▼ ------- */
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: #f0f0f0 !important;
}
/* ----- ▲ majestic_plusテーブルバグ修正 ▲ ------- */

/* ----- ▼ Google Maps ▼ ------- */
.top-map iframe {
    width: 100%;
    height: 600px;
}
.company-map iframe {
    width: 100%;
    height: 600px;
}
/* ----- ▲ Google Maps ▲ ------- */


body.personal-information .indbox p,
body.ind .indbox p
body.indbox p{
	text-indent:-1em;
	padding-left:1em;
}

/* 記事カテゴリー一覧 */
.cat_list{
	width:500px;
	max-width:90%;
	margin:0 auto;
}
.cat_list ul{
	display:flex;
	justify-content:space-between;
}


.post-thumb-category a{
	padding:5px;
}

.post_description .post-meta{
	padding: 5px;
}

.post_description h2.post-title {
    padding-top: 20px;
}

.post-standard .post-inner {
    padding-left: 0px;
	float:none;
}

article.post-standard .post_description {
    padding: 0 0 125px;
}

.content .post-byline{
	font-size:11px;
}

.post-standard .post-thumbnail{
	margin-left:0px;
}

body.blog .content .page,body.blog .content .post{
    margin: 20px auto 10px;
    width: 70%;
}

@media only screen and (max-width: 769px){
.post_description h2.post-title{
    padding-bottom: 0px;
    padding-top: 20px;
	min-width: 220px;
	}	
	
	.post_description .post-meta{
	left:10px;
	}

	.post-title{
	padding: 0 10px;
	}
	
	article.post-standard .post_description {
    padding: 0 0 0px;
	width:100%;
	max-width:500px;
	}
	
	.cat_list ul{
	display:block;
	text-align:center;
	}
	
	.post-thumbnail img {
    margin-left: 5px;
	}
	
	body.blog .content .page, body.blog .content .post{
    width: 100%;
}
	
}


/* 各カテゴリー */
body.archive .container-inner .post {
    overflow: hidden;
    border-radius: 0;
	box-shadow:none;
    margin: 20px auto 10px;
    width: 70%;
}

body.archive .container-inner {
    background: #fff;
}

/* カテゴリー一覧メニューアコーディオン */
.acd-check{
    display: none;
}
.acd-label{
    background: #ffffff;
    color: #cf2e2e;
    display: block;
    margin-bottom: 1px;
    padding: 10px;
	text-align: center;
}
.acd-content{
/*     border: 1px solid #333; */
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label + .acd-content{
	height: fit-content;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}

/* ----- isoロゴ対応用 ------- */
.footer-right {
    width: 100%;
}
.iso-logos{
	display:flex;
	justify-content: flex-end;
	align-items: baseline;
	flex-direction: column;
	width: fit-content%;
    margin-left: auto;
	
}
.iso-logos img{
	max-height:90px;
	width:auto;
}
.iso-logos .iso_text {
	font-size: 12px;
	line-height: 1.4;
	margin-top: 10px;
}
@media only screen and (max-width: 1380px) {
	.footer-right {
		padding: 0;
	}
	.iso-logos {
		width: 100%;
		margin-top: 30px;
	}
}

#header-parts .wp-block-buttons {
  display: flex;
}

#nav-topbar .container {
    position: absolute;
    top: 20px;
    z-index: 10;
}

.insurance-category figure, .internet-insurance .wp-block-image, body.home .sonpo-data figure {
    border: none;
}

div.ins_comp_bnr .wp-block-group__inner-container.is-layout-flow.wp-block-group-is-layout-flow {
	width: 80%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	margin: 0 auto;
}

div.ins_comp_bnr .wp-block-group__inner-container.is-layout-flow.wp-block-group-is-layout-flow figure {
	width:27%;
	padding: 7px;
	border: solid 1px #868686;
	border-radius: 15px;
	box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
}

/* -------▼商品案内▼ ------- */
body.insurance-item-list .container-inner {
	background: #FFF;
}
body.insurance-item-list .insurance-select-category {
	
}
body.insurance-item-list figure {
	border: 1px solid #e6e6e6;
	  -webkit-box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
    box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
}
body.insurance-item-list .consultation-flow figure,
body.consultation-flow .consultation-flow figure {
	  width: 80%;
	border-radius: 10px;
	margin:auto;
}
body.insurance-item-list .consultation-flow h3,
body.consultation-flow .consultation-flow h3{
	 font-size: 1.4em;
}
body.insurance-item-list .advgb-tabs-panel {
	display: flex !important;
    justify-content: center;
}
body.insurance-item-list .advgb-tabs-panel li {
	list-style: none;
	width: 30%;
	text-align: center;
}
body.insurance-item-list .advgb-tabs-panel li a{
}
body.insurance-item-list .wp-block-columns {
	    margin-bottom: 60px;
}
body.insurance-item-list .wp-block-columns figure {
	    width: 60%;
	border-radius: 10px;
	margin-bottom: 0;
}
body.insurance-item-list .wp-block-columns h4 {
	font-size: 1.3em;
	margin-top: 10px;
}

.advgb-tab-active:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -15px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #000080 transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}
ul.advgb-tabs-panel li.advgb-tab {
	margin: 0 20px 25px 0 !important;
}
body.insurance-item-list .entry h2 {
	font-size: 30px;
	margin-bottom: 30px;
	border-bottom: none;
	padding-left: 0;
	padding-top: 0;
}

body.insurance-item-list .wp-block-columns {
	border:none;
	box-shadow:none;
	font-weight:normal;
}
@media only screen and (max-width: 769px) {
	body.insurance-item-list .entry h2,
	body.consultation-flow .entry h2 {
		padding-top: 0px;
		font-size: 1.6em;
		margin-bottom: 20px;
	}
	body.insurance-item-list .insurance-select-category {
		 margin-top: 20px;
	}
	body.insurance-item-list .consultation-flow {
		margin-top: 0px;
	}
	body.insurance-item-list .consultation-flow.has-media-on-the-right,
	body.consultation-flow .consultation-flow.has-media-on-the-right {
		    display: flex;
    flex-flow: column;
	}
	body.insurance-item-list .consultation-flow h3,
	body.consultation-flow .consultation-flow h3{
		margin-top: 10px;
		text-align: left;
    text-indent: -1em;
    padding-left: 1em;
	}
	body.insurance-item-list .consultation-flow {
		text-align: left;
	}
	body.insurance-item-list .wp-block-columns figure {
		width: 100%;
	}
	body.insurance-item-list .wp-block-columns {
		margin-bottom: 0px;
	}
	body.insurance-item-list .wp-block-columns .wp-block-column {
		   margin-bottom: 30px;
	}
	ul.advgb-tabs-panel:after {
		display: none !important;
	}
	body.insurance-item-list .advgb-tabs-panel {
		    justify-content: space-around;
	}
	body.insurance-item-list .advgb-tabs-panel li {
		width: 40%;
	}
	body.insurance-item-list .insurance-items div.advgb-tab-body {
		    padding: 0;
	}
	body.insurance-item-list .insurance-items div.advgb-tab-body p{
		text-align: left;
	}
}
.has-small-font-size {
			font-size: 13px !important;
}

body.insurance-item-list .internet-insurance figure {
	box-shadow: none;
	border: none;
}
body.insurance-item-list .ins_company {
	margin-top: 0;
}
body.insurance-item-list .insurance-item-list-net figure.wp-block-image {
    border: none;
    box-shadow: none;
	border-radius: 0;
}
@media only screen and (max-width: 769px) {
	body.insurance-item-list .advgb-tabs-panel li.advgb-tab {
		width: 50%;
		line-height: 1.2;
		font-size: 11px;
		margin: 0 5px 25px 5px !important;
	}
	body.insurance-item-list .advgb-tabs-panel li.advgb-tab a {
		padding: 10px 5px;
	}
	.smb-tabs__tabs {
		display:flex;
		flex-wrap: wrap !important;
	}
}

button.smb-tabs__tab {
    font-size: 1.3em;
    background: #00a73c !important;
    color: #ffffff;
    margin: 40px 80px;
    border-radius: 14px !important;
    border-bottom: none !important;
}

.smb-tabs {
    --smb-tabs--background-color: var(--wp--preset--color--white);
    --smb-tabs--color: currentColor;
    --smb-tabs--border-color: var(--_light-color-gray);
    --smb-tabs--tab-background-color: #0000;
    --smb-tabs--tab-border-color: #0000;
    --smb-tabs--tab-border-radius: var(--_global--border-radius);
    --smb-tabs--tab-color: inherit;
    --smb-tabs--style--line--accent-color: none;
    overflow: hidden
}

/* -------▲商品案内▲ ------- */

/*インターネットでご契約　SPver */
@media only screen and (max-width: 769px) {
	.internet-insurance, .ins_company {
		background: #c1f4e1;
		margin-top: 50px;
		padding: 50px 20px;
		text-align: center;
	}
/*
    .internet-insurance .wp-block-group__inner-container {
        width: 100%;
        margin: 20px auto;
    }
	*/
	.internet-insurance .wp-block-image figure {
		margin-bottom: 0;
		overflow: hidden;
		margin: 30px 10px 10px 10px;
	}
		.internet-insurance .wp-block-group__inner-container {
		width: 80%;
		margin: 20px auto;
		margin-top: 20px;
	}
	.internet-insurance .wp-block-image {
        width: 45%;
    }
	    .internet-insurance .wp-block-image {
        border-radius: 20px;
    }
	    .internet-insurance .wp-block-group__inner-container {
        width: 100%;
        margin: 20px auto;
        margin-top: 20px;
    }
	
	.internet-insurance .wp-block-image {
		margin: 10px auto;
		text-align: center;
		background: #fff;
		border-radius: 10px;
		-webkit-box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
		box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
		overflow: hidden;
	}
}
	
.internet-insurance .wp-block-image figure:hover {
    opacity: .5;
}
.insurance-category .wp-block-image:hover {
	opacity:.5;
}

/* SPボタン枠変更 */
@media only screen and (max-width: 769px) {
    body.insurance-item-list .wp-block-buttons .wp-block-button .wp-block-button__link, body.quote .wp-block-buttons .wp-block-button .wp-block-button__link {
        font-size: 12px;
        padding: 0px 28px;
    }
	    body.insurance-item-list .item-block .wp-block-buttons, body.quote .item-block .wp-block-buttons {
        align-items: center;
        justify-content: normal;
    }
	body.insurance-item-list .entry, body.quote .entry {
        text-align: unset;
    }
	
	#smart-tel a {
		padding: 10px 27px;
	}
	    .wp-block-button__link {
        padding: 12px 27px;
    }
		div.ins_comp_bnr .wp-block-group__inner-container.is-layout-flow.wp-block-group-is-layout-flow {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 auto;
	}

	div.ins_comp_bnr .wp-block-group__inner-container.is-layout-flow.wp-block-group-is-layout-flow figure {
		width:100%;
		padding: 7px;
		border: solid 1px #868686;
		border-radius: 15px;
		box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
	}
}

.insurance-category a {
    display: block;
    cursor: pointer;
    max-width: 500px;
    overflow: hidden;
    width: 100%;
}

.insurance-category a img{
    height: auto;
    transition: transform .6s ease;
}

.insurance-category a img:hover{
    transform: scale(1.05);
}

/*商品一覧変更*/
.insurance-category {
	display: block;
	width:100%;
	padding: 50px 0
}

.insurance-category .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
	margin: 0 auto;
	width: 80%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	padding: 20px 0;
}
@media only screen and (max-width: 769px) {

}

.insurance-category h2 {
	display: block !important;
	font-size: 2.2em;
    line-height: 1.2;
    font-weight: bold;
    padding: 30px 0 !important;
    text-shadow: #ffffffb8 1px 1px 8px, #ffffffb8 -1px 1px 8px, #ffffffb8 1px -1px 8px, #ffffffb8 -1px -1px 8px;
}

.isotype-block-capbox.cap_box.box-cat {
    width: 23%;
    margin: 0 10px 30px;
    box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
    border-radius: 10px !important;
}

.cap_box_ttl {
    border-radius: 10px 10px 0 0;
}


.cap_box_content {
    border-radius: 0 0 10px 10px;
    padding: 0;
	border: unset !important;
}

.insurance-category .wp-block-image {
    -webkit-box-shadow; 
    box-shadow: none;
    margin: 0;
    width: auto;
    text-align: center;
    border-radius: 0;
	border-radius: 0 0 10px 10px;
}

em a {
color: #333333 !important;
}

.footer-widget-1.grid.one-half {
    width: 60%;
}

.footer-widget-2.grid.one-half {
	width: 30%;
}

@media only screen and (max-width: 769px) {
	.insurance-category .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
		margin: 0 auto;
		width: auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		padding: 0 20px;
	}
	.isotype-block-capbox.cap_box.box-cat {
		width: 100%;
		margin: 0 0 30px;
		box-shadow: 0 7px 16px -11px rgba(0, 25, 50, 0.7);
		border-radius: 10px !important;
	}
	.insurance-category h2 {
		font-size: 1.3em;
	}
}