@charset "UTF-8";
/*******************************************************************************
	サイト名：
	作成会社：Fellow System
--------------------------------------------------------------------------------
 No.│   日付   │区分│						内  容
━━┿━━━━━┿━━┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 001│2018.01│新規│[V1.00] 山本
*******************************************************************************/

/*******************************************************************************
	デフォルトセッティング
--------------------------------------------------------------------------------
	適応：全部
*******************************************************************************/
body {
    font-family: "ヒラギノ角ゴ Pro W3", "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}

.display_pc, #catalog .show_english .display_pc, #topics .show_english .display_pc, #inquiry .show_english .display_pc {
    display: none;
}

.tdf1 {
    font-size: 2.5vw;
}

/*******************************************************************************
	モバイル共通部
--------------------------------------------------------------------------------
	適応：全部
*******************************************************************************/
/* ヘッダー */
#head {
    height: 132px;
    /* padding-right: 72px; */
}

.header-title {
    float: left;
    padding-top: 0;
    padding-bottom: 0;
}

.header__message {
    display: none;
}

.header--logo {
    /* width: 163px; */
    object-fit: cover;
    object-position: left center;
}

.header--nav {
    width: 100%;
    margin-top: 8px;
    margin-right: 56px;

    /* display: flex; */
    align-items: center;
}

.header--nav__up {
    margin-top: 0;
    /* margin-bottom: 18px; */
}

.header--nav__bottom {
    margin-top: 0;
    margin-left: 20px;
}

/* div#head h1 img {
    width: 163px;
    height: 58px;

    object-fit: cover;
    object-position: left center;
} */
.header--nav__link__top {
    display: inline-flex;
    color: #393939;
    font-weight: 500;
    font-size: 18px;
    align-items: center;
    /* font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Swis, Arial, sans-serif; */
}

.show_english {
    /* height: 18px;
    margin: 21px 90px 0 0;
    font-size: 9px; */
}

/* .show_english a {
    display: block;
    width: 90px;
    padding-left: 35px;
    border: 1px solid #707070;
    border-radius: 13px;
    box-sizing: border-box;
    background-image: url(../image/en-logo.png);
    background-position: 12px center;
    background-repeat: no-repeat;
    background-color: #67a4f5;
    color: #ffffff;
    text-decoration: none !important;
} */

/* .show_english:hover {
    opacity: .8;
} */

.header_message_flex {
    margin-bottom: 16px;
}

.navToggle {
    display: block;

    /* position: absolute; */
    position: fixed;

    /* top: 32px; */
    top: 74px;
    right: 20px;
    bottom: 30px;
    z-index: 3;
    width: 35px;
    height: 23px;
    text-align: center;
    cursor: pointer;
}

.navToggle span {
    display: block;
    position: absolute;
    width: 35px;
    height: 3px;
    border-radius: 20px;
    background-color: #999999;
    transition: 0.35s ease-in-out;
    -moz-transition: 0.35s ease-in-out;
    -webkit-transition: 0.35s ease-in-out;
}

.navToggle span:nth-child(1) {
    top: 0;
}

.navToggle span:nth-child(2) {
    top: 10px;
}

.navToggle span:nth-child(3) {
    top: 20px;
}

.navToggle.active span:nth-child(1) {
    top: 8.5px;
    transform: rotate(-35deg);
    -moz-transform: rotate(-35deg);
    -webkit-transform: rotate(-35deg);
}

.navToggle.active span:nth-child(2), .navToggle.active span:nth-child(3) {
    top: 8.5px;
    transform: rotate(35deg);
    -moz-transform: rotate(35deg);
    -webkit-transform: rotate(35deg);
}

nav.globalmenu {
    position: absolute;
    top: 132px;
    left: 0;
    z-index: 2;
    transform: translateY(-1200%);
    width: 100%;
    background: #333333;
    color: #000000;
    font-size: 30px;
    text-align: center;
    transition: all 0.6s;
}

nav.globalmenu ul {
    width: 100%;
    margin: 0 auto;
    padding: 16px 0;
}

nav.globalmenu ul:-webkit-scrollbar {
    display: none;
}

nav.globalmenu ul li {
    list-style-type: none;
    width: 100%;
    font-size: 1.1em;
}

nav.globalmenu ul li:last-child {
    padding-bottom: 0;
}

nav.globalmenu ul li a {
    display: block;
    padding: 8px 0;
    color: #ffffff;
    font-weight: bold;
    font-size: 16pt;
    letter-spacing: 3pt;
}

nav.globalmenu.active {
    transform: translateY(0%);
}

div#content.active, #foot.active {
    display: none;
}


@media screen and (max-width:851px) {
    .tombstone-linkstyle_right {
        position: fixed;
        right: 0;
        margin-top: 25%;
        margin-right: 0;
    }
}

@media screen and (max-width:851px) {
    .tombstone-linkstyle_left {
        position: fixed;
        right: 0;
        margin-top: 90%;
        margin-right: 45%;
    }
}

.sp {
    display: none;
}

@media screen and (max-width:444px) {
    .tombstone-linkstyle_right {
        position: fixed;
        right: 0;
        margin-top: 25%;
        margin-right: 0;
    }
}

@media screen and (max-width: 768px) {
    .header--nav {
        float: none;
    }

    .header_flex_menu {
        width: 100%;
        /* padding-right: 8px;
        padding-left: 8px; */
        column-gap: 24px;
    }

    .pc-headerlink {
        margin: 0;
        margin-right: auto;
    }

    .header--nav__link {
        margin: 0;
        font-size: initial;
    }

    .delimiter_border::before {
        display: none;
        font-size: 12px;
    }

    .show_english_position {
        margin-right: 0;
    }
}

@media screen and (max-width: 500px) {
    .header--nav__link {
        font-size: 12px;
    }

    .add-link {
        font-size: 10px;
    }
}

@media screen and (max-width: 425px) {
    .header_flex_menu {
        font-size: 11px;
        column-gap: 11px;
    }
}

/* サイドバー */
.list_link-banner {
    padding: 10px;
}

.list_link-banner img {
    display: block;
    width: 100%;
}

#side .display_mobile ul {
    list-style: none;
    margin-top: 25px;
}

#side .display_mobile ul li {
    max-width: 365px;
    width: 100%;
    margin: 0 auto 20px;
}

#side .display_mobile ul li.sp-banner-sm {
    display: flex;
    justify-content: center;
    column-gap: 16px;
}

#side .display_mobile ul li.sp-banner-sm a {
    width: 62px;
    height: 62px;
}

/* #side .display_mobile ul li:nth-child(-n+2) {
	max-width: 365px;
	width: 100%;
	height: 105px;
	margin-bottom: 20px;
} */
/* #side .display_mobile ul li:nth-child(3) {
	width: 62px;
	height: 62px;
} */

/* フッター */
div#foot {
    margin-top: 25px;
}

div#foot address {
    padding: 25px 0;
}

.footer-nav {
    padding: 16px;
}

div#foot ul li a {
    display: block;
    padding: 4px 0;
    font-size: 16px;
    word-break: break-word;
}

.key_visual strong {
    font-size: 2.25vw;
}

/* 青石メイン共通 */
.home_aoisi a span {
    display: inline-block;
    margin-left: 10px;
    vertical-align: middle;
}

.home_aoisi {
    margin-bottom: 30px;
}

.home_aoisi a {
    margin-right: 10px;
}

.aoisi_menu {
    margin-top: 10px;
}

.aoisi_menu h2 {
    font-size: 30px;
}

.aoisi_menu h2 span:nth-child(1) {
    color: #ffffff;
    font-size: 16px;
}

.aoisi_menu ul {
    margin-bottom: 20px;
}

.aoisi_menu dl {
    width: 216px;
    margin: 0 auto 20px;
    text-align: center;
}

.aoisi_menu dl dt {
    margin-right: 10px;
    padding: 12px 10px 11px;
    font-size: 16px;
}

.aoisi_menu dl dd {
    font-size: 30px;
}

@media screen and (max-width: 374px) {
    .header--nav__link__top {
        font-size: 14px;
    }

    /* .navToggle {
        top: 68px;
    } */
}

@media screen and (max-width: 480px) {
    .aoisi_menu ul {
        width: 320px;
    }

    #container #content #main .aoisi_menu ul li:nth-child(4) {
        border-left: none;
    }
}

@media screen and (max-width: 640px) {
    #head {
        height: 166px;
    }

    .header-title {
        float: none;
    }

    .header--nav {
        margin-right: 0;
    }

    nav.globalmenu {
        top: 166px;
    }

    .header--nav__text {
        max-width: initial;
    }
}

@media screen and (max-width: 600px) {
    .profile__user {
        display: flex;
        width: 100%;
    }

    .page-heading {
        padding: 0 8px;
        text-align: center;
    }

    .long_h1_br {
        display: block;
    }
}

/*******************************************************************************
	ヘッダー改修 2022.1210 寺坂
--------------------------------------------------------------------------------
	適応：全部
*******************************************************************************/
.header_tombstone_img {
    height: 52px;
}

.header_logo_flex {
    display: block;
}

.header_tombstone_wrap {
    /* float: right; */
    display: flex;
    position: initial;
    justify-content: flex-end;
}

.header_logo_message {
    margin-left: initial;
    text-align: center;
}

.header--logo {
    width: 100% !important;
}

.header--nav {
    float: right;
}

.header_flex_menu {
    border: none;
}

@media screen and (max-width: 768px) {
    .introduction {
        display: none;
    }
}

@media screen and (max-width: 7680px) {
    .tombstone {
        margin-right: 100px;
    }
}

@media screen and (max-width: 640px) {
    .header--logo__image {
        max-width: 220px;
        margin-top: 10px;
        margin-bottom: 10px;
    }
}

/*******************************************************************************
	トップページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
.key_visual img {
    width: 100%;
    height: auto;
}

.key_visual strong {
    display: block;
    text-align: center;
}

.aoisi_link {
    margin-bottom: 16px;
}

.aoisi_link img {
    display: block;
    width: 97%;
    margin: 0 auto;
}

.visual-area img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.mobile-tel {
    display: block;
}

.mobile-tel img {
    width: 90%;
    max-width: 240px;
    margin: 0 auto;
    margin-top: 16px;
    border: 1px solid #999999;
}

.visual-area .aoisi_link.display_mobile {
    width: 90%;
    margin: 0 auto;
}

.visual-area form.display_mobile {
    width: fit-content;
    margin: 24px auto;
}

.visual-area .ink {
    width: 300px;
    height: 26px;
    height: 30px;
    margin: 0 auto;
    margin-right: 1em;
    border: 1px solid #999999;
    border-radius: 8px;
    color: #666666;
    font-weight: 500;
    font-size: 13px;
}

.visual-area .search {
    width: 80px;
    height: 30px;
    margin: 0 auto;
    border: 2px solid #162BB2;
    border-radius: 8px;
    background-color: #162BB2;
    color: #ffffff;
    font-weight: normal;
    font-size: 15px;
    text-align: center;
    letter-spacing: 0.2em;

    -webkit-appearance: none;
    appearance: none;
}

.visual-area .search:hover {
    opacity: 0.8;
}

div#content h2.h_title {
    font-size: 24px;
    text-align: center;
}

div#content h2.h_newtitle {
    text-align: center;
}

div#main div#guide {
    width: 90%;
    margin: 0 auto;
    padding: 10px;
    box-sizing: border-box;
}

.guide_search {
    display: none;
}

div#main div#guide div.tree h3 {
    margin: 0 auto 15px;
    text-align: center;
}

div#main div#guide div.tree h4 {
    margin-bottom: 10px;
    font-size: large;
}

div#main div#guide div.tree ul {
    margin-bottom: 10px;
    padding: 0 15px;
}

div#main div#guide div.tree ul:last-child {
    margin-bottom: 20px;
}

div.tree ul li {
    width: 50%;
    padding: 2px 0;
}

@media screen and (max-width: 577px) {
    div#main div#guide div.tree h4 {
        text-align: center;
    }

    div.tree ul li {
        width: 100%;
        text-align: center;
    }
}

@media screen and (max-width: 430px) {
    .visual-area form.display_mobile {
        margin: 24px auto 0;
    }

    .visual-area .ink {
        display: block;
        margin-right: 0;
    }

    .visual-area .search {
        display: block;
        width: 300px;
        margin-top: 16px;
        padding-left: 0.6em;
        letter-spacing: 1.2em;
    }
}

@media screen and (max-width: 300px) {
    div.tree ul li {
        font-size: 5vw;
    }
}

/*******************************************************************************
	商品一覧ページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
div#content div.list {
    width: 90%;
    margin: 0 auto;
}

div#content div.list h4 {
    margin-top: 10px;
    padding-left: 20px;
}

div#content div.list ul {
    width: 504px;
    margin: 0 auto 50px;
}

div#content div.list ul li {
    width: 240px;
    margin: 8px 6px;
}

div#content div.list ul li img.org {
    width: auto;
    height: 180px;
}

div#content div.list dd {
    width: 190px;
}

.pg_list {
    width: 90%;
    margin: 0 auto;
    padding: 0 0 35px;
    border-bottom: 3px double #333333;
}

.cminfo-list .cminfo-cell {
    height: 260px;
}

@media screen and (max-width: 577px) {
    div#content div.list ul li {
        float: none;
    }

    div#content div.list ul {
        width: 252px;
    }
}

/*******************************************************************************
	商品詳細ページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
#catalog #content div#side {
    grid-row: 3;
    -ms-grid-row: 3;
}

#catalog #content .fb-like {
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 16px 0;
    border-bottom: 3px double #333333;
    background-color: #ededed;
    grid-row: 2;
    -ms-grid-row: 2;
}

div#content div#detail, div#content div.product-detail-container {
    width: 90%;
    margin: 0 auto;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: #333333 solid 3px;
    border-bottom: 1px #cccccc solid;
}

#detail img, .product-detail-container img {
    width: 100%;
}

div#content div#detail table, div#content div.product-detail-container table {
    width: 100%;
    margin: 0 auto 30px;
}

div#content div#detail table tr, div#content div.product-detail-container table tr {
    display: block;
    padding: 8px 0;
    border-bottom: 1px #cccccc solid;
}

.product_title {
    min-width: 40px;
    width: 40px;
    padding-left: 8px;
    vertical-align: top;
    text-align: left;
}

.product_contents {
    width: 90%;
    padding: 0 8px 0 1em;
    text-align: left;
}

@media screen and (max-width: 367px) {
    .product_contents {
        width: 83%;
        text-align: left;
    }
}

/*******************************************************************************
	新商品案内ページ
--------------------------------------------------------------------------------
	適応：/calendar/tpl/new-items.tpl.php
*******************************************************************************/
.products-container {
    padding: 24px 30px;
}

/*******************************************************************************
	青石物語目次ページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
#aoishi_menu {
    width: 90%;
    margin: 0 auto;
    border-bottom: 3px double;
}

.aoisi_title {
    margin-bottom: 15px;
    text-align: center;
}

.aoisi_title img {
    margin: 0 auto 15px;
}

.aoisi_title img:nth-child(1) {
    width: 252px;
    height: 98px;

    object-fit: cover;
    object-position: left bottom;
}

.aoisi_description {
    font-size: 3.9vw;
}

#mokuji {
    width: 512px;
    margin: 0 auto;
}

.koumoku strong {
    display: inline-block;
    margin-bottom: 20px;
}

.koumoku strong a span {
    margin-left: 10px;
}

.koumoku strong a span img {
    margin-top: 7px;
}

.koumoku p {
    margin-bottom: 20px;
}

@media screen and (max-width: 512px) {
    .koumoku strong {
        width: 240px;
    }

    #mokuji {
        width: 90%;
    }
}

/*******************************************************************************
	青石物語本編ページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
.history_title {
    margin: 0 auto 20px;
    text-align: center;
}

.history_title dt, .history_title dd {
    display: inline-block;
    float: none;
    vertical-align: middle;
    letter-spacing: 2pt;
}

.history_title dt {
    margin-right: 10px;
    padding: 4px 8px;
    font-weight: normal;
    font-size: 16px;
}

.history_title dd {
    font-size: 30px;
}

.text-right {
    margin-bottom: 20px;
}

.text-right img {
    display: block;
    width: 90%;
    height: 200px;
    margin: 0 auto 20px;

    object-fit: cover;
    object-position: center center;
}

.text-right p {
    width: 90%;
    margin: 0 auto;
    text-align: justify;
}

.aoisi_history h3 {
    width: 90%;
    margin: 0 auto 15px;
}

.aoisi_history h4 {
    width: 90%;
    margin: 0 auto 15px;
}

.aoisi_map li {
    width: 90%;
    margin: 0 auto;
}

.aoisi_map li+li {
    margin-top: 15px;
}

.aoisi_map .map-note {
    display: inline-block;
    margin-top: 8px;
}

.aoisi_map li:nth-child(1) div {
    float: left;
    width: 200px;
    margin-right: 10px;
}

.aoisi_map li:nth-child(1) img {
    width: 100%;
}

.aoisi_map li:nth-child(1) p {
    width: 100%;
    font-size: 14px;
}


@media screen and (max-width: 420px) {
    .aoisi_map li:nth-child(1) div {
        float: none;
        margin: 0 auto 10px;
        ;
    }

    .aoisi_map li:nth-child(2) {
        width: 179px;
    }
}

.aoisi_history p {
    width: 90%;
    margin: 0 auto 20px;
    text-align: justify;
    ;
}

.page_top {
    width: 90%;
    margin: 16px auto;
}

.page_top a span {
    display: inline-block;
    margin-right: 10px;
    vertical-align: middle;
}

.common_gallery {
    width: 90%;
    margin: 0 auto;
}

.common_gallery img {
    display: block;
}

.common_gallery:nth-child(7) {
    /* width: 316px; */
}

.common_gallery:nth-child(7) li {
    width: 46%;
    margin-bottom: 1.5em;
    line-height: 1em;
}

.common_gallery:nth-child(7) li:nth-child(odd) {
    float: left;
}

.common_gallery:nth-child(7) li:nth-child(even) {
    float: right;
}

.common_gallery:nth-child(7) li:nth-child(2n) {
    /* margin: 0 0 3% 3%; */
}

.common_gallery:nth-child(7) img {
    width: 100%;
}

@media screen and (max-width: 350px) {
    .common_gallery:nth-child(7) li {
        margin-bottom: 10px;
    }

    .common_gallery:nth-child(7) li:nth-child(2n) {
        margin: 0 0 10px;
    }
}

.common_gallery:nth-child(11) li {
    float: left;
    width: 31.3%;
    margin-right: 3%;
}

.common_gallery:nth-child(11) li img {
    width: 100%;

    object-fit: cover;
}

.common_gallery:nth-child(11) li:last-child {
    margin-right: 0;
}

.common_gallery:nth-child(11) li:first-child img {
    width: 100%;
    height: 258px;
}

.common_gallery:nth-child(11) li:nth-child(2) img {
    width: 100%;
    height: 258px;
}

.common_gallery:nth-child(11) li:last-child img {
    height: 110px;
}

@media screen and (max-width: 500px) {
    .common_gallery:nth-child(11) li {
        width: 46%;
        margin: 0 auto;
    }

    .common_gallery:nth-child(11) li:nth-child(odd) {
        float: left;
    }

    .common_gallery:nth-child(11) li:nth-child(even) {
        float: right;
    }

    .common_gallery:nth-child(11) li:first-child img {
        margin: 0 auto;
    }

    .common_gallery:nth-child(11) li:last-child {
        width: 100%;
        margin: 16px auto;
    }

    .common_gallery:nth-child(11) li:last-child img {
        display: block;
        width: 46%;
        height: auto;
    }

    .common_gallery:nth-child(11) li:last-child img:nth-of-type(odd) {
        float: left;
    }

    .common_gallery:nth-child(11) li:last-child img:nth-of-type(even) {
        float: right;
    }

    .common_gallery:nth-child(11) li:last-child br {
        display: none;
    }

    .common_gallery:nth-child(11) li:last-child span {
        display: block;
        clear: both;
        margin-top: 8px;
    }
}

.common_gallery:nth-child(13) li {
    width: 46%;
    margin-bottom: 16px;
    line-height: 1em;
}

.common_gallery:nth-child(13) li:nth-of-type(odd) {
    float: left;
}

.common_gallery:nth-child(13) li:nth-of-type(even) {
    float: right;
}

.common_gallery:nth-child(13) li:nth-child(2n+1) {
    margin-right: 3%;
    margin-bottom: 3%;
}

.common_gallery:nth-child(13) li img {
    width: 100%;
}

/* @media screen and (max-width: 450px) {
	.common_gallery:nth-child(13) li {
		float: none;
		width: 48.5%;
		margin: 0 auto 5%;
	}

	.common_gallery:nth-child(13) li:nth-child(2n+1) {
		margin: 0 auto 5%;
	}
} */

.common_gallery:nth-child(16) li {
    float: left;
    width: 31.3%;
    margin-bottom: 16px;
    margin-left: 3%;
}

/* .common_gallery:nth-child(16) li:first-child , .common_gallery:nth-child(16) li:nth-child(4) {
	margin-left: 0px;
} */
.common_gallery:nth-child(16) li:nth-child(3n+1) {
    margin-left: 0;
}

.common_gallery:nth-child(16) li img {
    width: 100%;
    height: 101px;
    margin-bottom: 10px;

    object-fit: contain;
    object-position: top;
}

@media screen and (max-width: 530px) {
    .common_gallery:nth-child(16) li {
        width: 46%;
        text-align: center;
    }

    .common_gallery:nth-child(16) li:nth-of-type(odd) {
        float: left;
    }

    .common_gallery:nth-child(16) li:nth-of-type(even) {
        float: right;
    }
}

.common_gallery:nth-child(20) li {
    margin-bottom: 24px;
    line-height: 1em;
}

.common_gallery:nth-child(20) li:nth-child(1) {
    width: 100%;
}

.common_gallery:nth-child(20) li:nth-child(2) {
    float: left;
    width: 70%;
}

.common_gallery:nth-child(20) li:nth-child(3) {
    float: right;
    width: 20%;
}

.common_gallery:nth-child(20) li img {
    display: block;
    width: 100%;
}

/* @media screen and (max-width: 450px) {
	.common_gallery:nth-child(20) li:nth-child(2) {
		float: none;
		width: 247px;
		margin: 0 auto 10px;
	}

	.common_gallery:nth-child(20) li:nth-child(3) {
		float: none;
		width: 86px;
		margin: 0 auto;
	}
} */

.common_gallery:nth-child(22) {
    margin: 0 auto;
}

.common_gallery:nth-child(22) li {
    width: 46%;
}

.common_gallery:nth-child(22) li:nth-of-type(odd) {
    float: left;
}

.common_gallery:nth-child(22) li:nth-of-type(even) {
    float: right;
}

.common_gallery:nth-child(22) li img {
    width: 100%;
    height: auto;
}

/*
@media screen and (max-width: 560px) {
	.common_gallery:nth-child(22)  {
		width: 247px;
		margin: 0 auto;
	}
	.common_gallery:nth-child(22) li {
		float: none;
		margin-bottom: 10px;
	}
} */

.common_gallery:nth-child(26) {
    margin-bottom: 0;
}

.common_gallery:nth-child(26) li:nth-child(1) {
    float: left;
    width: 65%;
}

.common_gallery:nth-child(26) li:nth-child(2) {
    float: right;
    width: 32%;
    margin-bottom: 0;
}

.common_gallery:nth-child(26) li img {
    height: auto;
}

.common_gallery:nth-child(26) li:nth-child(1) img {
    width: 100%;
}

.common_gallery:nth-child(26) li:nth-child(2) img {
    width: 100%;
    margin-bottom: 5px;
}

.common_gallery:nth-child(26) li:nth-child(2) p {
    margin-bottom: 0;
}

@media screen and (max-width: 460px) {
    .common_gallery:nth-child(26) li {
        float: none;
    }

    .common_gallery:nth-child(26) li:nth-child(1) {
        max-width: 308px;
        margin: 0 auto 20px;
    }

    .common_gallery:nth-child(26) li:nth-child(1) img {
        max-width: 308px;
    }

    /* .common_gallery:nth-child(26) li:nth-child(2) {
		width: 200px;
		margin: 0 auto;
		margin-bottom: 0;
	} */
}

.person_history {
    display: block;
}

.common_gallery:nth-child(34) li, .common_gallery:nth-child(35) li {
    width: 46%;
}

.common_gallery:nth-child(34) li:nth-child(odd), .common_gallery:nth-child(35) li:nth-child(odd) {
    float: left;
}

.common_gallery:nth-child(34) li:nth-child(even), .common_gallery:nth-child(35) li:nth-child(even) {
    float: right;
}

.common_gallery:nth-child(34) li p, .common_gallery:nth-child(35) li p {
    width: 100%;
    margin: 0;
}

/*
@media screen and (max-width: 500px) {
	.common_gallery:nth-child(34) , .common_gallery:nth-child(35) {
		width: 47%;
	}
	.common_gallery:nth-child(34) li , .common_gallery:nth-child(35) li {
		float: none;
		width: 100%;
		margin-bottom: 10px;
	}
} */

.common_gallery:nth-child(39) li {
    width: 46%;
    margin-bottom: 16px;
}

.common_gallery:nth-child(39) li:nth-child(odd) {
    float: left;
}

.common_gallery:nth-child(39) li:nth-child(even) {
    float: right;
}

.common_gallery:nth-child(39) li img {
    display: block;
    width: 100%;
    height: 130px;
    margin: 0 auto;

    object-fit: contain;
}

.common_gallery:nth-child(40) {
    max-width: 373px;
    width: 90%;
}

.common_gallery:nth-child(40) li img {
    max-width: 373px;
    width: 100%;
}

.kakou_case {
    display: block;
    width: 90%;
    margin: 0 auto 10px;
}

.founding_gallery {
    width: 90%;
    margin: 10px auto 0;
}

.founding_gallery li {
    width: 46%;
    margin-bottom: 16px;
}

.founding_gallery li:nth-child(odd) {
    float: left;
}

.founding_gallery li:nth-child(even) {
    float: right;
}

.founding_gallery li img {
    display: block;
    width: 100%;
    height: auto;
}

/* @media screen and (max-width: 420px) {
	.founding_gallery {
		width: 189px;
	}
	.founding_gallery li {
		float: none;
		margin-bottom: 10px;
	}
	.founding_gallery li:nth-child(2n+1) {
		margin-right: 0;
		margin-bottom: 10px;
	}
} */



.company_detail {
    width: 90%;
    margin: 0 auto;
}

.full_story {
    width: 90%;
    margin: 0 auto;
}

.full_story p {
    margin: 0;
}

.activity_content {
    width: 90%;
}


@media screen and (max-width: 584px) {
    .full_story dd {
        width: 80%;
    }

    .activity_content {
        text-indent: 16px;
    }
}

.aoisi_history address {
    width: 90%;
    margin: 0 auto 40px;
    font-size: 3.5vw;
}

.aoisi_history address p {
    margin: 0;
}

/*******************************************************************************
	青石施工実績ページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
.case_list {
    width: 90%;
    margin: 0 auto;
}

.case_list img {
    display: block;
    width: 100%;
    margin: 0 auto;
}

.back-top a span img {
    display: inline-block;
    width: 9px;
    margin: 8px 10px 0 0;
}

/*******************************************************************************
	青石Q&Aページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
#main_qa ul {
    margin: 0 auto;
}

#main_qa h3 dl {
    width: 200px;
    margin: 0 auto 20px;
}

#main_qa h3 dl dt {
    margin-right: 10px;
    padding: 12px 10px 11px;
    background-color: #000000;
    color: #ffffff;
    font-size: 16px;
}

#main_qa h3 dl dd {
    color: #267486;
    font-size: 30px;
}

.product_iyoseki {
    width: 95%;
    margin: 0 auto 35px;
}

.product_iyoseki .address {
    padding-top: 35px;
    font-size: 2.5vw;
}

.reference_image img {
    display: block;
    width: 100%;
}

.reference_image span {
    font-size: 2.5vw;
}

/*******************************************************************************
	お問い合わせページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
#inquiry #main {
    text-align: center;
}

.notes {
    font-size: 3.5vw;
}

table#inquiry_form th {
    display: block;
    margin-bottom: 10px;
    text-align: left;
}

table#inquiry_form td {
    display: block;
    margin-bottom: 10px;
}

table#inquiry_form {
    width: 90%;
    margin: 0 auto 40px;
    text-align: left;
}

table#inquiry_form .confirm {
    text-align: center;
}

table#inquiry_form .confirm img {
    width: 35%;
    margin-top: 10px;
}

table#inquiry_form input, #inquiry_form select {
    height: 40px;
}

#inquiry_form textarea {
    height: 232px;
}

table#inquiry_form input, #inquiry_form textarea, #inquiry_form select {
    width: 100%;
    border: 1px solid;
    border-radius: 10px;
    font-size: 20px;
}

.check_notes {
    font-size: 3.5vw;
}

.confirm .notes {
    font-size: 5vw;
}

#inquiry_form select {
    padding: 0 0 0 33%;
    font-size: 3vw;
}

#inquiry div#content div#main form p input {
    width: 90%;
    padding: 20px 0;
    border: 3px solid #006666;
    background-color: #ffffff;
    color: #006666;

    -webkit-appearance: button;
    appearance: button;
}

#inquiry div#content div#main form p input:nth-child(3) {
    margin-bottom: 15px;
}

/*******************************************************************************
	いよせきリンク一覧ページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
.link_list h2 img {
    display: block;
    margin: 0 auto;
}

.link_list ul {
    width: 90%;
    margin: 0 auto;
}

.link_list ul li {
    width: 48.5%;
    margin-bottom: 5%;
    margin-left: 3%;
}

.link_list ul li img {
    width: 100%;
}

.link_list ul li:nth-child(2n+1) {
    margin-left: 0;
}

/*******************************************************************************
	いよせき倶楽部ページ
--------------------------------------------------------------------------------
	適応：メイン
*******************************************************************************/
.club_list {
    width: 90%;
    margin: 0 auto;
    padding: 0 8px 32px;
    border-bottom: 4px double #000000;
}

.club_list h2 img {
    display: block;
    margin: 0 auto 20px;
}

.club_list ul {
    width: 90%;
    margin: 0 auto 10px;
}

.club_list ul li {
    width: 48.5%;
    margin-bottom: 5%;
    margin-left: 3%;
}

.club_list ul li:nth-child(2n+1) {
    margin-left: 0;
}

.club_list ul li img {
    width: 100%;
    border: 1px solid #707070;
    box-sizing: border-box;
}

.club_list ul li span img {
    width: auto;
}

.pager_list {
    font-size: 20pt;
    letter-spacing: 2pt;
}

/*******************************************************************************
	カレンダー
--------------------------------------------------------------------------------
	適応：calendar/tpl/calendar-2019.tpl.php
*******************************************************************************/
.calendar-table-fudemoji {
    float: none !important;
    max-width: 600px;
    width: 80%;
    margin: 40px auto;
}

.calendar-table-fudemoji .calendar-month-subject {
    padding-right: 1em;
}

.calendar-table-fudemoji tbody td .smallfont {
    width: 58px;
    margin: 0 auto;
    text-align: center;
}

@media screen and (max-width: 600px) {
    .calendar-table-fudemoji tbody td .smallfont {
        width: 38px;
    }
}

@media screen and (max-width: 425px) {
    .header--nav {
        margin-right: 0;
    }

    .calendar-table-fudemoji {
        width: 90%;
    }

    .calendar-table-fudemoji tbody td .smallfont {
        width: 31px;
    }

    .benefit-annotation {
        padding-right: 16px;
        padding-left: 16px;
        text-indent: 0;
    }
}

/*******************************************************************************
	ログインページ
--------------------------------------------------------------------------------
	適応：/login/tpl/
*******************************************************************************/

/*******************************************************************************
	会員登録ページ
--------------------------------------------------------------------------------
	適応：/plus_menbercorp/tpl/
*******************************************************************************/
@media screen and (max-width: 500px) {
    .form_table th, .form_table td {
        display: block;
        width: 100%;
        margin-bottom: 12px;
    }

    .long_text_table_cell {
        max-width: 100%;
    }
}

@media screen and (max-width: 768px) {

    /* .form_table th {
        width: 100%;
    } */
    .button_box {
        display: inline-grid;
    }
}

@media screen and (max-width: 600px) {
    .recommended_box {
        background-image: none;
    }

    .form_button {
        width: 100%;
    }

    /* .input_plus_pass,
    .fa.password_icon {
        width: calc(100% - 42px);
    } */
    .recommended_heading {
        font-size: 18px;
    }

    .width_border_right {
        border-bottom: 1px solid;
    }

    .width_border_right:after {
        display: none;
    }

    .button_box {
        width: 100%;
    }

    .input_max {
        width: 100%;
    }

    .three_benefit, .red_arrow_message {
        font-size: 27px;
    }

    .recommended_box {
        padding: 21px 20px;
    }

    .form_padding {
        padding: 0;
    }

    .form_table {
        border-spacing: 0 32px;
    }

    .form_table th {
        /* width: auto; */
        margin-bottom: 12px;
    }

    .login_form_frame {
        border: none;
    }

    .works {
        width: 100%;
        font-size: 12px;
    }
}

@media screen and (max-width: 540px) {
    .ratio_br {
        display: none;
    }

    .ratios {
        width: 100%;
    }

    .parcent {
        text-align: right;
        flex: 100px;
    }
}

@media screen and (max-width: 700px) {
    #head {
        padding-right: 12px;
    }
}


@media screen and (max-width: 500px) {
    .header--nav__link {
        font-size: 14px;
    }

    .header--nav__link__top {
        font-size: 14px;
    }

    #head {
        height: 154px;
        padding-right: 12px;
    }

    nav.globalmenu {
        top: 180px;
    }

    /* .header--nav__link + .header--nav__link {
        margin-left: 16px;
    } */
    .navToggle {
        right: 15px;
    }
}

@media screen and (max-width: 375px) {
    .header--logo {
        display: block;
        width: calc(100% - 56px);
    }

    .common_gallery:nth-child(39) li img {
        height: 100px;
    }

    .header--nav__up {
        margin-top: 8px;
    }

    .width_border_right {
        font-size: 21px;
    }
}

@media screen and (max-width: 374px) {
    .header--nav__link {
        font-size: 12px;
    }

    .header--nav__link__top {
        font-size: 12px;
    }

    .show_english_position {
        margin-right: 10px;
    }
}