@charset "UTF-8";
@charset "UTF-8";
div.yyi-rinker-contents {
    margin: 2em 0;
    padding: 0;
    border: solid 1px #dbdbdb;
    background-color: #fff;
    box-shadow: 2px 3px 8px -5px rgba(0,0,0,.25);
    position: relative;
    overflow: visible;
}
div.yyi-rinker-contents a {
    border: none;
}

div.yyi-rinker-contents div.yyi-rinker-box{
    display: flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    box-sizing: border-box;
    padding: 12px;
}

div.yyi-rinker-contents div.yyi-rinker-image {
    padding: 0;
    display: flex;
    vertical-align: middle;
    justify-content: center;
    align-items: center;
}

.yyi-rinker-img-s .yyi-rinker-image {
    width: 75px;
    min-width: 75px;
}

.yyi-rinker-img-m .yyi-rinker-image {
    width: 175px;
    min-width: 175px;
}

.yyi-rinker-img-l div.yyi-rinker-image{
    width: 200px;
    min-width: 200px;
}

.yyi-rinker-images {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin: 5px;
}

div.yyi-rinker-image img.yyi-rinker-main-img.hidden {
    display: none;
}

.yyi-rinker-images-arrow {
    cursor: pointer;
    position: absolute;
    top: 50%;
    display: block;
    margin-top: -11px;
    opacity: 0.6;
    width: 22px;
}

.yyi-rinker-images-arrow-left{
    left: -10px;
}
.yyi-rinker-images-arrow-right{
    right: -10px;
}

.yyi-rinker-images-arrow-left.hidden {
    display: none;
}

.yyi-rinker-images-arrow-right.hidden {
    display: none;
}

/* for IE widthに合わせる*/

div.yyi-rinker-contents.yyi-rinker-img-s div.yyi-rinker-info{
    width: calc(100% - 75px);
}

div.yyi-rinker-contents div.yyi-rinker-info{
    width: calc(100% - 175px);
}

div.yyi-rinker-contents.yyi-rinker-img-l div.yyi-rinker-info{
    width: calc(100% - 200px);
}

div.yyi-rinker-contents div.yyi-rinker-title a {
    color: #333;
    text-decoration: none;
}

div.yyi-rinker-contents div.yyi-rinker-title p{
    margin: 5px;
}

div.yyi-rinker-contents div.yyi-rinker-detail {
    font-size: 0.8em;
    color: #999;
    padding-left: 15px;
}

div.yyi-rinker-contents div.yyi-rinker-detail a {
   text-decoration: underline;
}

div.yyi-rinker-contents div.yyi-rinker-detail .price-box {
    color: #aaa;
}

div.yyi-rinker-contents div.yyi-rinker-detail .free-text {
    color: #aaa;
}

div.yyi-rinker-contents ul.yyi-rinker-links {
    border: none;
    list-style-type: none;
    display: inline-flex;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 10px auto;
    padding: 0;
    width: 100%;
}

div.yyi-rinker-contents ul.yyi-rinker-links li {
    content: '';
    position: static;
    margin: 2px 5px;
    padding: 0;
    border-radius: 2px;
    border: none;
    box-shadow: 0 6px 12px -5px rgba(0, 0, 0, .30);
    -ms-flex: 0 0 auto;
}

div.yyi-rinker-contents ul.yyi-rinker-links li:before {
    content: '';
    position: static;
}

div.yyi-rinker-contents ul.yyi-rinker-links li:hover {
    box-shadow: 0 5px 8px -5px rgba(0, 0, 0, .30);
}

div.yyi-rinker-contents ul.yyi-rinker-links li.amazonlink {
    background: #f6a306;
}

div.yyi-rinker-contents ul.yyi-rinker-links li a {
    position: relative;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    font-size: 0.9em;
    height: 30px;
    line-height: 30px;
    padding: 0 18px;
}

div.yyi-rinker-contents ul.yyi-rinker-links li a:hover {
    border: none;
    opacity: 0.7;
}

div.yyi-rinker-contents ul.yyi-rinker-links li a:before {
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: white;
    text-align: center;
    border: none;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.amazonlink {
    order: 20;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.amazonlink a:before{
    content: '';
}

div.yyi-rinker-contents ul.yyi-rinker-links li.amazonkindlelink {
    background: #666;
    order: 15;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.amazonkindlelink a:before{
    content: '';
}


div.yyi-rinker-contents ul.yyi-rinker-links li.rakutenlink {
    background: #cf4944;
    order: 30;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.rakutenlink a:before{
    content: '';
}

div.yyi-rinker-contents ul.yyi-rinker-links li.yahoolink {
    background: #51a7e8;
    order: 40;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.yahoolink a:before{
    content: '';
}

div.yyi-rinker-contents ul.yyi-rinker-links li.mercarilink {
    background-color: #ff0211;
    order: 50;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.mercarilink a:before{
    content: '';
}

div.yyi-rinker-contents ul.yyi-rinker-links li.freelink1 {
    background: #4072B3;
    order: 10;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.freelink2 {
    background: #4DC0B2;
    order: 50;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.freelink3 {
    background: #6f63ad;
    order: 15;
}

div.yyi-rinker-contents ul.yyi-rinker-links li.freelink4 {
    background: #63ad87;
    order: 55;
}

div.yyi-rinker-contents ul.yyi-rinker-links img,
div.yyi-rinker-contents div.yyi-rinker-title img,
div.yyi-rinker-contents div.yyi-rinker-image a + img{
    display: none;
}

div.yyi-rinker-detail .credit-box {
    font-size: 75%;
}

ul.yyi-rinker-links li::before {
    background-color: transparent;
}
@media all and (max-width: 420px) {
    .yyi-rinker-images {
        margin: auto;
    }
}

@media all and (max-width: 420px) and (min-width: 321px) {
    body div.yyi-rinker-contents ul.yyi-rinker-links li a {
        padding: 0 0 0 15px;
    }

    div.yyi-rinker-contents ul.yyi-rinker-links {
        -webkit-flex-flow: column;
        flex-direction: column;
    }

    .yyi-rinker-img-s .yyi-rinker-image {
        width: 75px;
        min-width: 75px;
    }

    .yyi-rinker-img-m .yyi-rinker-image {
        width: 125px;
        min-width: 125px;
    }

    .yyi-rinker-img-l div.yyi-rinker-image{
        width: 150px;
        min-width: 150px;
    }

    div.yyi-rinker-contents.yyi-rinker-img-s div.yyi-rinker-info{
        width: calc(100% - 75px);
    }

    div.yyi-rinker-contents div.yyi-rinker-info {
        width: calc(100% - 125px);
    }

    div.yyi-rinker-contents.yyi-rinker-img-l div.yyi-rinker-info{
        width: calc(100% - 150px);
    }
}

@media all and (max-width: 320px) {
    div.yyi-rinker-contents ul.yyi-rinker-links li a {
        padding: 0 0 0 7px;
    }

    div.yyi-rinker-contents ul.yyi-rinker-links {
        -webkit-flex-flow: column;
        flex-direction: column;
    }

    .yyi-rinker-img-s .yyi-rinker-image {
        width: 75px;
        min-width: 75px;
    }

    .yyi-rinker-img-m .yyi-rinker-image {
        width: 100px;
        min-width: 100px;
    }

    .yyi-rinker-img-l div.yyi-rinker-image{
        width: 125px;
        min-width: 125px;
    }

    div.yyi-rinker-contents.yyi-rinker-img-s div.yyi-rinker-info{
        width: calc(100% - 75px);
    }

    div.yyi-rinker-contents div.yyi-rinker-info {
        width: calc(100% - 100px);
    }

    div.yyi-rinker-contents.yyi-rinker-img-l div.yyi-rinker-info{
        width: calc(100% - 125px);
    }
}

body div.yyi-rinker-contents ul.yyi-rinker-links li {
    list-style: none;
}

body div.yyi-rinker-contents ul.yyi-rinker-links li:before {
    position: absolute;
}

div.yyi-rinker-contents p{
    padding: 0;
}

div.yyi-rinker-contents img{
    margin-bottom: 0;
}

/* for Gutengerg */

div.yyi_rinker-gutenberg input.rinkerg-richtext{
    width: 300px;
}


input.rinkerg-richtext {
    width: 70%;
}

/**
For count down
 */

div.yyi-rinker-contents div.yyi-rinker-detail .free-text .count-in{
    color: #333;
}

/**
For Gutenberg
 */
.editor-styles-wrapper div.yyi-rinker-contents .count-top p {
    margin-top: 0;
}

div.yyi-rinker-contents.yyi-rinker-design-tate  div.yyi-rinker-box{
    flex-direction: column;
}

div.yyi-rinker-contents.yyi-rinker-design-slim div.yyi-rinker-box .yyi-rinker-links {
    flex-direction: column;
}

div.yyi-rinker-contents.yyi-rinker-design-slim div.yyi-rinker-info {
    width: 100%;
}

div.yyi-rinker-contents.yyi-rinker-design-slim .yyi-rinker-title {
    text-align: center;
}

div.yyi-rinker-contents.yyi-rinker-design-slim .yyi-rinker-links {
    text-align: center;
}
div.yyi-rinker-contents.yyi-rinker-design-slim .yyi-rinker-image {

    margin: auto;
}

div.yyi-rinker-contents.yyi-rinker-design-slim div.yyi-rinker-info ul.yyi-rinker-links li {
    align-self: stretch;
}
div.yyi-rinker-contents.yyi-rinker-design-slim div.yyi-rinker-box div.yyi-rinker-info {
    padding: 0;
}
div.yyi-rinker-contents.yyi-rinker-design-slim div.yyi-rinker-box {
    flex-direction: column;
    padding: 14px 5px 0;
}

.yyi-rinker-design-slim div.yyi-rinker-box div.yyi-rinker-info {
    text-align: center;
}

.yyi-rinker-design-slim div.price-box span.price {
    display: block;
}

div.yyi-rinker-contents.yyi-rinker-design-slim div.yyi-rinker-info div.yyi-rinker-title a{
    font-size:16px;
}

div.yyi-rinker-contents.yyi-rinker-design-slim ul.yyi-rinker-links li.amazonkindlelink:before,  div.yyi-rinker-contents.yyi-rinker-design-slim ul.yyi-rinker-links li.amazonlink:before,  div.yyi-rinker-contents.yyi-rinker-design-slim ul.yyi-rinker-links li.rakutenlink:before,  div.yyi-rinker-contents.yyi-rinker-design-slim ul.yyi-rinker-links li.yahoolink:before {
    font-size:12px;
}

div.yyi-rinker-contents.yyi-rinker-design-slim ul.yyi-rinker-links li a {
    font-size: 13px;
}

/** ver1.9.2 以降追加 **/
.yyi-rinker-contents .yyi-rinker-info {
    padding-left: 10px;
}
.yyi-rinker-img-s .yyi-rinker-image .yyi-rinker-images img{
    max-height: 75px;
}
.yyi-rinker-img-m .yyi-rinker-image .yyi-rinker-images img{
    max-height: 175px;
}
.yyi-rinker-img-l .yyi-rinker-image .yyi-rinker-images img{
    max-height: 200px;
}
div.yyi-rinker-contents div.yyi-rinker-image {
    flex-direction: column;
    align-items: center;
}
div.yyi-rinker-contents ul.yyi-rinker-thumbnails {
    display: flex;
    flex-direction: row;
    flex-wrap : wrap;
    list-style: none;
    border:none;
    padding: 0;
    margin: 5px 0;
}
div.yyi-rinker-contents ul.yyi-rinker-thumbnails li{
    cursor: pointer;
    height: 32px;
    text-align: center;
    vertical-align: middle;
    width: 32px;
    border:none;
    padding: 0;
    margin: 0;
    box-sizing: content-box;
}
div.yyi-rinker-contents ul.yyi-rinker-thumbnails li img {
    vertical-align: middle;
}

div.yyi-rinker-contents ul.yyi-rinker-thumbnails li {
    border: 1px solid #fff;
}
div.yyi-rinker-contents ul.yyi-rinker-thumbnails li.thumb-active {
    border: 1px solid #eee;
}

/* ここから　mini */
div.yyi-rinker-contents.yyi-rinker-design-mini {
    border: none;
    box-shadow: none;
    background-color: transparent;
}

/* ボタン非表示 */
.yyi-rinker-design-mini div.yyi-rinker-info ul.yyi-rinker-links,
.yyi-rinker-design-mini div.yyi-rinker-info .brand,
.yyi-rinker-design-mini div.yyi-rinker-info .price-box {
    display: none;
}

div.yyi-rinker-contents.yyi-rinker-design-mini .credit-box{
    text-align: right;
}

div.yyi-rinker-contents.yyi-rinker-design-mini div.yyi-rinker-info {
    width:100%;
}
.yyi-rinker-design-mini div.yyi-rinker-info div.yyi-rinker-title {
    line-height: 1.2;
    min-height: 2.4em;
    margin-bottom: 0;
}
.yyi-rinker-design-mini div.yyi-rinker-info div.yyi-rinker-title a {
    font-size: 12px;
    text-decoration: none;
    text-decoration: underline;
}
div.yyi-rinker-contents.yyi-rinker-design-mini {
    position: relative;
    max-width: 100%;
    border: none;
    border-radius: 12px;
    box-shadow: 0 1px 6px rgb(0 0 0 / 12%);
    background-color: #fff;
}

div.yyi-rinker-contents.yyi-rinker-design-mini div.yyi-rinker-box {
    border: none;
}

.yyi-rinker-design-mini div.yyi-rinker-image {
    width: 60px;
    min-width: 60px;

}
.yyi-rinker-design-mini div.yyi-rinker-image img{
    max-height: 3.6em;
}
.yyi-rinker-design-mini div.yyi-rinker-detail div.credit-box {
    font-size: 10px;
}
.yyi-rinker-design-mini div.yyi-rinker-detail div.brand,
.yyi-rinker-design-mini div.yyi-rinker-detail div.price-box {
    font-size: 10px;
}
.yyi-rinker-design-mini div.yyi-rinker-info div.yyi-rinker-detail {
    padding: 0;
}
.yyi-rinker-design-mini div.yyi-rinker-detail div:not(:last-child) {
    padding-bottom: 0;
}
.yyi-rinker-design-mini div.yyi-rinker-box div.yyi-rinker-image a {
    margin-bottom: 16px;
}
@media (min-width: 768px){
    div.yyi-rinker-contents.yyi-rinker-design-mini div.yyi-rinker-box {
        padding: 12px;
    }
    .yyi-rinker-design-mini div.yyi-rinker-box div.yyi-rinker-info {
        justify-content: center;
        padding-left: 24px;
    }
}
@media (max-width: 767px){
    div.yyi-rinker-contents.yyi-rinker-design-mini {
        max-width:100%;
    }
    div.yyi-rinker-contents.yyi-rinker-design-mini div.yyi-rinker-box {
        flex-direction: row;
        padding: 12px;
    }
    .yyi-rinker-design-mini div.yyi-rinker-box div.yyi-rinker-info {
        justify-content: center;
        margin-bottom: 16px;
        padding-left: 16px;
        text-align: left;
    }
}

div.yyi-rinker-contents .yyi-rinker-attention {
    display: inline;
    line-height: 30px;
    position: absolute;
    top: -10px;
    left: -9px;
    min-width: 60px;
    padding: 0;
    height: 30px;
    text-align: center;
    font-weight: 600;
    color: #ffffff;
    background: #fea724;
    z-index: 10;
}
div.yyi-rinker-contents .yyi-rinker-attention span{
    padding: 0 15px;
}
.yyi-rinker-attention-before, .yyi-rinker-attention-after {
    display: inline;
    position: absolute;
    content: '';
}

.yyi-rinker-attention-before {
    bottom: -8px;
    left: 0.1px;
    width: 0;
    height: 0;
    border-top: 9px solid;
    border-top-color: inherit;
    border-left: 9px solid transparent;
    z-index: 1;
}

.yyi-rinker-attention-after {
    top: 0;
    right: -14.5px;
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 15px solid;
    border-left-color: inherit;
}

div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_circle{
    display: flex;
    position: absolute;
    top: -20px;
    left: -20px;
    width: 60px;
    height: 60px;
    min-width: auto;
    min-height: auto;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    color: #fff;
    background: #fea724;
    font-weight: 600;
    font-size: 17px;
}

div.yyi-rinker-contents.yyi-rinker-design-mini .yyi-rinker-attention.attention_desing_circle{
    top: -14px;
    left: -14px;
    width: 36px;
    height: 36px;
    font-size: 12px;
}

div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_circle{
}

div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_circle span {
    padding: 0;
}

div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_circle .yyi-rinker-attention-after,
div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_circle .yyi-rinker-attention-before{
    display: none;
}

div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_right_ribbon {
    width: 89px;
    height: 91px;
    position: absolute;
    top: -1px;
    right: -1px;
    left: auto;
    overflow: hidden;
}

div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_right_ribbon span {
    display: inline-block;
    width: 146px;
    position: absolute;
    padding: 4px 0;
    left: -13px;
    top: 12px;
    text-align: center;
    font-size: 12px;
    line-height: 24px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

div.yyi-rinker-contents .yyi-rinker-attention.attention_desing_right_ribbon {
    background: none;
}
.yyi-rinker-attention.attention_desing_right_ribbon .yyi-rinker-attention-after,
.yyi-rinker-attention.attention_desing_right_ribbon .yyi-rinker-attention-before{
    display:none;
}

div.yyi-rinker-use-right_ribbon div.yyi-rinker-title {
    margin-right: 2rem;
}

/*
 Theme Name: SANGO Child
 Theme URI: https://saruwakakun.design
 Author: SARUWAKA
 Author URI: https://saruwakakun.com
 Template: sango-theme
*/
/*SANGOの子テーマ用CSS*/


/* 共通設定 */

body {
	position: relative;
}

/* パンくずリスト非表示 */

.page .breadcrumb,
.breadcrumb {
    display: none;
}

/* ―――――――――――
追従ボタン
―――――――――――  */

.single-studio .studio_bottom_tags {
    padding-bottom: 50px; /* ボタンの高さ＋アルファの余白 */
}

.fixed-content {
 position: static; /* 重要 */
 position: -webkit-sticky; /* 古いSafari用 */
 align-items: center;
 background-color: #5caa65;
 font-size: 1.6em;
 line-height: 1.3;
 text-decoration: none;
 letter-spacing: .15em;
 padding: .8em 1em;
 margin: 15px auto;
 border-radius: 8px;
 cursor: pointer;
 box-shadow: 0 2px 3px rgba(0, 0, 0, .2), 0 2px 3px -2px rgba(0, 0, 0, .15);
 -webkit-tap-highlight-color: transparent;
 width: 74%;
 max-width: 840px;
 left: 48.3%;
 transform: translateX(-50%);
 z-index:999; /* 重要 */
 opacity: 0; /* 初期値透明 */
 transition: .3s ease-out; /* スムーズに表示 */
}

.fixed-content a {
 text-align: center;
 display: block;
 color: #fff;
}

/* ブレイクポイント */
@media screen and (max-width: 767px) {
.fixed-content {
	position: -webkit-sticky; /* iOS用 */
 	width: 95%;
	line-height: 1.5;
	padding: .5em .3em;
 	bottom: 20px;
 	left: 50%;
}
.fixed-content a {
	font-size: .8em;	
	}
}

/* 非表示用 */
.hidden {
    animation: fade .2s ease-in-out forwards;
    pointer-events:none;/* 重要 */
}

@keyframes fade {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.visible {
    animation: fadeOut .2s ease-in-out forwards;
    pointer-events:all;/* 重要 */
}

@keyframes fadeOut {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}


/* クラス装飾 */

.center {
	text-align: center;
}

.cited {
	font-size : 9px;
	text-align : right;
	position: relative;
	bottom: 0;
}

.wp-container-core-column-is-layout-86a5d6f3 > * + * {
    margin-block-start: 1.5rem;
}

/* ―――――――――――
凡庸
―――――――――――  */

/* ボタン */
.btn_g {
    display: inline-block;
    background-color: #5caa65;
    color: #fff;
    font-size: 1.6em;
    line-height: 1.3;
    text-decoration: none;
    letter-spacing: .15em;
    padding: .8em 1em;
    border-radius: 8px;
    cursor: pointer;
    box-shadow: 0 2px 3px rgba(0, 0, 0, .2), 0 2px 3px -2px rgba(0, 0, 0, .15);
    -webkit-tap-highlight-color: transparent;
    transition: .3s ease-out;
    width: 85%;
    margin-bottom: 40px;
}

/* ブレイクポイント */
@media screen and (max-width: 767px) {
	.btn_g {
		font-size: 1.1em;
		line-height: 1.5;
		padding: 1em .3em;
		width: 100%;
	}
}

/* 2つ横並びボタン（追従などに） */
.btn-wrap {
 display: flex;
 justify-content:center;
 gap: 10px;
}
.btn-wrap a {
  width:140px;
 background: #1466b3;
 color: #fff;
  display:flex;
  align-items:center;
  justify-content:center;
 font-weight: bold;
 text-align: center;
 padding: 10px 10px;
  font-size:11px;
}
.btn-wrap a:nth-child(2){
  background:#041b68;
}


/* ―――――――――――
テーブル
―――――――――――  */

/* 角丸調整 */
table tr:first-child td:last-child {
	border-top-right-radius: calc(var(--sgb--custom--box-radius, 6)* 1px);
	border-top: 0 !important;
}

table tr:last-child td:last-child {
	border-bottom-right-radius: calc(var(--sgb--custom--box-radius, 6) * 1px);
	border-bottom: 0 !important;
}

.sng-inline-btn {
	font-size: 12px;
}

.scroll-hint-icon-wrap {
	z-index: 10;
}

table {
	border-collapse: separate;
	border-spacing: 0;
	border-radius: calc(var(--sgb--custom--box-radius)*1px);
}

/* trとtdの始めの行列 */
table tr td:first-child {
    padding: 7px;
    border-right: var(--sgb-table-border-width, 2px) solid var(--sgb-main-color);
    border-bottom: var(--sgb-table-border-width, 2px) solid var(--sgb-main-color);
    background-color: #f8f9fa;
    text-align: center;
    font-weight: 700;
    white-space: nowrap;
    background-color: #f8f9fa;
    color: #414040;
}

/* ―――――――――――
続きを読む
―――――――――――  */
.grad-wrap {
	text-align: center;
}

.grad-btn {
    position: relative;
    display: inline-block;
    padding: 0.25em 0.5em;
    text-decoration: none;
    color: #FFF;
    background: #9f9f9f;
    border-bottom: solid 2px #b7b7b7;
    border-radius: 4px;
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
    font-weight: bold;
	width: 280px;
}

.grad-btn:active {
    border-bottom: solid 2px #8d8d8d;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}

.grad-btn:hover {
  opacity: 60%;
}

.grad-btn::before {
  content: "続きを読む"
}

.grad-item {
  position: relative;
  overflow: hidden;
  height: 80px; /*隠した状態の高さ*/
}

.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50px; /*グラデーションで隠す高さ*/
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  content: "";
}

.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}

.grad-trigger:checked ~ .grad-btn::before {
  content: "閉じる" /*チェックされていたら、文言を変更する*/
}

.grad-trigger:checked ~ .grad-item {
  height: auto; /*チェックされていたら、高さを戻す*/
}

.grad-trigger:checked ~ .grad-item::before {
  display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}
	
/* ―――――――――――
 フッター
―――――――――――  */
/* ▼ フッター ▼ */
.container .footer_cus {
    background-color: #f7f7f7;
    padding: 40px 0 0;
    color: #333;
}

.footer_cus_inner {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
	align-items: flex-end;
    flex-wrap: wrap;
	background-color: #f7f7f7;
}

.footer_cus_col {
    width: 30%;
    box-sizing: border-box;
    margin-bottom: 30px;
}

.logo_group {
    text-align: center;
    margin-bottom: 20px;
}

.logo_img {
    width: 64px;
    height: auto;
    display: block;
    margin: 0 auto 10px;
}

.tagline {
    font-size: 13px;
    font-weight: 500;
    color: #666;
    margin: 0;
}

.btn_wrap {
    text-align: center;
}

.contact_btn {
    display: inline-block;
    background-color: #203a45;
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    font-weight: bold;
    padding: 12px 25px;
    border-radius: 50px;
    box-shadow: 0 3px 6px rgba(0,0,0,0.15);
    transition: opacity 0.3s;
}

.contact_btn:hover {
    opacity: 0.8;
    color: #fff;
}

.col_title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    border-bottom: 2px solid #ddd;
    padding-bottom: 5px;
}

.footer_cus_list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer_cus_list li {
    margin-bottom: 10px;
}

.footer_cus_list li a {
    color: #333;
    text-decoration: none;
    font-size: 14px;
}

.footer_cus_list li a:hover {
    text-decoration: underline;
    color: #203a45;
}

.copyright_wrap {
    background-color: var(--sgb-pastel-color, #eee);
    padding: 10px;
    text-align: center;
}

.footer_cus #copyright {
    margin: 0;
    padding: 0;
    font-size: 12px;
}

@media only screen and (max-width: 768px) {
    .footer_cus_inner {
        display: block;
    }
    .footer_cus_col {
        width: 100%;
        text-align: center;
        padding: 0 10px;
    }
    .col_title {
        display: inline-block;
        margin-top: 10px;
    }
}

/* ―――――――――――
 消去系
―――――――――――  */
/* 1. お問い合わせフォームを包む枠自体の余白を消す */
.contact-form-container {
    width: 100%;
    margin: 0 auto;
    line-height: 0; /* 下に生まれる微細な隙間を消す */
}

/* 2. Googleフォームの下に続く「空のp」や「テーマのフッター」を消去 */
/* お問い合わせページ、運営者情報ページなど特定のページだけで効かせます */
.page-id-623 .entry-content > p:last-child,
.page-id-623 .article-footer,
.page-id-623 #comments {
    display: none !important;
}

/* 3. フォーム自体の高さを「中身ギリギリ」に攻める */
/* heightの数値を、送信ボタンが見える限界まで小さくしてください */
.contact-form-container iframe {
        height: 1150px !important; /* PC用：送信ボタンの下が少し切れるくらいが綺麗です */
}

@media screen and (max-width: 768px) {
    .contact-form-container iframe {
        height: 1450px !important; /* スマホ用：実機で見て調整してください */
    }
}


/* =========================================
   メタ情報ページ用CSS
========================================= */

/* メタ情報ページ共通スタイル */
.meta-page-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px 40px;
    color: #333;
    line-height: 1.8;
	font-family: inherit;
}

/* ヘッダー・見出し */
/* WP標準の記事タイトル(H1)へのデザイン適用 */
h1.typesquare_option {
    text-align: center !important;
    font-size: 26px !important;
    margin-top: 20px;
    position: relative;
    padding: 15px;
    letter-spacing: 0.05em;
    font-weight: bold;
    border: none !important; /* テーマのデフォルト線を消す */
}

/* タイトル下の装飾線 */
h1.typesquare_option::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 240px;
    height: 2px;
    background-color: #F59F9F;
}

/* H2の見出しデザイン（H1に合わせて中央寄せ＋下線） */
.meta-page-container h2 {
    text-align: center;
    font-size: 20px;
    margin: 60px 0 30px;
    padding-bottom: 12px !important;
    position: relative;
    border: none !important; /* 以前の左線を消す */
    background: none;
}

.meta-page-container h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 2px;
    background-color: var(--wp--preset--color--sango-main);
}

/* テーブルのスタイル */

.meta-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 40px;
}

.meta-table th, .meta-table td {
    padding: 20px;
    text-align: left;
}

.meta-table th {
    width: 30%;
    background-color: #fcfcfc;
    font-weight: bold;
}

@media screen and (max-width: 600px) {
    .meta-table th, .meta-table td {
        display: block;
        width: 100%;
    }
	.meta-table th{
	border-right: none;
	}
}

/* リストスタイル */

.meta-table .meta-list {
    list-style: none; /* デフォルトの「・」を消す */
    padding: 0;
    margin: 0;
}

.meta-content  .meta-list {
    list-style: none; /* デフォルトの「・」を消す */
    padding: 0;
    margin: 0;
	background: #fdfbfb;
}

.meta-list li {
    position: relative;
    padding-left: 1.5em; /* アイコン分の余白 */
    margin-bottom: 0.5em;
}

/* シェブロンマーク（＞）の作成 */
.meta-list li::before {
    content: '';
    position: absolute;
    left: 0.2em;
    top: 0.9em; /* 位置の微調整 */
    width: 6px;   /* マークの幅 */
    height: 6px;  /* マークの高さ */
    border-top: 2px solid #50b1a0;  /* 指定のグリーン系カラー */
    border-right: 2px solid #50b1a0; /* 指定のグリーン系カラー */
    transform: rotate(45deg); /* 45度回転させて「＞」にする */
}

/* お問い合わせページの埋め込みフォームを整える */
.page-id-623 .entry-content iframe {
    width: 100% !important;
    max-width: 100%;
    margin: 0 auto;
    display: block;
    border: none; /* Googleフォームの境界線を消す */
}

/* 「meta-page-container」の枠組みを使う場合 */
.contact-form-wrapper {
    max-width: 800px;
    margin: 0 auto;
    background: #fff;
    padding: 20px;
}

/* 策定日・運営者情報のボックス調整 */
.meta-footer-info {
    display: inline-block; /* 中身の幅に合わせる */
    text-align: left;      /* テキストは左寄せ */
}

.meta-footer-info-wrapper {
    text-align: right;     /* ボックス自体を右に寄せる */
    margin-top: 40px;      /* 上との余白 */
    font-size: 0.9em;
    color: #666;
}

.meta-footer-info p {
    margin: 0;
}/*404*/