@charset "utf-8";


/* ==================================================================
	medical.css
	
=================================================================== */

/* =================================
   ■ 共通指定
================================== */
/* ◇ box
-------------------------------- */
.graybox {
    padding: 40px 30px;
    margin: 40px auto;
}
    .graybox p.text {
        margin-bottom: 0;
    }
    .graybox p.image {
        margin: auto;
        text-align: center;
    }
    .graybox .list li {
        background-color: #2D2853;
        border-radius: 4px;
        color: #fff;
        font-size: 1.8rem;
        padding: 17px 10px;
        width: 32%;
        max-width: 269px;
        margin: 20px auto 0;
        line-height: 1.2;
        display: flex;
        justify-content: center;
        align-items: center;
    }

.whitebox {
    border: 4px solid #F1F1F1;
    padding: 40px 60px;
    margin: 20px auto 0;
}
    .whitebox .text-l {
        width: calc(96% - 200px);
        max-width: 520px;
        font-size: 2.0rem;
        letter-spacing: 0;
        line-height: 1.8;
    }
    .whitebox .logo {
        width: 27%;
        max-width: 289px;
        min-width: 200px;
    }
    .whitebox .image+.text {
        margin-top: 10px;
    }

/* ◇ rsv 各種健診のご予約
-------------------------------- */
.buttonStyle.arrow.darkbeige.rsv {
    max-width: 539px;
    margin: 50px auto 30px;
}
.asterisk.rsv {
    font-size: 1.6rem;
}

/* =================================
   ■ index ページ
================================== */
/* --------------------------------
   □  accent
--------------------------------*/
.contents main>.accent.bg_img .wrap {
    background: url(../../images/medical/index/mv_bg.jpg) center / cover;
}

/* --------------------------------
   □  course
-------------------------------- */
#course ul.list li {
    width: 24%;
    max-width: 283px;
    position: relative;
    margin-bottom: 60px;
}
    #course ul.list li a {
        display: block;
        width: 100%;
        height: 100%;
        transition: all 500ms 0s ease;
        text-decoration: none;
        text-align: center;
    }
        #course ul.list li a:hover {
            opacity: 0.7;
        }
#course ul.list li dl dt {
    margin-bottom: 15px;
}
    #course ul.list li dl dd .ttl {
        font-size: 2rem;
        letter-spacing: 0.1em;
        margin-bottom: 20px;
    }
    #course ul.list li dl dd .text {
        font-size: 1.4rem;
        letter-spacing: 0.02em;
        margin-bottom: 20px;
    }
#course ul.list li .buttonStyle {
    position: relative;
    padding-right: 45px;
    margin-bottom: 0;
    display: inline-block;
}
    #course ul.list li .buttonStyle span {
        font-size: 1.4rem;
    }
    #course ul.list li .buttonStyle.arrow span:after {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        right: 0;
        display: inline-block;
        width: 33px;
        height: 11px;
        background: url(../../images/common/icon/arrow.svg) no-repeat right center;
        background-size: contain;
        z-index: 1;
        transition: all 300ms 0s ease;
    }
    #course ul.list li a:hover .buttonStyle.arrow span:after {
        right: -5%;
    }

/* =================================
   ■ doc kenpo emp city ページ
================================== */
/* --------------------------------
   □  price
-------------------------------- */
#price {
    padding-bottom: 0;
}
#price .border dl {
    width: 100%;
	padding: 20px;
	border-top: 1px solid #36353D;
	border-bottom: 1px solid #36353D;
	margin-top: 30px;
    text-align: center;
}
    /* city 高松市特定健診 */
    .city #price .border dl {
        margin-top: 0;
    }
    /* doc 人間ドック */
    #price .border.col3 dl {
        width: 32%;
        max-width: 387.5px;
    }
    /* emp 雇入れ・法定健診 */
    #price .border.col2 dl {
        width: 49%;
        max-width: 597.5px;
    }
	#price .border dt {
		font-size: 1.6rem;
		letter-spacing: 0;
		margin-bottom: 15px;
	}
        #price .border dt .cat {
            font-size: 1.3rem;
            color: #A99780;
            border: 1px solid #A99780;
            border-radius: 13px;
            display: inline-block;
            padding: 2px 12px;
            margin-bottom: 10px;
        }
	#price .border dd {
		font-size: 2.4rem;
		letter-spacing: 0;
	}
        #price .border small {
            font-size: 1.6rem;
            letter-spacing: 0;
        }

/* --------------------------------
   □  item 
-------------------------------- */
/* #item .js-scrollable-wrap {
    white-space: nowrap;
} */
#item .js-scrollable {
    word-break: break-all;
    table-layout: fixed;
    display: block;
    overflow: scroll;
}
#item .js-scrollable-wrap .scroll-hint-icon {
    top: 10%;
    height: 90px;
}
#item table {
    width: 100%;
    border-collapse:collapse;
    margin-bottom: 50px;
}
#item table th,
#item table td {
    font-size: 1.3rem;
    font-weight:normal;
    border-bottom:1px solid #36353D;
    box-sizing:border-box;
    letter-spacing: 0;
}
#item table th {
    background:#f4f4f4;
    padding: 15px 10px;
}
    #item table th.short {
        width:7%;
        min-width: 40px;
    }
    #item table th.sub {
        width: 12.5%;
        min-width: 85px;
        padding: 15px 10px;
        border-left: 1px solid #36353D;
    }
#item table td {
    background:#fff;
    padding: 20px 15px;
}
    #item table td.plan {
        width: 7.5%;
        min-width: 30px;
        text-align:center;
        padding: 20px 5px;
    }
#item table .header td {
    color:#fff;
    font-weight: 700;
    text-align:center;
    background:#A99780;
    border: none;
}
    #item table .header td.long {
        min-width: 200px;
    }

/* =================================
   ■ option ページ
================================== */
/* --------------------------------
   □ option
-------------------------------- */
#option h3.lv3_line {
    text-align: center;
    display: block;
}
    #option h3.lv3_line:before {
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }
#option .list {
    margin-top: 10px;
}
#option .whitebox {
    width: 24%;
    max-width: 283px;
    border: 1px solid #E1E1E1;
    border-radius: 4px;
    padding: 0;
    margin-top: 25px;
}
#option .whitebox dl {
    padding: 20px;
}
#option .whitebox dt.ttl {
    font-size: 2.4rem;
    letter-spacing: 0;
    margin-bottom: 10px;
}
#option .whitebox dd ul.listdot {
    margin-bottom: 10px;
    min-width: 100px;
}
    #option .whitebox dd ul.listdot li {
        font-size: 1.4rem;
        letter-spacing: 0;
        padding-left: 1em;
    }
    #option .whitebox dd ul.listdot li:before {
        top: 0.8em;
    }
#option .whitebox dd p.text {
    font-size: 1.3rem;
    color: #858585;
    margin-bottom: 0;
}
#option .whitebox p.buttonStyle a {
    font-size: 1.3rem;
    color: #858585;
    background-color: #EFEFEF;
    border-radius: 0 3px 3px 0;
    padding: 9px 30px;
}
#option .buttonStyle.arrow_dwn a span {
    position: relative;
}
    #option .buttonStyle.arrow_dwn a span:after {
        top: 3px;
        right: -20px;
        background: none;
        border-right: solid 2px #707070;
        border-top: solid 2px #707070;
        content: "";
        display: block;
        width: 8px;
        height: 8px;
        transform: rotate(135deg);
        transition: transform .3s ease-in-out, top .3s ease-in-out;
    }
        #option .buttonStyle.arrow_dwn a:hover span:after {
            top: 6px;
            right: -20px;
        }

/* --------------------------------
   □  item
-------------------------------- */
.option #item table th,
.option #item table td {
    font-size: 1.4rem;
    border-bottom: 1px solid #DCDCDC;
    border-right: 1px solid #707070;
    vertical-align: top;
    text-align: left;
}
.option #item table th {
    background: #fff;
    font-size: 2.2rem;
    padding: 15px 20px;
}
    .option #item table td {
        padding: 15px;
    }
    .option #item table td:last-of-type {
        border-right: none;
        text-align: right;
    }
    .option #item table .header td {
        border-right: 1px solid #fff;
    }
        .option #item table .header td:first-of-type {
            padding: 15px 20px;
        }
        .option #item table .header td.short {
            min-width: 195px;
        }
        .option #item table .header td.mid {
            min-width: 208px;
        }
    .option #item table td.plan {
        min-width: 89px;
        text-align: left;
    }
    .option #item table td .asterisk {
        font-size: 1.4rem;
        margin-top: 5px;
    }

.option #item .graybox {
    border: 2px solid #E9E9E9;
    border-radius: 2px;
    padding: 10px 15px;
    margin: 15px auto 10px;
}
.option #item .graybox ul.listcheck li {
    color: #6A6A6A;
    font-size: 1.2rem;
    margin-bottom: 0;
}
    .option #item .graybox ul.listcheck li .bold {
        padding-right: 10px;
    }

/* =================================
   ■ fonesvisuas ページ
================================== */
/* --------------------------------
   □  intro
--------------------------------*/
.fonesvisuas #intro {
    padding-top: 30px;
}
.fonesvisuas #intro .inner.bg_white {
    position: relative;
    top: -100px;
    margin-bottom: -100px;
    padding: 70px 70px 50px;
}
.fonesvisuas #intro .brackets {
    width: 100%;
    max-width: 1018px;
	padding: 30px;
	position: relative;
}
    .fonesvisuas #intro .brackets:before,
    .fonesvisuas #intro .brackets:after {
        content: '';
        width: 30px;
        height: 30px;
        position: absolute;
    }
    .fonesvisuas #intro .brackets:before {
        border-left: solid 1px #36353D;
        border-top: solid 1px #36353D;
        top: 0;
        left: 0;
    }
    .fonesvisuas #intro .brackets:after {
        border-right: solid 1px #36353D;
        border-bottom: solid 1px #36353D;
        bottom: 0;
        right: 0;
    }
    .fonesvisuas #intro .brackets .text {
        font-size: 3.0rem;
        letter-spacing: 0;
        line-height: 2;
        text-align: center;
    }
.fonesvisuas #intro .inner {
    padding: 0;
}
    .fonesvisuas #intro .inner .asterisk {
        font-size: 1.3rem;
    }

/* --------------------------------
   □  fonesvisuas
--------------------------------*/
.fonesvisuas #fonesvisuas .flexbox li {
    width: 100%;
}
    .fonesvisuas #fonesvisuas .flexbox li + li {
        margin-top: 50px;
    }
.fonesvisuas #fonesvisuas .flexbox .txtArea {
    width: 47%;
    max-width: 525px;
}
.fonesvisuas #fonesvisuas .flexbox .txtArea .asterisk {
    font-size: 1.3rem;
    padding-left: 2em;
    text-indent: -2em;
}
.fonesvisuas #fonesvisuas .flexbox .text + .asterisk {
    margin-top: 20px;
}
.fonesvisuas #fonesvisuas .flexbox .txtArea .asterisk li + li {
    margin-top: 10px;
}
.fonesvisuas #fonesvisuas .flexbox figure {
    width: 50%;
    max-width: 614px;
}
.fonesvisuas #fonesvisuas figure {
    box-shadow: 4px 4px 20px 0px rgba(0, 0, 0, 0.12);
}

/* --------------------------------
   □  flow
--------------------------------*/
.fonesvisuas #flow .whitebox {
    border: 1px solid #E1E1E1;
    padding: 15px 40px;
    margin: 0 auto;
}
.fonesvisuas #flow p.image {
    max-width: 960px;
    height: auto;
    margin: auto;
}

/* --------------------------------
   □  menu
--------------------------------*/
.fonesvisuas #menu .flexbox .txtArea {
    width: 56%;
    max-width: 621px;
}
    .fonesvisuas #menu .flexbox .txtArea ul.listdot {
        margin-bottom: 0;
    }
.fonesvisuas #menu .flexbox figure {
    width: 41%;
    max-width: 493px;
    box-shadow: 4px 4px 20px 0px rgba(0, 0, 0, 0.12);
}
    .fonesvisuas #menu .flexbox figure p.image{
        text-align: center;
    }
.fonesvisuas #menu .graybox {
    padding: 40px 50px;
    margin: 60px auto 30px;
}
    .fonesvisuas #menu .graybox + .graybox {
        margin-top: 30px;
    }
    .fonesvisuas #menu .graybox:last-child {
        margin-bottom: 0;
    }
.fonesvisuas #menu h5.lv5 {
    font-size: 1.8rem;
    letter-spacing: 0;
}

/* --------------------------------
   □  item
--------------------------------*/
.fonesvisuas #item table tr:first-child th,
.fonesvisuas #item table tr:first-child td {
    border-top: 1px solid #36353D;
}
.fonesvisuas #item table th {
    font-size: 1.6rem;
    text-align: center;
}
.fonesvisuas #item table td {
    font-size: 1.6rem;
    text-align: right;
}
.fonesvisuas #item .buttonStyle.arrow.darkbeige {
    max-width: 539px;
    margin: 50px auto 30px;
}

/* =================================
   ■ followup.php ページ
================================== */
/* --------------------------------
   □  accent
--------------------------------*/
.followup .contents main>.accent.bg_img .wrap {
    background: url(../../images/medical/followup/mv_bg.jpg) center / cover;
}

/* --------------------------------
   □ followup
-------------------------------- */
#followup {
    background: linear-gradient(90deg, #F5F5F5 0%, #F5F5F5 73%, transparent 73%, transparent 100%);
    padding: 0;
    margin-top: 170px;
}
#followup .container {
    margin: 0 auto;
    position: relative;
}
#followup figure {
    position: absolute;
    top: -90px;
    right: 0px;
    max-height: 599px;
    margin-left: 630px;
    overflow: hidden;
}
    #followup figure img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
#followup .txtArea {
    display: inline-block;
    width: 53%;
    max-width: 630px;
    padding: 90px 100px 90px 0;
}
    #followup .txtArea .lv3,
    #followup .txtArea .text {
        text-align: left;
    }
    #followup .txtArea .text {
        line-height: 2;
    }

/* --------------------------------
   □ email
-------------------------------- */
#email .whitebox .txtArea {
    width: calc(96% - 300px);
}
    #email .whitebox .txtArea .lv5 .cat {
        font-size: 1.3rem;
        color: #A99780;
        border: 1px solid #A99780;
        border-radius: 13px;
        display: inline-block;
        padding: 2px 12px;
        margin-left: 1em;
    }
    #email .buttonStyle.arrow {
    width: 41%;
    max-width: 443px;
    min-width: 300px;
}
    #email .buttonStyle.arrow a {
        max-width: 443px;
        text-align: center;
    }

#email .notice {
    margin-top: 40px;
}
    

/* =================================
   ■ outline.php ページ
================================== */
/* --------------------------------
   □  accent
--------------------------------*/
.outline .contents main>.accent.bg_img .wrap {
    background: url(../../images/medical/outline/mv_bg.jpg) center / cover;
}

/* --------------------------------
   □  outline
--------------------------------*/
#outline .intro-text:first-of-type {
    margin-bottom: 20px;
}
#outline h4 {
    font-size: 2.6rem;
    margin-bottom: 30px;
}
    #outline h4 .pos {
        display: block;
        font-size: 1.4rem;
        margin-bottom: 20px;
    }
    #outline h4 .en {
        font-size: 1.4rem;
        padding-left: 10px;
    }

/* --------------------------------
   □  point
--------------------------------*/
#point .point {
    background: linear-gradient(90deg, #F5F5F5 0%, #F5F5F5 73%, transparent 73%, transparent 100%);
    padding: 0;
    margin-top: 90px;
    margin-bottom: 165px;
}
    #point .point:last-child {
        margin-bottom: 0;
    }
#point .container {
    margin: 0 auto;
    position: relative;
}
#point .txtArea {
    display: inline-block;
    width: 53%;
    max-width: 630px;
    padding: 70px 90px 70px 0;
}
    #point .txtArea .text {
        line-height: 2;
    }
#point figure {
    position: absolute;
    top: -90px;
    right: 0px;
    max-height: 422px;
    margin-left: 630px;
    overflow: hidden;
}
    #point figure img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }

/* reverse */
#point .reverse {
    background: linear-gradient(270deg, #F5F5F5 0%, #F5F5F5 73%, transparent 73%, transparent 100%);
}
#point .reverse .txtArea {
    padding: 70px 0 70px 90px;
    float: right;
}
#point .reverse figure {
    right: auto;
    left: 0;
    margin-left: 0;
    margin-right: 630px;
}

/* =================================
   ■ qa.php ページ
================================== */
/* --------------------------------
   □  accent
--------------------------------*/
.qa .contents main>.accent.bg_img .wrap {
    background: url(../../images/medical/qa/mv_bg.jpg) center / cover;
}

/* --------------------------------
   □  qa
-------------------------------- */
#qa ul.qa {
	margin-bottom: 60px;
    letter-spacing: 0;
}
#qa ul.qa li {
    border-top: 1px solid #36353D;
}
    #qa ul.qa li:last-child {
        border-bottom: 1px solid #36353D;
    }
#qa ul.qa li dl dt {
    padding: 36px 70px;
    position:relative;
    cursor: pointer;
}
    #qa ul.qa li dl dt::before {
        content:"Q";
        color: #fff;
        background: #2D2853;
        padding: 0;
        width: 49px;
        height: 49px;
        font-size: 1.9rem;
        font-family: 'EB Garamond', serif;
        font-weight: 500;
        letter-spacing: 0.08em;
        line-height: 49px;
        text-align: center;
        display: inline-block;
        border-radius: 50%;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
    }
        #qa ul.qa li dl dt span::before,
        #qa ul.qa li dl dt span::after {
            display: block;
            content: "";
            position: absolute;
            width: 20px;
            height: 2px;
            transform: rotate(90deg);
            background: #36353D;
            transition: all .3s ease-in-out;
            right: 16px;
            top: 50%;
            transform: translateY(-50%);
        }
        #qa ul.qa li dl dt span::after {
            transform: translateY(-50%) rotate(90deg);
        }
        #qa ul.qa li dl dt.open span::after {
            transform: translateY(-50%) rotate(0);
        }
#qa ul.qa li dl dd {
    display: none;
    background-color: #F5F5F5;
    padding: 25px 20px;
    position: relative;
    margin-bottom: 29px;
    line-height: 1.8;
}
    #qa ul.qa li dl dd a {
        text-decoration: underline;
    }

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

    /* =================================
	   ■ 共通指定
	================================== */
    .whitebox {
        padding: 40px;
    }

    /* =================================
	   ■ index ページ
	================================== */
    /* --------------------------------
       □ course
    -------------------------------- */
    #course ul.list li {
        width: 32%;
        max-width: inherit;
    }
        #course ul.list li img {
            width: 100%;
        }

    /* =================================
       ■ doc kenpo emp city ページ
    ================================== */
    /* --------------------------------
       □ 
    -------------------------------- */

    /* =================================
       ■ option ページ
    ================================== */
    /* --------------------------------
       □  option
    -------------------------------- */
    #option .whitebox {
        width: 32%;
        max-width: inherit;
    }
    #option .whitebox dt.ttl {
        font-size: 2.2rem;
    }
    /* --------------------------------
       □  item
    -------------------------------- */
    .option #item table th {
        font-size: 2.0rem;
    }

    /* =================================
       ■ followup.php ページ
    ================================== */
    /* --------------------------------
    □  followup
    -------------------------------- */
    #followup > .container {
        margin-left: 4%;
        margin-right: 4%;
    }
    #followup .txtArea {
        width: 73%;
        max-width: 535px;
        padding: 70px 4% 70px 0;
    }
        #followup .txtArea h4 {
            font-size: 2.0rem;
        }
    #followup figure {
        margin-left: 535px;
    }

    /* =================================
       ■ outline.php ページ
    ================================== */
    /* --------------------------------
       □ point
    -------------------------------- */
    #point .container {
        margin-left: 4%;
        margin-right: 4%;
    }
    #point .txtArea {
        width: 73%;
        max-width: 535px;
        padding: 70px 4% 70px 0;
    }
    #point figure {
        margin-left: 535px;
    }
    /* reverse */
    #point .reverse .txtArea {
        padding: 70px 0 70px 4%;
    }
    #point .reverse figure {
        margin-right: 535px;
    }

    /* =================================
       ■ qa.php ページ
    ================================== */
    /* --------------------------------
       □ 
    -------------------------------- */

}


/* タブレット用
-------------------------------------------- */
@media (max-width: 999px) and (min-width: 768px) {
    /* =================================
	   ■  ページ
	================================== */
    /* --------------------------------
	   □ 
	-------------------------------- */


}


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

    /* =================================
	   ■ 共通指定
	================================== */
    /* ◇ box
	-------------------------------- */
    .graybox {
        padding: 30px 4%;
        margin: 30px auto;
    }
        .graybox .list li {
            font-size: 1.6rem;
            padding: 10px;
        }

    .whitebox {
        border: 2px solid #F1F1F1;
        padding: 30px 4%;
        margin: 0 auto;
    }
        .whitebox .text-l {
            font-size: 1.6rem;
            margin-bottom: 20px;
        }

    /* ◇ rsv 各種健診のご予約
    -------------------------------- */
    .buttonStyle.arrow.darkbeige.rsv {
        margin: 30px auto 20px;
    }
    .asterisk.rsv {
        font-size: 1.4rem;
    }

    /* =================================
	   ■ index ページ
	================================== */
    /* --------------------------------
       □  course
    -------------------------------- */
    #course ul.list li {
        max-width: inherit;
        margin-bottom: 40px;
    }
        #course ul.list li:last-child {
            margin-bottom: 0;
        }
    #course ul.list li dl dt img {
        width: 100%;
    }
    #course ul.list li dl dd .ttl {
        font-size: 2.0rem;
        margin-bottom: 10px;
    }
    #course ul.list li dl dd span {
        padding-top: 0;
    }
    #course ul.list li dl dd .text {
        font-size: 1.5rem;
        margin-bottom: 10px;
        line-height: 1.8;
    }
    #course ul.list li .buttonStyle {
        float: right;
    }

    /* =================================
       ■ doc kenpo emp city ページ
    ================================== */
    /* --------------------------------
       □  price
    -------------------------------- */
		#price .border dl {
			max-width: inherit;
			padding: 0;
			margin: 0;
			border: none;
		}
		#price .border dt {
			padding: 15px 0;
			border-top: none;
			background: #F1F1F1;
			margin-bottom: 0;
			text-align: center;
		}
		#price .border dd {
            font-size: 2rem;
			padding: 15px 0;
			line-height: 1.8;
		}
    /* --------------------------------
       □  item
    -------------------------------- */
    #item .js-scrollable-wrap {
        white-space: inherit;
    }
    #item table {
        font-size: 1.2rem;
    }
    #item table th,
    #item table th.sub,
    #item table td,
    #item table td.plan {
        font-size: 1.2rem;
        padding: 10px;
    }
    #item table th.sub {
        min-width: 98px;
    }
    #item table th.short span,
    #item table td.plan span {
        white-space: pre;
        writing-mode: vertical-rl;
        text-orientation: upright;
        letter-spacing: 0.3rem;
        text-align: center;
    }

    /* =================================
       ■ option ページ
    ================================== */
    /* --------------------------------
       □  option
    -------------------------------- */
    #option .whitebox {
        max-width: inherit;
    }
    #option .whitebox dt.ttl {
        font-size: 2.0rem;
    }
    #option .buttonStyle.arrow_dwn {
        max-width: inherit;
        margin: auto;
    }
    #option .buttonStyle.arrow_dwn a span {
        font-size: 1.6rem;
    }
        #option .buttonStyle.arrow_dwn a span:after {
            top: 6px;
        }
    /* --------------------------------
       □  item
    -------------------------------- */
    .option #item table th,
    .option #item table td {
        font-size: 1.2rem;
        vertical-align: middle;
        padding: 10px;
    }
    .option #item table th {
        font-size: 1.6rem;
    }
    .option #item table .header td.short {
        min-width: 45px;
        padding: 10px;
    }
    .option #item table .header td.mid {
        min-width: 81px;
    }
    .option #item table th.short span {
        white-space: pre;
        writing-mode: vertical-rl;
        text-orientation: upright;
        letter-spacing: 0.3rem;
        text-align: center;
    }
    .option #item table td.plan {
        writing-mode: inherit;
        letter-spacing: 0;
        min-width: 71px;
    }
    .option #item .graybox {
        border: 1px solid #E9E9E9;
        padding: 5px;
    }
        .option #item .graybox ul.listcheck li .bold {
            display: block;
        }

    /* =================================
       ■ fonesvisuas ページ
    ================================== */
    /* --------------------------------
       □  intro
    --------------------------------*/
    .fonesvisuas #intro .inner.bg_white {
        width: 92%;
        padding: 30px 4%;
        top: -30px;
        margin-bottom: -30px;
    }
    .fonesvisuas #intro .brackets {
        padding: 4%;
        margin: 0 auto;
    }
        .fonesvisuas #intro .brackets .text {
            font-size: 1.8rem;
        }
    .fonesvisuas #intro .graybox .list li {
        padding: 10px;
        width: 100%;
        max-width: 269px;
    }
    .fonesvisuas #fonesvisuas .flexbox .txtArea,
    .fonesvisuas #menu .flexbox .txtArea {
        display: block;
        width: 100%;
        max-width: inherit;
        margin-bottom: 20px;
    }
    .fonesvisuas #fonesvisuas .flexbox figure,
    .fonesvisuas #menu .flexbox figure {
        max-width: inherit;
    }

    /* --------------------------------
       □  menu
    --------------------------------*/
    .fonesvisuas #menu .graybox {
        padding: 30px 4%;
        margin: 30px auto;
    }
        .fonesvisuas #menu .graybox ul.listdot {
            margin-bottom: 0;
        }

    /* --------------------------------
       □  item
    --------------------------------*/
    .fonesvisuas #item table th,
    .fonesvisuas #item table td {
        font-size: 1.4rem;
        text-align: center;
    }
    .fonesvisuas #item .buttonStyle.arrow.darkbeige {
        margin: 30px auto 20px;
    }

    /* =================================
       ■ followup.php ページ
    ================================== */
    /* --------------------------------
       □ followup
    -------------------------------- */
    #followup {
        background: #F5F5F5;
        padding: 50px 4% 0;
        margin-top: 50px;
    }
    #followup .txtArea {
        display: block;
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
        padding: 0;
    }
        #followup .txtArea .lv3 {
            text-align: center;
        }
        #followup .txtArea .text {
            margin-bottom: 30px;
        }
    #followup figure {
        position: static;
        max-height: inherit;
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
    }

    /* --------------------------------
       □ email
    -------------------------------- */
    #email .buttonStyle.arrow.white {
        text-align: center;
    }

    /* =================================
       ■ outline.php ページ
    ================================== */
    /* --------------------------------
       □ outline
    -------------------------------- */
    #outline p.intro-text.text-right {
        margin-bottom: 60px;
    }

    /* --------------------------------
       □ point
    -------------------------------- */
    #point {
        background: #F5F5F5;
        padding: 50px 4% 100px;
        margin-top: 0;
    }
    #point .point {
        margin-top: 0;
        margin-bottom: 30px;
    }
    #point .txtArea,
    #point .reverse .txtArea {
        display: block;
        width: 100%;
        max-width: inherit;
        margin-right: 0;
        margin-bottom: 30px;
        padding: 0;
    }
        #point .txtArea .lv3 {
            text-align: center;
        }
        #point .txtArea .text {
            margin-bottom: 30px;
        }
    #point figure,
    #point .reverse figure {
        position: static;
        max-height: inherit;
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
    }
    /* reverse */
    #point .reverse .txtArea {
        margin-left: 0;
        margin-bottom: 0;
    }

    /* =================================
       ■ qa.php ページ
    ================================== */
    /* --------------------------------
       □  qa
    -------------------------------- */
    #qa ul.qa {
        margin-bottom: 40px;
    }
    #qa ul.qa li dl dt {
        padding: 25px 30px 25px 45px;
    }
        #qa ul.qa li dl dt::before {
            width: 35px;
            height: 35px;
            font-size: 1.6rem;
            line-height: 35px;
        }
        #qa ul.qa li dl dt span{
            font-size: 1.5rem;
        }
        #qa ul.qa li dl dt span::before,
        #qa ul.qa li dl dt span::after {
            right: 0px;
        }
    #qa ul.qa li dl dd {
        font-size: 1.5rem;
        padding: 20px 4%;
    }

}