@charset "UTF-8";
/* ===== RESET ===== */
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
li {
	list-style: none;
}

p {
	margin: 0;
}
/* ===== end - RESET ===== */


body {
    font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent;
}


/* ===== MODULES ===== */
.bg_white {
	background-color: white;
}

.bg {
	background: #f0f4f7;
}

.bg1 {
	background: #d59fd2;
}

.bg2 {
	background: #d9e7e7;
}

.bg3 {
	background: #f6f6f6;
}

.color_white {
	color: #fff;
}

.color01 {
	color: #d84036;
}

a {
	color: unset;
	cursor: pointer;
	-webkit-transition: ease-out .3s;
	transition: ease-out .3s;
}

a:link {
	color: #000;
	text-decoration: none;
}

a:visited {
	color: #000;
	text-decoration: none;
}

a:hover {
	color: #000;
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=7);
}

.link_txt:link, .link_txt:hover, .link_txt:active, .link_txt:visited {
	color: #2477C5;
	text-decoration: underline !important;
}

.f_normal {
	font-weight: normal;
}

.f_bold {
	font-weight: bold;
}

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.blck {
	display: block;
}

.in-blck {
	display: inline-block;
	width: auto;
}

.center {
	margin-right: auto;
	margin-left: auto;
}

.wrap {
	overflow: hidden;
	height: auto;
}

.hide {
	display: none !important;
}

input[type="text"],
input[type="tel"],
input[type="email"],
select,
textarea {
	padding: 4px;
	border: 1px solid #c8c8c8;
	font-size: 100%;
}

input[type="text"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #b2b2b2;
}

input[type="text"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #b2b2b2;
}

input[type="text"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
	color: #b2b2b2;
}

input[type="radio"] {
	margin-right: 4px;
	vertical-align: middle;
}

img {
	border: 0;
}

img {
  max-width: 100%;
  height: auto;
  width: auto;
  vertical-align: bottom; }

img[src$=".svg"] {
  width: 100%; }




.img-blck {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.img-responsive {
	display: block;
	width: 100%;
	height: auto;
	text-align: center;
}

.img-square {
	position: relative;
	z-index: 2;
	display: block;
	overflow: hidden;
	width: 100%;
}

.img-square:before {
	display: block;
	padding: 75% 0 0;
	height: 0;
	content: "";
}

.img-square.sq2:before {
	padding: 66.6% 0 0;
}

.img-square img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}

.img-square img.oblong {
	width: 100%;
}

.img-square img.vertical {
	height: 100%;
}

.scroll-wrap {
	overflow-x: auto;
}

.scroll-wrap::-webkit-scrollbar {
	height: 10px;
}

.scroll-wrap::-webkit-scrollbar-thumb {
	border-radius: 5px;
	background: #aaa;
}

.scroll-wrap::-webkit-scrollbar-track-piece {
	border-radius: 5px;
	background: white;
}

.tab, .sp {
	display: none;
}

.sp {
	display: none !important;
}

.pc, .pc.tab {
	display: block;
}


.dsp {
    display: none!important; }

.dpc {
    display: block!important; }
 

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

    .pu-only--pc {
        display: none!important
    }
    .pu-only--sp {
        display: block!important
    }
}

@media screen and (max-width: 768px) {
   .dpc {
        display: none!important
    }

    .dsp {
        display: block!important
    }
}



.colWrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
/* plus detail-page 20180910 */
.colWrap.det-minipic {
	justify-content: start;
}

.colWrap.rtl {
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
}

.colWrap.wrap {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.colWrap.col {
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
}

.colWrap.mdl .box,
.colWrap .box.mdl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
}

.colWrap.mdl .box.ct,
.colWrap .box.mdl.ct {
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	justify-content: center;
}

.colWrap.boxAlign-left {
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
}

.colWrap.col2.full {
	margin-right: -1.4%;
	margin-left: -1.4%;
}

.colWrap.col2 .box {
	margin: 0 1.4%;
	width: 47.8409090909%;
	width: calc(calc(100% / 2) - 2.8%);
}

.colWrap.col2.sp0 .box {
	margin: 0;
	width: 50%;
}

.colWrap.col3.full {
	margin-right: -1.4%;
	margin-left: -1.4%;
}

.colWrap.col3 .box {
	margin: 0 1.4%;
	width: 31.1742424242%;
	width: calc(calc(100% / 3) - 2.8%);
}

.colWrap.col3.sp0 .box {
	margin: 0;
	width: 33.3333333333%;
}

.colWrap.col4.full {
	margin-right: -1.4%;
	margin-left: -1.4%;
}

.colWrap.col4 .box {
	margin: 0 1.4%;
	width: 22.8409090909%;
	width: calc(calc(100% / 4) - 2.8%);
}

.colWrap.col4.sp0 .box {
	margin: 0;
	width: 25%;
}

.colWrap.col5.full {
	margin-right: -1.4%;
	margin-left: -1.4%;
}

.colWrap.col5 .box {
	margin: 0 1.4%;
	width: 17.8409090909%;
	width: calc(calc(100% / 5) - 2.8%);
}

.colWrap.col5.sp0 .box {
	margin: 0;
	width: 20%;
}

table {
	width: 100%;
	border-collapse: collapse;
}

table th,
table td {
	padding: 10px 10px 8px;
	vertical-align: top;
	font-weight: 500;
	line-height: 1.8;
}

table th {
	width: 28%;
	text-align: left;
}

ul,
dl {
	margin: 0;
}

ul.list_disc li,
ol.list_disc li {
	margin: 0 0 0 1.5em;
	list-style-type: disc;
}

ul ul {
	margin: 0 1em;
}

dl dt, dl dd {
	font-weight: 500;
	line-height: 1.8;
}

dl.indent dd {
	margin-left: 1em;
}

dl dd {
	padding: 5px 0 25px;
}

dl dd:last-child {
	padding-bottom: 0;
}

.list_h {
	overflow: hidden;
	height: auto;
}

.list_h li, .list_h .li {
	float: left;
}

.mt0 {
	margin-top: 0px !important;
}

.mb0 {
	margin-bottom: 0px !important;
}

.ml0 {
	margin-left: 0px !important;
}

.mr0 {
	margin-right: 0px !important;
}

.pt0 {
	padding-top: 0px !important;
}

.pb0 {
	padding-bottom: 0px !important;
}

.pl0 {
	padding-left: 0px !important;
}

.pr0 {
	padding-right: 0px !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.ml5 {
	margin-left: 5px !important;
}

.mr5 {
	margin-right: 5px !important;
}

.pt5 {
	padding-top: 5px !important;
}

.pb5 {
	padding-bottom: 5px !important;
}

.pl5 {
	padding-left: 5px !important;
}

.pr5 {
	padding-right: 5px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.mr10 {
	margin-right: 10px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pl10 {
	padding-left: 10px !important;
}

.pr10 {
	padding-right: 10px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.ml15 {
	margin-left: 15px !important;
}

.mr15 {
	margin-right: 15px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.pb15 {
	padding-bottom: 15px !important;
}

.pl15 {
	padding-left: 15px !important;
}

.pr15 {
	padding-right: 15px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pl20 {
	padding-left: 20px !important;
}

.pr20 {
	padding-right: 20px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.ml25 {
	margin-left: 25px !important;
}

.mr25 {
	margin-right: 25px !important;
}

.pt25 {
	padding-top: 25px !important;
}

.pb25 {
	padding-bottom: 25px !important;
}

.pl25 {
	padding-left: 25px !important;
}

.pr25 {
	padding-right: 25px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.ml30 {
	margin-left: 30px !important;
}

.mr30 {
	margin-right: 30px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.pl30 {
	padding-left: 30px !important;
}

.pr30 {
	padding-right: 30px !important;
}

.mt35 {
	margin-top: 35px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.ml35 {
	margin-left: 35px !important;
}

.mr35 {
	margin-right: 35px !important;
}

.pt35 {
	padding-top: 35px !important;
}

.pb35 {
	padding-bottom: 35px !important;
}

.pl35 {
	padding-left: 35px !important;
}

.pr35 {
	padding-right: 35px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.ml40 {
	margin-left: 40px !important;
}

.mr40 {
	margin-right: 40px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.pl40 {
	padding-left: 40px !important;
}

.pr40 {
	padding-right: 40px !important;
}

.mt45 {
	margin-top: 45px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.ml45 {
	margin-left: 45px !important;
}

.mr45 {
	margin-right: 45px !important;
}

.pt45 {
	padding-top: 45px !important;
}

.pb45 {
	padding-bottom: 45px !important;
}

.pl45 {
	padding-left: 45px !important;
}

.pr45 {
	padding-right: 45px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.mr10 {
	margin-right: 10px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pl10 {
	padding-left: 10px !important;
}

.pr10 {
	padding-right: 10px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.ml15 {
	margin-left: 15px !important;
}

.mr15 {
	margin-right: 15px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.pb15 {
	padding-bottom: 15px !important;
}

.pl15 {
	padding-left: 15px !important;
}

.pr15 {
	padding-right: 15px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pl20 {
	padding-left: 20px !important;
}

.pr20 {
	padding-right: 20px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.ml25 {
	margin-left: 25px !important;
}

.mr25 {
	margin-right: 25px !important;
}

.pt25 {
	padding-top: 25px !important;
}

.pb25 {
	padding-bottom: 25px !important;
}

.pl25 {
	padding-left: 25px !important;
}

.pr25 {
	padding-right: 25px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.ml30 {
	margin-left: 30px !important;
}

.mr30 {
	margin-right: 30px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.pl30 {
	padding-left: 30px !important;
}

.pr30 {
	padding-right: 30px !important;
}

.mt35 {
	margin-top: 35px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.ml35 {
	margin-left: 35px !important;
}

.mr35 {
	margin-right: 35px !important;
}

.pt35 {
	padding-top: 35px !important;
}

.pb35 {
	padding-bottom: 35px !important;
}

.pl35 {
	padding-left: 35px !important;
}

.pr35 {
	padding-right: 35px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.ml40 {
	margin-left: 40px !important;
}

.mr40 {
	margin-right: 40px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.pl40 {
	padding-left: 40px !important;
}

.pr40 {
	padding-right: 40px !important;
}

.mt45 {
	margin-top: 45px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.ml45 {
	margin-left: 45px !important;
}

.mr45 {
	margin-right: 45px !important;
}

.pt45 {
	padding-top: 45px !important;
}

.pb45 {
	padding-bottom: 45px !important;
}

.pl45 {
	padding-left: 45px !important;
}

.pr45 {
	padding-right: 45px !important;
}

.pt50 {
	padding-top: 50px !important;
}

.pb50 {
	padding-bottom: 50px !important;
}

.pl50 {
	padding-left: 50px !important;
}

.pr50 {
	padding-right: 50px !important;
}

.font_xs {
	font-size: 1.2rem !important;
}

.f_raleway {
	font-family: 'Raleway', sans-serif;
}

.f_ptsans {
	font-family: 'PT Sans', sans-serif;
}

.f_dancing {
	font-family: 'Dancing Script', cursive;
}

/* animation */
.fadeIn0 {
  position: relative;
  opacity: 0;
  -webkit-transform: translate(0, 50px);
  -moz-transform: translate(0, 50px);
  -o-transform: translate(0, 50px);
  transform: translate(0, 50px);
  -webkit-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
  -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
}

.fadeIn,
.fadeIn_delay {
  position: relative;
  opacity: 0;
  -webkit-transform: translate(0, 50px);
  -moz-transform: translate(0, 50px);
  -o-transform: translate(0, 50px);
  transform: translate(0, 50px);
  -webkit-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1400ms cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
  -webkit-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -moz-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  -o-transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  /* easeOutQuint */
}

.fadeIn_delay {
  -webkit-transform: translate(0, 200px);
  -moz-transform: translate(0, 200px);
  -o-transform: translate(0, 200px);
  transform: translate(0, 200px);
}

.fadeIn0.active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}

.fadeIn.active,
.fadeIn_delay.active {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}

.tel_link {
	color: #000;
}

.tel_link:hover {
	opacity: 1;
	cursor: text;
}

.commonTbl th,
.commonTbl td {
	padding: 20px 30px;
	border-top: 1px solid #c6c6c6;
	border-bottom: 1px solid #c6c6c6;
}

.commonTbl th {
	background: #e0e3e8;
}

/* ===== end - MODULES =====*/

/* ===== COMMON STYLES ===== */
html {
	font-size: 62.5%;
}

body {
	background: #fff;
	color: #000;
	content: 'pc';
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: 500;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	line-height: 1.8;
	letter-spacing: -0.04em;
}

.wrapper {
	position: relative;
	overflow: hidden;
}

.free {
    position: fixed; 
    width: 100px;
    height: 100px;
    left: 5px;
    bottom: 5px;
    z-index: 50;
}

.free .image {
    widt: 100%;
    height: auto;
}

.free .image img {
    widt: 100%;
    height: auto;
}

@media only screen and (max-width:786px){
.free {
    position: fixed; 
    width: 60px;
    height: 60px;
    left: 3px;
    bottom: 3px;
    z-index: 150;
}

}

.container {
	position: relative;
	overflow: hidden;
	margin-right: auto;
	margin-left: auto;
	padding-right: 20px;
	padding-left: 20px;
	max-width: 1237px;
	width: auto;
}

.container.visible {
	overflow: visible;
}

.content {
	position: relative;
	margin: 90px auto 0;
}

/* header */
header {
	position: fixed;
	width: 100%;
	height: 90px;
	z-index: 10000;
	background: #fff;
	top: 0;
	left: 0;
	transition: all .5s ease-out;
}

header .colWrap {
	margin: 0 auto;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center;
	padding: 0 15px;
	height: 90px;
}

header .logoFrame {
	max-width: 339px;
	width: 25.3%;
	height: auto;
}

header .logo a {
	display: inline-block;
	vertical-align: middle;
}

header .logo img {
	display: block;
}

header .navFrame {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
	flex-grow: 1;
	padding: 0 0 0 2%;
	max-width: 840px;
}

header .telFrame {
	padding: 5px 1.5%;
	width: 28.5%;
	max-width: 225px;
	background: #d59fd2;
	color: #fff;
	line-height: 1.2;
}

header .telFrame p {
	font-size: 1.25vw;
}

header .telFrame i {
	position: relative;
	top: -2px;
	margin-right: 10px;
	font-size: 1.8vw;
}

header .telFrame a:link,
header .telFrame a:hover,
header .telFrame a:visited {
	display: block;
	color: #fff;
	font-size: 2.03vw;
	text-align: center;
}

/* gnav */
.gnav {
	z-index: 3;
	width: 67%;
	min-width: 480px;
}

.gnav ul {
	margin: 0 auto;
	padding: 12px 0 11px;
	width: 100%;
	height: auto;
}

.gnav li {
	position: relative;
	overflow: hidden;
	margin: 0;
	text-align: center;
}

.gnav li a {
	display: inline-block;
	position: relative;
	color: #000;
	text-align: center;
	text-decoration: none;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.3;
	white-space: nowrap;
}


.gnav li.mail a  {
	display: inline-block;
	position: relative;
	color: #d59fd2;
	text-align: center;
	text-decoration: none;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1;
	white-space: nowrap;
}


.gnav li a:hover {
	opacity: 1;
}

.gnav li a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	right: 50%;
	margin: 0;
	height: 3px;
	background: #d59fd2;
	transition: all .3s ease-out;
}

.gnav li a:hover:before {
	left: 0;
	right: 0;
}

.gnav li.mail a {
	min-width: 26px;
}

.gnav li.mail a:hover {
	opacity: .7;
}

.gnav li.mail a:before {
	display: none;
}

.gnav li.current a {
	border-bottom: 1px solid #d59fd2;
}

/* nav button */
.menuBtn {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 12000;
	display: none;
	width: 65px;
	height: 60px;
	text-align: center;
	font-size: 1.0rem;
	cursor: pointer;
}

.menuBtn div {
	position: relative;
	margin: 11px auto 0;
	height: 22px;
	opacity: 0;
	top: -50px;
	transition: all .75s ease-out;
}

.menuBtn div:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	margin-top: -1px;
	margin-left: -15px;
	width: 30px;
	height: 2px;
	background: #d59fd2;
	opacity: 1;
	-webkit-transition: .35s ease-in-out;
	-webkit-transition: 0.35s ease-in-out;
	transition: 0.35s ease-in-out;
}

@-webkit-keyframes menu-bar01 {
	0% {
		-webkit-transform: translateY(10px) rotate(45deg);
	}
	50% {
		-webkit-transform: translateY(10px) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
	}
}

@keyframes menu-bar01 {
	0% {
		transform: translateY(10px) rotate(45deg);
	}
	50% {
		transform: translateY(10px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}

@-webkit-keyframes menu-bar03 {
	0% {
		-webkit-transform: translateY(-10px) rotate(-45deg);
	}
	50% {
		-webkit-transform: translateY(-10px) rotate(0);
	}
	100% {
		-webkit-transform: translateY(0) rotate(0);
	}
}

@keyframes menu-bar03 {
	0% {
		transform: translateY(-10px) rotate(-45deg);
	}
	50% {
		transform: translateY(-10px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}

@-webkit-keyframes active-menu-bar01 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(10px) rotate(0);
	}
	100% {
		-webkit-transform: translateY(10px) rotate(45deg);
	}
}

@keyframes active-menu-bar01 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(10px) rotate(0);
	}
	100% {
		transform: translateY(10px) rotate(45deg);
	}
}

@-webkit-keyframes active-menu-bar03 {
	0% {
		-webkit-transform: translateY(0) rotate(0);
	}
	50% {
		-webkit-transform: translateY(-10px) rotate(0);
	}
	100% {
		-webkit-transform: translateY(-10px) rotate(-45deg);
	}
}

@keyframes active-menu-bar03 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(-10px) rotate(0);
	}
	100% {
		transform: translateY(-10px) rotate(-45deg);
	}
}

.menuBtn span {
	display: block;
	margin: 0 auto;
	height: 22px;
	color: #d59fd2;
	font-size: 1.0rem;
	font-family: Helvetica, Arial, sans-serif;
	line-height: 70px;
}

.menuBtn span:before, .menuBtn span:after {
	position: absolute;
	left: 50%;
	display: block;
	margin-left: -15px;
	width: 30px;
	height: 2px;
	background: #d59fd2;
	content: "";
}

.menuBtn span:before {
	top: 0;
}

.menuBtn span:after {
	bottom: 0;
}

.menuBtn.close span:before {
	-webkit-animation: menu-bar01 .75s forwards;
	animation: menu-bar01 .75s forwards;
}

.menuBtn.close span:after {
	-webkit-animation: menu-bar03 .75s forwards;
	animation: menu-bar03 .75s forwards;
}

.menuBtn.open span:before {
	-webkit-animation: active-menu-bar01 .75s forwards;
	animation: active-menu-bar01 .75s forwards;
}

.menuBtn.open span:after {
	-webkit-animation: active-menu-bar03 .75s forwards;
	animation: active-menu-bar03 .75s forwards;
}

.menuBtn.open div:before {
	opacity: 0;
}

/* pageTop */
.pageTop {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 50;
	width: 60px;
}

.pageTop a {
	position: relative;
	display: block;
	overflow: hidden;
	margin: -26px auto 0;
	padding: 52px 0 0;
	width: 52px;
	height: 0;
	outline: none;
	border: 1px solid #c3c3c3;
	text-align: center;
	text-decoration: none;
}

.pageTop a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -3px 0 0 -10px;
	width: 20px;
	height: 20px;
	border-top: 2px solid #c3c3c3;
	border-right: 2px solid #c3c3c3;
	transform: rotate(-45deg);
}


/* footer */
footer {
	overflow: hidden;
	margin: 8% auto 0;
	padding: 5% 0 0;
	line-height: 1.8;
}

footer .fnavFrame {
	margin: 2.5% auto 0;
}

footer .footerNav {
	display: inline-block;
	position: relative;
	font-size: 0;
}

footer .footerNav li {
	display: inline-block;
	position: relative;
	margin: 5px 0;
	padding: 0 15px;
	font-size: 14px;
	font-size: 1.4rem;
}

footer .footerNav:after,
footer .footerNav li:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	margin: -6px 0 0;
	width: 1px;
	height: 12px;
	background: #888;
}

footer .footerNav:after {
	left: auto;
	right: 0;
}

footer .footerNav li a {
	position: relative;
	overflow: hidden;
	color: #000;
	text-align: center;
	text-decoration: none;
	line-height: 1.3;
}

footer .copyright {
	padding: 20px 0;
	font-size: 12px;
	font-size: 1.2rem;
}

/* clinicInfo */
.clinicInfoSection {
	padding-top: 55px;
	background: #eeebe4;
	color: #000000;
	font-size: 15px;
	font-size: 1.5rem;
}

.clinicInfoSection .ttl.light {
	color: #000;
	font-size: 36px;
	font-size: 3.6rem;
}

.clinicInfoSection .container {
	max-width: 983px;
}

.clinicInfoSection .mapFrame {
	margin: 42px auto;
}

.clinicInfoSection .mapFrame #map {
	height: 300px;
background: #ddd;
}

.clinicInfoSection .mapFrame #map iframe {
 width: 100%;
 height: 100%;
}

.clinicInfoSection .timeTableFrame table {
	margin: 0 0 10px;
	max-width: 420px;
	background: #fff;
	color: #000000;
}

.clinicInfoSection .timeTableFrame table th,
.clinicInfoSection .timeTableFrame table td {
	padding: 15px 0;
	border-right: 1px solid #dedede;
	text-align: center;
}

.clinicInfoSection .timeTableFrame table th:first-child {
	padding: 15px;
	font-size: 16px;
	font-size: 1.6rem;
	text-align: left;
}

.clinicInfoSection .timeTableFrame table thead th:not(:first-child) {
	width: 9%;
}

.clinicInfoSection .timeTableFrame table th:last-child,
.clinicInfoSection .timeTableFrame table td:last-child {
	border-right: 0;
}

.clinicInfoSection .timeTableFrame table tr + tr {
	border-top: 1px solid #dedede;
}

.clinicInfoSection .timeTableFrame table thead {
	background: #d59fd2;
	color: #000000;
}

.clinicInfoSection .timeTableFrame table tbody th {
	background: #eee;
}

.clinicInfoSection .addressFrame .access {
	margin: 25px 0;
}

.clinicInfoSection .addressFrame .company {
	font-weight: bold;
}

.clinicInfoSection .addressFrame .telFrame i {
	position: relative;
	top: -2px;
	margin-right: 10px;
	font-size: 24px;
	font-size: 2.4rem;
}

.clinicInfoSection .addressFrame .telFrame a:link,
.clinicInfoSection .addressFrame .telFrame a:hover,
.clinicInfoSection .addressFrame .telFrame a:visited {
	color: #000000;
	font-size: 27px;
	font-size: 2.7rem;
}


.section {
	overflow: hidden;
	padding: 5.3% 0;
}

.section.visible {
	overflow: visible;
}

.content > .section:last-child {
	padding-bottom: 0;
}


h1,
h2,
h3,
h4,
h5 {
	clear: both;
	margin: 0;
	font-weight: bold;
}

.ttl {
	position: relative;
	overflow: hidden;
	margin: 0 auto 20px;
	padding: 0;
	color: #fff;
	text-align: center;
	font-weight: 700;
	font-size: 45px;
	font-size: 4.5rem;
	line-height: 1.3;
	letter-spacing: .01em;
	text-shadow: 0 1px 0 #000, 1px 0 0 #000, 1px 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, -1px -1px 0 #000;
}

.ttl.pg_ttl {
	font-size: 60px;
	font-size: 6.0rem;
	padding: 4.7% 0 2.6%;
}

.ttl .sub {
	display: block;
	margin: 3px auto 0;
	font-weight: 300;
	font-size: 24px;
	font-size: 2.4rem;
}

.ttl.light {
	font-size: 40px;
	font-size: 4.0rem;
	font-weight: 300;
	color: #000;
	text-shadow: none;
}

.ttl.light.ja {
	font-weight: 500;
}

.ttl.text-left {
	text-align: left;
}

.ttl_m {
	position: relative;
	overflow: hidden;
	margin: 0 auto 40px;
	line-height: 1.6;
	font-size: 30px;
	font-size: 3.0rem;
	font-weight: 500;
	text-align: center;
}

.ttl_s {
	margin: 0;
	padding: 0;
	font-size: 40px;
	font-size: 4.0rem;
	font-weight: 400;
	text-align: center;
}

.ttl_s:first-child {
	margin: 0 auto 30px;
}

.ttl_vertical {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.ja {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-weight: 500;
}

.btn {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0 auto;
	padding: 17px 10px;
	max-width: 237px;
	border: 1px solid #000;
	color: #000;
	font-family: 'Raleway', sans-serif;
	font-weight: 400;
	text-align: center;
	text-decoration: none;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.3;
}

.btn.ja {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-weight: 500;
}

.btn:before {
	position: absolute;
	top: 50%;
	right: 20px;
	display: block;
	margin: -2px 0 0;
	width: 4px;
	height: 4px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	content: "";
	vertical-align: middle;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.btn:link, .btn:visited, .btn:hover {
	color: #000;
	text-decoration: none;
}

 .btn:hover {
	opacity: .5;
	border-color: rgba(0,0,0,.8);
}
@media only screen and (max-width: 1200px) {
.gnav li.mail a  {	
	font-size: 20px;
	font-size: 2.0rem;
        line-height: 1.2;
}
}
/* 幅1200px以上から
------------------------------------------------------------*/
@media only screen and (min-width: 1200px) {
	header .logoFrame {
		width: 339px;
	}

	header .telFrame {
		padding: 5px 13px;
		width: 225px;
	}

	header .telFrame p {
		font-size: 14px;
	}

	header .telFrame i {
		font-size: 24px;
		font-size: 2.4rem;
	}

        .gnav li a {
	display: inline-block;
	position: relative;
	color: #000;
	text-align: center;
	text-decoration: none;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.4;
	white-space: nowrap;
}

	header .telFrame a:link,
	header .telFrame a:hover,
	header .telFrame a:visited {
		font-size: 27px;
		font-size: 2.7rem;
	}

	footer {
	        margin: 95px auto 0;
		padding: 60px 0 0;
	}

	.section {
		padding: 65px 0;
	}

	.ttl.pg_ttl {
		padding: 65px 0 35px;
	}
}


/* 幅991px以下から
------------------------------------------------------------*/
@media only screen and (max-width: 991px) {
	/* ===== MODULES (sp) ===== */
	img {
		max-width: 100%;
		height: auto;
	}

	.pc {
		display: none;
	}

	.tab, .tab.sp {
		display: block !important;
	}

	.colWrap {
		display: block;
	}

	.colWrap:not(.tab-colWrap).col2 .box {
		width: auto;
	}

	.colWrap:not(.tab-colWrap).col2.sp0 .box {
		width: auto;
	}

	.colWrap:not(.tab-colWrap).col3 .box {
		width: auto;
	}

	.colWrap:not(.tab-colWrap).col3.sp0 .box {
		width: auto;
	}

	.colWrap:not(.tab-colWrap).col4 .box {
		width: auto;
	}

	.colWrap:not(.tab-colWrap).col4.sp0 .box {
		width: auto;
	}

	.colWrap:not(.tab-colWrap).col5 .box {
		width: auto;
	}

	.colWrap:not(.tab-colWrap).col5.sp0 .box {
		width: auto;
	}

	.tab-colWrap,
	.colWrap.tab-colWrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		justify-content: space-between;
	}

	/* plus detail-page 20180910 */
	.colWrap.tab-colWrap.det-minipic {
		justify-content: start;
	}

	.tab-colWrap.tab-rtl {
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
	}

	.tab-colWrap.tab-wrap {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.tab-colWrap.tab-boxAlign-left {
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		justify-content: flex-start;
	}

	.tab-colWrap.tab-boxAlign-center {
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		justify-content: space-between;
	}

	.colWrap.tab-colWrap.tab-col2.full {
		margin-right: -1.4%;
		margin-left: -1.4%;
	}

	.colWrap.tab-colWrap.tab-col2 .box,
	.colWrap.tab-colWrap.tab-col2 .tab-box {
		margin-right: 1.4%;
		margin-left: 1.4%;
		width: 47.8409090909%;
		width: calc(calc(100% / 2) - 2.8%);
	}

	.colWrap.tab-colWrap.tab-col2.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.tab-colWrap.tab-col2.sp0 .box, .colWrap.tab-colWrap.tab-col2.sp0 .tab-box {
		width: 50%;
	}

	.colWrap.tab-colWrap.tab-col3.full {
		margin-right: -1.4%;
		margin-left: -1.4%;
	}

	.colWrap.tab-colWrap.tab-col3 .box,
	.colWrap.tab-colWrap.tab-col3 .tab-box {
		margin-right: 1.4%;
		margin-left: 1.4%;
		width: 31.1742424242%;
		width: calc(calc(100% / 3) - 2.8%);
	}

	.colWrap.tab-colWrap.tab-col3.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.tab-colWrap.tab-col3.sp0 .box, .colWrap.tab-colWrap.tab-col3.sp0 .tab-box {
		width: 33.3333333333%;
	}

	.colWrap.tab-colWrap.tab-col4.full {
		margin-right: -1.4%;
		margin-left: -1.4%;
	}

	.colWrap.tab-colWrap.tab-col4 .box,
	.colWrap.tab-colWrap.tab-col4 .tab-box {
		margin-right: 1.4%;
		margin-left: 1.4%;
		width: 22.8409090909%;
		width: calc(calc(100% / 4) - 2.8%);
	}

	.colWrap.tab-colWrap.tab-col4.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.tab-colWrap.tab-col4.sp0 .box, .colWrap.tab-colWrap.tab-col4.sp0 .tab-box {
		width: 25%;
	}

	.colWrap.tab-colWrap.tab-col5.full {
		margin-right: -1.4%;
		margin-left: -1.4%;
	}

	.colWrap.tab-colWrap.tab-col5 .box,
	.colWrap.tab-colWrap.tab-col5 .tab-box {
		margin-right: 1.4%;
		margin-left: 1.4%;
		width: 17.8409090909%;
		width: calc(calc(100% / 5) - 2.8%);
	}

	.colWrap.tab-colWrap.tab-col5.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.tab-colWrap.tab-col5.sp0 .box, .colWrap.tab-colWrap.tab-col5.sp0 .tab-box {
		width: 20%;
	}

	table:not(.tab-table) th,
	table:not(.tab-table) td {
		display: block;
		width: 100% !important;
	}

	table:not(.tab-table) tr:last-child td {
		border-bottom: 1px solid #dcdcdc;
	}

	table:not(.tab-table) th {
		font-weight: bold;
	}

	table:not(.tab-table) td {
		padding-left: 1.8em;
	}

	table.tab-table th,
	table.tab-table td {
		padding: 10px 10px 8px;
		font-weight: 500;
	}

	input[type="text"].tab-max,
	input[type="tel"].tab-max,
	input[type="email"].tab-max,
	select.tab-max,
	textarea.tab-max {
		width: 100%;
	}

	/* ===== COMMON STYLES ===== */
	body {
		clear: both;
		content: 'tab';
	}

	header,header .colWrap {
		height: 70px;
	}

	header .logoFrame {
		flex: 0 0 26%;
	}

	/* gnav */
	header .navFrame {
		padding: 0;
		flex: 0 0 70%;
		width: auto;
		min-width: 1px;
		/* max-width: 600px; */
		max-width: 69vw;
	}

	header .telFrame {
		overflow: hidden;
		position: relative;
		width: 40px;
		height: 40px;
	}

	header .telFrame p {
		display: none;
	}

	header .telFrame a {
		display: block;
		padding: 40px 0 0;
		width: 40px;
		height: 0;
	}

	header .telFrame a i {
		position: absolute;
		left: 0;
		top: 0;
		margin: 0;
		padding: 0 4px 0 0;
		width: 40px;
		height: 40px;
		line-height: 40px;
		font-size: 18px;
		font-size: 1.8rem;
		text-align: center;
	}

	.gnav {
		min-width: 450px;
		width: 90%;
	}

	.gnav li a {
		/* font-size: 13px;
		font-size: 1.3rem; */
		font-size: 1.4vw;
	}

	.gnav .nav_contact a {
		padding: 6px 7px;
	}

	.content {
		margin: 70px auto 0;
	}


	/* footer */
	footer {
		padding: 4.5% 0 0;
	}


	/* CLINIC INFO SECTION  */
	.clinicInfoSection .ttl.light {
		font-size: 26px;
		font-size: 2.6rem;
	}

	.clinicInfoSection .timeTableFrame table th:first-child {
		padding: 15px 10px;
		font-size: 15px;
		font-size: 1.5rem;
	}

	.clinicInfoSection .timeTableFrame {
		width: 45%;
	}

	.clinicInfoSection .addressFrame {
		width: 55%;
		line-height: 1.6;
	}

	.clinicInfoSection .addressFrame .access {
		margin: 15px 0;
	}


	.ttl {
		margin: 0 auto 25px;
		font-size: 3.8px;
		font-size: 3.8rem;
	}

	.ttl.pg_ttl {
		font-size: 47px;
		font-size: 4.7rem;
		padding: 3% 0 2%;
	}

	.ttl.light {
		font-size: 30px;
		font-size: 3.0rem;
	}

	.ttl .sub {
		font-size: 18px;
		font-size: 1.8rem;
	}

	.ttl_m {
		margin: 0 auto 20px;
		line-height: 1.4;
		font-size: 20px;
		font-size: 2.0rem;
	}

	.ttl_s {
		margin: 20px auto;
		font-size: 30px;
		font-size: 3.0rem;
	}

	.ttl_s:first-child {
		margin: 0 auto 20px;
	}

	.btn {
		padding: 14px 10px;
		max-width: 200px;
	}
}

/* 幅767px以下から
------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
	/* ===== MODULES (sp) ===== */
	img {
		max-width: 100%;
		height: auto;
	}

	.pc, .tab, .pc.tab {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

	.colWrap,
	.colWrap.tab-colWrap {
		display: block;
	}

	.colWrap:not(.sp-colWrap).col2 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col2 .box {
		width: auto;
	}

	.colWrap:not(.sp-colWrap).col2.sp0 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col2.sp0 .box {
		width: auto;
	}

	.colWrap:not(.sp-colWrap).col3 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col3 .box {
		width: auto;
	}

	.colWrap:not(.sp-colWrap).col3.sp0 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col3.sp0 .box {
		width: auto;
	}

	.colWrap:not(.sp-colWrap).col4 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col4 .box {
		width: auto;
	}

	.colWrap:not(.sp-colWrap).col4.sp0 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col4.sp0 .box {
		width: auto;
	}

	.colWrap:not(.sp-colWrap).col5 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col5 .box {
		width: auto;
	}

	.colWrap:not(.sp-colWrap).col5.sp0 .box,
	.colWrap.tab-colWrap:not(.sp-colWrap).col5.sp0 .box {
		width: auto;
	}

	.sp-colWrap,
	.colWrap.sp-colWrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		justify-content: space-between;
	}

	.sp-colWrap.sp-rtl {
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
	}

	.sp-colWrap.sp-wrap {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.sp-colWrap.sp-boxAlign-left {
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		justify-content: flex-start;
	}

	.sp-colWrap.sp-boxAlign-center {
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		justify-content: space-between;
	}

	.colWrap.sp-colWrap.sp-col2.full {
		margin-right: -2.0746268657%;
		margin-left: -2.0746268657%;
	}

	.colWrap.sp-colWrap.sp-col2 .box,
	.colWrap.sp-colWrap.sp-col2 .sp-box {
		margin-right: 2.0746268657%;
		margin-left: 2.0746268657%;
		width: 45.8507462687%;
		width: calc(calc(100% / 2) - 4.1492537313%);
	}

	.colWrap.sp-colWrap.sp-col2.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.sp-colWrap.sp-col2.sp0 .box, .colWrap.sp-colWrap.sp-col2.sp0 .sp-box {
		width: 50%;
	}

	.colWrap.sp-colWrap.sp-col3.full {
		margin-right: -2.0746268657%;
		margin-left: -2.0746268657%;
	}

	.colWrap.sp-colWrap.sp-col3 .box,
	.colWrap.sp-colWrap.sp-col3 .sp-box {
		margin-right: 2.0746268657%;
		margin-left: 2.0746268657%;
		width: 29.184079602%;
		width: calc(calc(100% / 3) - 4.1492537313%);
	}

	.colWrap.sp-colWrap.sp-col3.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.sp-colWrap.sp-col3.sp0 .box, .colWrap.sp-colWrap.sp-col3.sp0 .sp-box {
		width: 33.3333333333%;
	}

	.colWrap.sp-colWrap.sp-col4.full {
		margin-right: -2.0746268657%;
		margin-left: -2.0746268657%;
	}

	.colWrap.sp-colWrap.sp-col4 .box,
	.colWrap.sp-colWrap.sp-col4 .sp-box {
		margin-right: 2.0746268657%;
		margin-left: 2.0746268657%;
		width: 20.8507462687%;
		width: calc(calc(100% / 4) - 4.1492537313%);
	}

	.colWrap.sp-colWrap.sp-col4.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.sp-colWrap.sp-col4.sp0 .box, .colWrap.sp-colWrap.sp-col4.sp0 .sp-box {
		width: 25%;
	}

	.colWrap.sp-colWrap.sp-col5.full {
		margin-right: -2.0746268657%;
		margin-left: -2.0746268657%;
	}

	.colWrap.sp-colWrap.sp-col5 .box,
	.colWrap.sp-colWrap.sp-col5 .sp-box {
		margin-right: 2.0746268657%;
		margin-left: 2.0746268657%;
		width: 15.8507462687%;
		width: calc(calc(100% / 5) - 4.1492537313%);
	}

	.colWrap.sp-colWrap.sp-col5.sp0 .box {
		margin-right: 0;
		margin-left: 0;
	}

	.colWrap.sp-colWrap.sp-col5.sp0 .box, .colWrap.sp-colWrap.sp-col5.sp0 .sp-box {
		width: 20%;
	}

	table:not(.sp-table) th,
	table:not(.sp-table) td,
	table.tab-table:not(.sp-table) th,
	table.tab-table:not(.sp-table) td {
		display: block;
		width: 100% !important;
		border-bottom: 0;
	}

	table:not(.sp-table) tr:last-child td,
	table.tab-table:not(.sp-table) tr:last-child td {
	/*	border-bottom: 1px solid #dcdcdc; */
	}

	table:not(.sp-table) th {
		font-weight: bold;
		border-bottom: 0;
	}

	table:not(.sp-table) td {
		padding: 10px 1em 25px;
		border-top: 0;
	}

	table.sp-table th,
	table.sp-table td {
		padding: 8px 8px 4px;
		font-weight: 500;
	}

	input[type="text"].sp-max,
	input[type="tel"].sp-max,
	input[type="email"].sp-max,
	select.sp-max,
	textarea.sp-max {
		width: 100%;
	}

	.mt5 {
		margin-top: 3.5px !important;
	}

	.mb5 {
		margin-bottom: 3.5px !important;
	}

	.ml5 {
		margin-left: 3.5px !important;
	}

	.mr5 {
		margin-right: 3.5px !important;
	}

	.pt5 {
		padding-top: 3.5px !important;
	}

	.pb5 {
		padding-bottom: 3.5px !important;
	}

	.pl5 {
		padding-left: 3.5px !important;
	}

	.pr5 {
		padding-right: 3.5px !important;
	}

	.mt10 {
		margin-top: 7px !important;
	}

	.mb10 {
		margin-bottom: 7px !important;
	}

	.ml10 {
		margin-left: 7px !important;
	}

	.mr10 {
		margin-right: 7px !important;
	}

	.pt10 {
		padding-top: 7px !important;
	}

	.pb10 {
		padding-bottom: 7px !important;
	}

	.pl10 {
		padding-left: 7px !important;
	}

	.pr10 {
		padding-right: 7px !important;
	}

	.mt15 {
		margin-top: 10.5px !important;
	}

	.mb15 {
		margin-bottom: 10.5px !important;
	}

	.ml15 {
		margin-left: 10.5px !important;
	}

	.mr15 {
		margin-right: 10.5px !important;
	}

	.pt15 {
		padding-top: 10.5px !important;
	}

	.pb15 {
		padding-bottom: 10.5px !important;
	}

	.pl15 {
		padding-left: 10.5px !important;
	}

	.pr15 {
		padding-right: 10.5px !important;
	}

	.mt20 {
		margin-top: 14px !important;
	}

	.mb20 {
		margin-bottom: 14px !important;
	}

	.ml20 {
		margin-left: 14px !important;
	}

	.mr20 {
		margin-right: 14px !important;
	}

	.pt20 {
		padding-top: 14px !important;
	}

	.pb20 {
		padding-bottom: 14px !important;
	}

	.pl20 {
		padding-left: 14px !important;
	}

	.pr20 {
		padding-right: 14px !important;
	}

	.mt25 {
		margin-top: 17.5px !important;
	}

	.mb25 {
		margin-bottom: 17.5px !important;
	}

	.ml25 {
		margin-left: 17.5px !important;
	}

	.mr25 {
		margin-right: 17.5px !important;
	}

	.pt25 {
		padding-top: 17.5px !important;
	}

	.pb25 {
		padding-bottom: 17.5px !important;
	}

	.pl25 {
		padding-left: 17.5px !important;
	}

	.pr25 {
		padding-right: 17.5px !important;
	}

	.mt30 {
		margin-top: 21px !important;
	}

	.mb30 {
		margin-bottom: 21px !important;
	}

	.ml30 {
		margin-left: 21px !important;
	}

	.mr30 {
		margin-right: 21px !important;
	}

	.pt30 {
		padding-top: 21px !important;
	}

	.pb30 {
		padding-bottom: 21px !important;
	}

	.pl30 {
		padding-left: 21px !important;
	}

	.pr30 {
		padding-right: 21px !important;
	}

	.mt35 {
		margin-top: 24.5px !important;
	}

	.mb35 {
		margin-bottom: 24.5px !important;
	}

	.ml35 {
		margin-left: 24.5px !important;
	}

	.mr35 {
		margin-right: 24.5px !important;
	}

	.pt35 {
		padding-top: 24.5px !important;
	}

	.pb35 {
		padding-bottom: 24.5px !important;
	}

	.pl35 {
		padding-left: 24.5px !important;
	}

	.pr35 {
		padding-right: 24.5px !important;
	}

	.mt40 {
		margin-top: 28px !important;
	}

	.mb40 {
		margin-bottom: 28px !important;
	}

	.ml40 {
		margin-left: 28px !important;
	}

	.mr40 {
		margin-right: 28px !important;
	}

	.pt40 {
		padding-top: 28px !important;
	}

	.pb40 {
		padding-bottom: 28px !important;
	}

	.pl40 {
		padding-left: 28px !important;
	}

	.pr40 {
		padding-right: 28px !important;
	}

	.mt45 {
		margin-top: 31.5px !important;
	}

	.mb45 {
		margin-bottom: 31.5px !important;
	}

	.ml45 {
		margin-left: 31.5px !important;
	}

	.mr45 {
		margin-right: 31.5px !important;
	}

	.pt45 {
		padding-top: 31.5px !important;
	}

	.pb45 {
		padding-bottom: 31.5px !important;
	}

	.pl45 {
		padding-left: 31.5px !important;
	}

	.pr45 {
		padding-right: 31.5px !important;
	}

	.mt50 {
		margin-top: 35px !important;
	}

	.mb50 {
		margin-bottom: 35px !important;
	}

	.ml50 {
		margin-left: 35px !important;
	}

	.mr50 {
		margin-right: 35px !important;
	}

	.pt50 {
		padding-top: 35px !important;
	}

	.pb50 {
		padding-bottom: 35px !important;
	}

	.pl50 {
		padding-left: 35px !important;
	}

	.pr50 {
		padding-right: 35px !important;
	}

	.sp-mt0 {
		margin-top: 0 !important;
	}

	.sp-mb0 {
		margin-bottom: 0 !important;
	}

	.sp-pt0 {
		padding-top: 0 !important;
	}

	.sp-pb0 {
		padding-bottom: 0 !important;
	}

	.sp-mt10 {
		margin-top: 10px !important;
	}

	.sp-mb10 {
		margin-bottom: 10px !important;
	}

	.sp-pt10 {
		padding-top: 10px !important;
	}

	.sp-pb10 {
		padding-bottom: 10px !important;
	}

	.sp-mt15 {
		margin-top: 15px !important;
	}

	.sp-mb15 {
		margin-bottom: 15px !important;
	}

	.sp-pt15 {
		padding-top: 15px !important;
	}

	.sp-pb15 {
		padding-bottom: 15px !important;
	}

	.sp-mt20 {
		margin-top: 20px !important;
	}

	.sp-mb20 {
		margin-bottom: 20px !important;
	}

	.sp-pt20 {
		padding-top: 20px !important;
	}

	.sp-pb20 {
		padding-bottom: 20px !important;
	}

	.sp-mt30 {
		margin-top: 30px !important;
	}

	.sp-mb30 {
		margin-bottom: 30px !important;
	}

	.sp-pt30 {
		padding-top: 30px !important;
	}

	.sp-pb30 {
		padding-bottom: 30px !important;
	}


	/* ===== end - MODULES (sp) ===== */
	.sp-text-center {
		text-align: center !important;
	}

	.sp-text-left {
		text-align: left !important;
	}

	.sp-text-right {
		text-align: right !important;
	}

	/* ===== COMMON STYLES ===== */
	body {
		clear: both;
		content: 'sp';
	}


	body:before {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 99;
		display: block;
		visibility: hidden;
		width: 100%;
		height: 100vh;
		background-color: black;
		content: "";
		opacity: 0;
		-webkit-transition: all 0.4s ease-out;
		transition: all 0.4s ease-out;
	}

	body.fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
	}

	body.fixed:before {
		visibility: visible;
		opacity: 0.4;
	}

	/* header */
	header {
		height: 60px;
	}

	header .colWrap {
		padding: 0;
	}

	header .logoFrame, header .navFrame {
		padding: 0;
		width: auto;
	}

	header .logoFrame {
		position: relative;
		padding: 0 0 0 15px;
		height: 60px;
		max-width: 100%;
		background: #fff;
		text-align: left;
		z-index: 20;
	}

	header .logoFrame a {
		display: block;
		margin: 0 0 0 2%;
		width: 180px;
	}

	header .navFrame {
		display: block;
		position: static;
		width: auto;
		max-width: 100%;
	}

	header .telFrame {
		position: absolute;
		top: 10px;
		right: 65px;
		z-index: 20;
	}

	.gnav {
		position: fixed;
		overflow:hidden;
		top: 60px;
		left: 0;
		width: 100%;
		height: 100vh;
		max-height: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		transition: max-height .3s ease-out;
		z-index: 10;
	}

	header .gnav nav {
		min-height: 360px;
	}

	.gnav.open {
		max-height: 100vh;
	}

	.gnav ul {
		display: block;
		background: rgba(255,255,255,.9);
		width: 100%;
		height: 100%;
		overflow-y: auto;
	}

	.gnav ul, .gnav li {
		display: block;
		padding: 0;
		width: auto;
	}

	.gnav li a {
		display: block;
		padding: 15px 20px !important;
		font-size: 1.4rem;
		border-top: 1px solid #ddd;
		text-align: left;
	}

	.gnav li:not(.nav_contact) a:before {
		display: none;
	}

	.gnav li.current a {
		border-bottom: 0;
	}

	.menuBtn div {
		opacity: 1;
		top: 0;
	}

	.container {
		padding-right: 5%;
		padding-left: 5%;
	}

	.content {
		margin-top: 60px;
	}

	/* footer */
	footer .fnavFrame {
		margin: 0 auto;
	}

	footer .fnavFrame .container {
		padding: 0;
	}

	footer .footerNav {
		display: block;
		overflow: hidden;
		border-bottom:  1px solid #cdcdcd;
	}

	footer .footerNav li {
		float: left;
		margin: 0;
		width: 50%;
		border-bottom: 1px solid #cdcdcd;
	}

	footer .footerNav li:nth-child(odd) {
		border-right: 1px solid #cdcdcd;
	}

	footer .footerNav li:nth-child(7) {
		border-bottom: 0;
	}

	footer .footerNav:after,
	footer .footerNav li:before {
		display: none;
	}

	footer .footerNav li a {
		display: block;
		padding: 15px 0;
	}

	footer .copyright {
		padding: 10px 0;
	}

	/* clinicInfo */
	.clinicInfoSection {
		padding-top: 40px;
	}

	.clinicInfoSection .mapFrame {
		margin: 35px auto;
	}

	.clinicInfoSection .colWrap .box.addressFrame {
		margin: 40px auto 5px;
	}

	.clinicInfoSection .addressFrame .telFrame {
		margin: 20px auto 0;
		text-align: center;
		z-index: 100;
	}


	/* pageTop */
	.pageTop {
		right: 10px;
		bottom: 10px;
	}

	.ttl {
		margin: 0 auto 15px;
		font-size: 26px;
		font-size: 2.6rem;
	}

	.ttl.pg_ttl {
		padding: 0 0 5px;
		font-size: 32px;
		font-size: 3.2rem;
	}

	.ttl.light {
		font-size: 26px;
		font-size: 2.6rem;
	}

	.ttl .sub {
		font-size: 16px;
		font-size: 1.6rem;
	}
}

.sec-2{margin-bottom:37px}
.sec-2__image{margin:0 -30px}
.sec-2__image div{background:url(../img/sec-2/img-hero.jpg) no-repeat;
background-size:100%;padding-top:133%}
.sec-2__item{color:#fff;
background-color:#ebe7dd;padding:40px 30px;margin:0 -30px 37px}
.sec-2__title{font-family:"TTCommons",sans-serif;font-size:4.3rem;font-weight:500;line-height:3.9rem;margin-bottom:9px}
.sec-2__subTitle{font-family:"TTCommons",sans-serif;font-size:2rem;margin-bottom:13px}
.sec-2__credit{font-family:"TTCommons",sans-serif;font-size:1.2rem;line-height:1.33;margin-bottom:17px}
.sec-2__list{font-family:"TTCommons",sans-serif;font-size:1.2rem}
.sec-2__list a{color:#fff;text-decoration:underline}
.sec-2__text{font-size:1.4rem;line-height:1.5}
.sec-2__text+.sec-2__text{margin-top:1.5em}
.sec2-2Content{margin-bottom:41px}
.sec2-2Content__profile{padding:32px 30px 29px;border:1px solid #ebe7dd;margin-bottom:37px}
.sec2-2Content__profileName{font-size:1.4rem;font-weight:bold;text-align:center;margin-bottom:15px}
.sec2-2Content__profileJob{font-size:1.4rem;text-align:center;margin-bottom:19px}
.sec2-2Content__profileText{font-size:1.4rem;line-height:1.5}
.sec2-2Content__text{font-size:1.4rem;line-height:1.5}
.sec2-2Content__text+.sec2-2Content__text{margin-top:1.5em}
.sec2-2Content__item{margin-top:38px}
.sec2-2Content__image1{margin:0 -30px 29px}
.sec2-2Content__image1 div{background:url(../img/sec-2/img-1.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2-2Content__list{font-family:"TTCommons",sans-serif;font-size:1.2rem;line-height:1.33;margin-bottom:28px}
.sec2-2Content__list a{text-decoration:underline}
.sec2-2Content__image2{margin:0 -30px 29px}
.sec2-2Content__image2 div{background:url(../img/sec-2/img-2.jpg) no-repeat;
background-size:100%;padding-top:133%}
.sec2-2Content__imageTitle{font-size:1.2rem;font-weight:bold;margin-bottom:18px}
.sec2-2Content__imageText{font-size:1.2rem;line-height:1.5;margin-bottom:28px}
.sec2-2Content__image3{margin:0 -30px 29px}
.sec2-2Content__image3 div{background:url(../img/sec-2/img-3.jpg) no-repeat;
background-size:100%;padding-top:47%}
.sec2-2Content__title{font-size:1.4rem;font-weight:bold;margin:31px 0 29px}
.sec2-2Content__image4{margin:0 -30px 29px}
.sec2-2Content__image4 div{background:url(../img/sec-2/img-4.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2-2Content__image5{margin:0 -30px 29px}
.sec2-2Content__image5 div{background:url(../img/sec-2/img-5.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2-2Content__address{position:relative;font-family:"TTCommons",sans-serif;font-size:1.2rem;font-weight:500;line-height:1.33;padding-left:25px;margin-bottom:28px}
.sec2-2Content__address::before{position:absolute;
background:url(../img/sec-2/ico-content.png) no-repeat;
background-size:100%;width:14px;height:17px;left:0;content:''}
.sec2-2Content__address dt{font-weight:500}
.sec2-2Content__address a{text-decoration:underline}
.sec2-2Content__image6{margin:0 -30px 41px}
.sec2-2Content__image6 div{background:url(../img/sec-2/img-6.jpg) no-repeat;
background-size:100%;padding-top:44%}
.sec2-2Content__image7{margin:0 -30px 27px}
.sec2-2Content__image7 div{background:url(../img/sec-2/img-7.jpg) no-repeat;
background-size:100%;padding-top:66.8%}
.sec2-2Content__caption{font-size:1.2rem;line-height:1.5;margin-bottom:39px}
.sec2-2Content__image8{margin:0 -30px 29px}
.sec2-2Content__image8 div{background:url(../img/sec-2/img-8.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2-2Content__image9{margin-bottom:29px}
.sec2-2Content__image9 div{background:url(../img/sec-2/img-9.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2-2Content__image10{margin-bottom:29px}
.sec2-2Content__image10 div{background:url(../img/sec-2/img-10.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2-2Content__image11{margin:0 -30px 29px}
.sec2-2Content__image11 div{background:url(../img/sec-2/img-11.jpg) no-repeat;
background-size:100%;padding-top:135%}
.sec2-2Content__image12{margin:0 -30px 29px}
.sec2-2Content__image12 div{background:url(../img/sec-2/img-12.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2-2Content__image13 div{background:url(../img/sec-2/img-13.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2-2Shop{color:#fff;
background-color:#ebe7dd;padding:34px 32px 31px}
.sec2-2Shop__image{margin-bottom:39px}
.sec2-2Shop__image div{background:url(../img/sec-2/img-shop.jpg) no-repeat;
background-size:100%;padding-top:56%}
.sec2-2Shop__title{font-size:1.4rem;font-weight:bold;text-align:center;margin-bottom:27px}
.sec2-2Shop__text{font-size:1.4rem;line-height:1.5;margin-bottom:16px}
.sec2-2Shop__contact{position:relative;font-family:"TTCommons",sans-serif;font-size:1.4rem;font-weight:500;line-height:1.29;padding-left:24px;margin-bottom:17px}
.sec2-2Shop__contact::before{position:absolute;
background:url(../img/sec-2/ico-shop.png) no-repeat;
background-size:100%;width:14px;height:17px;left:0;content:''}
.sec2-2Shop__contact dt{font-weight:500}
.sec2-2Shop__info{font-family:"TTCommons",sans-serif;font-size:1.4rem;font-weight:500;line-height:1.29;margin-bottom:16px}
.sec2-2Shop__note{font-size:1.4rem;line-height:1.5}
.sec2-2Video{margin:40px -30px}
.sec2-2Video__main{position:relative}
.sec2-2Video__content{width:100%;overflow:hidden}
.sec2-2Video__content.is-pc{display:none}
@media print, screen and (min-width: 768px){.sec2-2Video{margin-top:80px;margin-bottom:80px}
.sec2-2Video__content.is-sp{display:none}
.sec2-2Video__content.is-pc{display:block}}
@media print, screen and (min-width: 1170px){.sec2-2Video{margin-right:calc(((100vw - 1176px) / 2) * -1);margin-left:calc(((100vw - 1176px) / 2) * -1)}}
@media print, screen and (min-width: 768px){.sec-2{display:flex;align-items:flex-end;margin-bottom:59px}
.sec-2__image{order:1;min-width:50%;margin:0 0 0 60px}
.sec-2__image div{background-image:url(../img/sec-2/img-hero-pc.jpg);padding-top:150%}
.sec-2__item{position:relative;padding:201px 0 40px;margin:0 0 38px}
.sec-2__item::after{position:absolute;
background-color:#ebe7dd;width:200vw;height:100%;top:0;left:50%;z-index:-1;content:'';transform:translateX(-50%)}
.sec-2__title{font-size:8rem;line-height:1;margin-bottom:16px}
.sec-2__subTitle{font-size:2.2rem;margin-bottom:20px}
.sec-2__credit{font-size:1.4rem;line-height:1.5;margin-bottom:28px}
.sec-2__list{font-size:1.4rem}
.sec-2__text{font-size:1.6rem}
.sec2-2Content__profile{padding-bottom:27px;margin-bottom:55px}
.sec2-2Content__profileHead{display:flex;margin-bottom:28px}
.sec2-2Content__profileName{font-size:1.6rem;margin:0 2em 0 0}
.sec2-2Content__profileJob{font-size:1.6rem;margin-bottom:0}
.sec2-2Content__profileText{line-height:1.71}
.sec2-2Content__text{line-height:1.71}
.sec2-2Content__item{display:flex;justify-content:space-between;margin:56px 0 62px}
.sec2-2Content__item:nth-of-type(3)>div:first-of-type{width:53.99659863945578%}
.sec2-2Content__item:nth-of-type(3)>div:last-of-type{width:40.816326530612245%}
.sec2-2Content__item:nth-of-type(4)>div:first-of-type{order:1;width:53.99659863945578%}
.sec2-2Content__item:nth-of-type(4)>div:last-of-type{width:40.816326530612245%}
.sec2-2Content__item:nth-of-type(6)>div:first-of-type{width:52.295918367346939%}
.sec2-2Content__item:nth-of-type(6)>div:last-of-type{width:42.602040816326531%}
.sec2-2Content__item:nth-of-type(7)>div:first-of-type{width:47.534013605442177%}
.sec2-2Content__item:nth-of-type(7)>div:last-of-type{width:47.534013605442177%}
.sec2-2Content__image1{margin:0 0 29px}
.sec2-2Content__list{font-size:1.4rem;line-height:1.5;margin-bottom:0}
.sec2-2Content__image2{margin:0 0 29px}
.sec2-2Content__imageTitle{font-size:1.4rem;margin-bottom:16px}
.sec2-2Content__imageText{font-size:1.4rem;line-height:1.71;margin-bottom:30px}
.sec2-2Content__image3{margin:0}
.sec2-2Content__title{margin:35px 0}
.sec2-2Content__image4{margin:0 0 29px}
.sec2-2Content__column{display:flex;flex-direction:column}
.sec2-2Content__column>div:nth-of-type(2){order:-1}
.sec2-2Content__image5{margin:0 0 60px}
.sec2-2Content__address{font-size:1.4rem;line-height:1.5;margin-bottom:94px}
.sec2-2Content__image6{margin:0}
.sec2-2Content__image7{position:relative;width:100vw;margin:0 0 29px;left:50%;transform:translateX(-50%)}
.sec2-2Content__image7 div{background-image:url(../img/sec-2/img-7-pc.jpg);padding-top:50%}
.sec2-2Content__caption{font-size:1.4rem;text-align:center;margin-bottom:53px}
.sec2-2Content__image8{margin:0 0 60px}
.sec2-2Content__itemSmall{display:flex;justify-content:space-between}
.sec2-2Content__itemSmall>div:first-of-type{width:46.991869918699187%}
.sec2-2Content__itemSmall>div:last-of-type{width:47.317073170731707%}
.sec2-2Content__image9{margin-bottom:0}
.sec2-2Content__image10{margin-bottom:20px}
.sec2-2Content__image11{margin:0 0 28px}
.sec2-2Content__image11+.sec2-2Content__imageText{margin-bottom:0}
.sec2-2Content__image12{margin:0 0 50px}
.sec2-2Content__image12+.sec2-2Content__imageText{margin-bottom:50px}
.sec2-2Content__image13{width:69.230769230769231%;margin-bottom:0}
.sec2-2Shop{position:relative;display:flex;align-items:center;padding:30px 0}
.sec2-2Shop::after{position:absolute;
background-color:#ebe7dd;width:100vw;height:100%;left:50%;z-index:-1;content:'';transform:translateX(-50%)}
.sec2-2Shop__image{min-width:42.517006802721085%;margin:0 90px 0 0}
.sec2-2Shop__title{font-size:1.6rem;text-align:left;margin-bottom:28px}
.sec2-2Shop__text{line-height:1.71;margin-bottom:14px}
.sec2-2Shop__contact{line-height:1.5;padding-left:24px;margin-bottom:8px}
.sec2-2Shop__info{line-height:1.5;margin-bottom:14px}}
.sub-4Inner{background-color:#fdf8ee}

.sec-2s{margin-bottom:37px}
.sec-2s__image{margin:0 -30px}
.sec-2s__image div{background:url(../img/sec-2s/img-hero.jpg) no-repeat;
background-size:100%;padding-top:133%}
.sec-2s__item{color:#fff;
background-color:#ebe7dd;padding:40px 30px;margin:0 -30px 37px}
.sec-2s__title{font-family:"TTCommons",sans-serif;font-size:4.3rem;font-weight:500;line-height:3.9rem;margin-bottom:9px}
.sec-2s__subTitle{font-family:"TTCommons",sans-serif;font-size:2rem;margin-bottom:13px}
.sec-2s__credit{font-family:"TTCommons",sans-serif;font-size:1.2rem;line-height:1.33;margin-bottom:17px}
.sec-2s__list{font-family:"TTCommons",sans-serif;font-size:1.2rem}
.sec-2s__list a{color:#fff;text-decoration:underline}
.sec-2s__text{font-size:1.4rem;line-height:1.5}
.sec-2s__text+.sec-2s__text{margin-top:1.5em}
.sec2s-2Content{margin-bottom:41px}
.sec2s-2Content__profile{padding:32px 30px 29px;border:1px solid #ebe7dd;margin-bottom:37px}
.sec2s-2Content__profileName{font-size:1.4rem;font-weight:bold;text-align:center;margin-bottom:15px}
.sec2s-2Content__profileJob{font-size:1.4rem;text-align:center;margin-bottom:19px}
.sec2s-2Content__profileText{font-size:1.4rem;line-height:1.5}
.sec2s-2Content__text{font-size:1.4rem;line-height:1.5}
.sec2s-2Content__text+.sec2-2Content__text{margin-top:1.5em}
.sec2s-2Content__item{margin-top:38px}
.sec2s-2Content__image1{margin:0 -30px 29px}
.sec2s-2Content__image1 div{background:url(../img/sec-2s/img-1.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2s-2Content__list{font-family:"TTCommons",sans-serif;font-size:1.2rem;line-height:1.33;margin-bottom:28px}
.sec2s-2Content__list a{text-decoration:underline}
.sec2s-2Content__image2{margin:0 -30px 29px}
.sec2s-2Content__image2 div{background:url(../img/sec-2s/img-2.jpg) no-repeat;
background-size:100%;padding-top:133%}
.sec2s-2Content__imageTitle{font-size:1.2rem;font-weight:bold;margin-bottom:18px}
.sec2s-2Content__imageText{font-size:1.2rem;line-height:1.5;margin-bottom:28px}
.sec2s-2Content__image3{margin:0 -30px 29px}
.sec2s-2Content__image3 div{background:url(../img/sec-2s/img-3.jpg) no-repeat;
background-size:100%;padding-top:47%}
.sec2s-2Content__title{font-size:1.4rem;font-weight:bold;margin:31px 0 29px}
.sec2s-2Content__image4{margin:0 -30px 29px}
.sec2s-2Content__image4 div{background:url(../img/sec-2s/img-4.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2s-2Content__image5{margin:0 -30px 29px}
.sec2s-2Content__image5 div{background:url(../img/sec-2s/img-5.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2s-2Content__address{position:relative;font-family:"TTCommons",sans-serif;font-size:1.2rem;font-weight:500;line-height:1.33;padding-left:25px;margin-bottom:28px}
.sec2s-2Content__address::before{position:absolute;
background:url(../img/sec-2/ico-content.png) no-repeat;
background-size:100%;width:14px;height:17px;left:0;content:''}
.sec2s-2Content__address dt{font-weight:500}
.sec2s-2Content__address a{text-decoration:underline}
.sec2s-2Content__image6{margin:0 -30px 41px}
.sec2s-2Content__image6 div{background:url(../img/sec-2s/img-6.jpg) no-repeat;
background-size:100%;padding-top:44%}
.sec2s-2Content__image7{margin:0 -30px 27px}
.sec2s-2Content__image7 div{background:url(../img/sec-2s/img-7.jpg) no-repeat;
background-size:100%;padding-top:66.8%}
.sec2s-2Content__caption{font-size:1.2rem;line-height:1.5;margin-bottom:39px}
.sec2s-2Content__image8{margin:0 -30px 29px}
.sec2s-2Content__image8 div{background:url(../img/sec-2s/img-8.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2s-2Content__image9{margin-bottom:29px}
.sec2s-2Content__image9 div{background:url(../img/sec-2s/img-9.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2s-2Content__image10{margin-bottom:29px}
.sec2s-2Content__image10 div{background:url(../img/sec-2s/img-10.jpg) no-repeat;
background-size:100%;padding-top:150%}
.sec2s-2Content__image11{margin:0 -30px 29px}
.sec2s-2Content__image11 div{background:url(../img/sec-2s/img-11.jpg) no-repeat;
background-size:100%;padding-top:135%}
.sec2s-2Content__image12{margin:0 -30px 29px}
.sec2s-2Content__image12 div{background:url(../img/sec-2s/img-12.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2s-2Content__image13 div{background:url(../img/sec-2s/img-13.jpg) no-repeat;
background-size:100%;padding-top:67%}
.sec2s-2Shop{color:#fff;
background-color:#ebe7dd;padding:34px 32px 31px}
.sec2s-2Shop__image{margin-bottom:39px}
.sec2s-2Shop__image div{background:url(../img/sec-2s/img-shop.jpg) no-repeat;
background-size:100%;padding-top:56%}
.sec2s-2Shop__title{font-size:1.4rem;font-weight:bold;text-align:center;margin-bottom:27px}
.sec2s-2Shop__text{font-size:1.4rem;line-height:1.5;margin-bottom:16px}
.sec2s-2Shop__contact{position:relative;font-family:"TTCommons",sans-serif;font-size:1.4rem;font-weight:500;line-height:1.29;padding-left:24px;margin-bottom:17px}
.sec2s-2Shop__contact::before{position:absolute;
background:url(../img/sec-2s/ico-shop.png) no-repeat;
background-size:100%;width:14px;height:17px;left:0;content:''}
.sec2s-2Shop__contact dt{font-weight:500}
.sec2s-2Shop__info{font-family:"TTCommons",sans-serif;font-size:1.4rem;font-weight:500;line-height:1.29;margin-bottom:16px}
.sec2s-2Shop__note{font-size:1.4rem;line-height:1.5}
.sec2s-2Video{margin:40px -30px}
.sec2s-2Video__main{position:relative}
.sec2s-2Video__content{width:100%;overflow:hidden}
.sec2s-2Video__content.is-pc{display:none}
@media print, screen and (min-width: 768px){.sec2s-2Video{margin-top:80px;margin-bottom:80px}
.sec2s-2Video__content.is-sp{display:none}
.sec2s-2Video__content.is-pc{display:block}}
@media print, screen and (min-width: 1170px){.sec2s-2Video{margin-right:calc(((100vw - 1176px) / 2) * -1);margin-left:calc(((100vw - 1176px) / 2) * -1)}}
@media print, screen and (min-width: 768px){.sec-2s{display:flex;align-items:flex-end;margin-bottom:59px}
.sec-2s__image{order:1;min-width:50%;margin:0 0 0 60px}
.sec-2s__image div{background-image:url(../img/sec-2s/img-hero-pc.jpg);padding-top:150%}
.sec-2s__item{position:relative;padding:201px 0 40px;margin:0 0 38px}
.sec-2s__item::after{position:absolute;
background-color:#ebe7dd;width:200vw;height:100%;top:0;left:50%;z-index:-1;content:'';transform:translateX(-50%)}
.sec-2s__title{font-size:8rem;line-height:1;margin-bottom:16px}
.sec-2s__subTitle{font-size:2.2rem;margin-bottom:20px}
.sec-2s__credit{font-size:1.4rem;line-height:1.5;margin-bottom:28px}
.sec-2s__list{font-size:1.4rem}
.sec-2s__text{font-size:1.6rem}
.sec2s-2Content__profile{padding-bottom:27px;margin-bottom:55px}
.sec2s-2Content__profileHead{display:flex;margin-bottom:28px}
.sec2s-2Content__profileName{font-size:1.6rem;margin:0 2em 0 0}
.sec2s-2Content__profileJob{font-size:1.6rem;margin-bottom:0}
.sec2s-2Content__profileText{line-height:1.71}
.sec2s-2Content__text{line-height:1.71}
.sec2s-2Content__item{display:flex;justify-content:space-between;margin:56px 0 62px}
.sec2s-2Content__item:nth-of-type(3)>div:first-of-type{width:53.99659863945578%}
.sec2s-2Content__item:nth-of-type(3)>div:last-of-type{width:40.816326530612245%}
.sec2s-2Content__item:nth-of-type(4)>div:first-of-type{order:1;width:53.99659863945578%}
.sec2s-2Content__item:nth-of-type(4)>div:last-of-type{width:40.816326530612245%}
.sec2s-2Content__item:nth-of-type(6)>div:first-of-type{width:52.295918367346939%}
.sec2s-2Content__item:nth-of-type(6)>div:last-of-type{width:42.602040816326531%}
.sec2s-2Content__item:nth-of-type(7)>div:first-of-type{width:47.534013605442177%}
.sec2s-2Content__item:nth-of-type(7)>div:last-of-type{width:47.534013605442177%}
.sec2s-2Content__image1{margin:0 0 29px}
.sec2s-2Content__list{font-size:1.4rem;line-height:1.5;margin-bottom:0}
.sec2s-2Content__image2{margin:0 0 29px}
.sec2s-2Content__imageTitle{font-size:1.4rem;margin-bottom:16px}
.sec2s-2Content__imageText{font-size:1.4rem;line-height:1.71;margin-bottom:30px}
.sec2s-2Content__image3{margin:0}
.sec2s-2Content__title{margin:35px 0}
.sec2s-2Content__image4{margin:0 0 29px}
.sec2s-2Content__column{display:flex;flex-direction:column}
.sec2s-2Content__column>div:nth-of-type(2){order:-1}
.sec2s-2Content__image5{margin:0 0 60px}
.sec2s-2Content__address{font-size:1.4rem;line-height:1.5;margin-bottom:94px}
.sec2s-2Content__image6{margin:0}
.sec2s-2Content__image7{position:relative;width:100vw;margin:0 0 29px;left:50%;transform:translateX(-50%)}
.sec2s-2Content__image7 div{background-image:url(../img/sec-2/img-7-pc.jpg);padding-top:50%}
.sec2s-2Content__caption{font-size:1.4rem;text-align:center;margin-bottom:53px}
.sec2s-2Content__image8{margin:0 0 60px}
.sec2s-2Content__itemSmall{display:flex;justify-content:space-between}
.sec2s-2Content__itemSmall>div:first-of-type{width:46.991869918699187%}
.sec2s-2Content__itemSmall>div:last-of-type{width:47.317073170731707%}
.sec2s-2Content__image9{margin-bottom:0}
.sec2s-2Content__image10{margin-bottom:20px}
.sec2s-2Content__image11{margin:0 0 28px}
.sec2s-2Content__image11+.sec2-2Content__imageText{margin-bottom:0}
.sec2s-2Content__image12{margin:0 0 50px}
.sec2s-2Content__image12+.sec2-2Content__imageText{margin-bottom:50px}
.sec2s-2Content__image13{width:69.230769230769231%;margin-bottom:0}
.sec2s-2Shop{position:relative;display:flex;align-items:center;padding:30px 0}
.sec2s-2Shop::after{position:absolute;
background-color:#ebe7dd;width:100vw;height:100%;left:50%;z-index:-1;content:'';transform:translateX(-50%)}
.sec2s-2Shop__image{min-width:42.517006802721085%;margin:0 90px 0 0}
.sec2s-2Shop__title{font-size:1.6rem;text-align:left;margin-bottom:28px}
.sec2s-2Shop__text{line-height:1.71;margin-bottom:14px}
.sec2s-2Shop__contact{line-height:1.5;padding-left:24px;margin-bottom:8px}
.sec2s-2Shop__info{line-height:1.5;margin-bottom:14px}}

.l-main{padding-top:52px;max-width:1600px;margin-right:auto;margin-left:auto;position:relative;z-index:1}
.home .l-main{max-width:inherit}
.l-main__inner{padding-right:30px;padding-left:30px}
@media print, screen and (min-width: 768px){.l-main{padding-top:70px}
.l-main__inner{max-width:1236px;margin:0 auto}
.ines .l-main__inner{max-width:1206px}}