@charset "utf-8";/* --------------------------------------------------- *//* ローディング *//* --------------------------------------------------- */.loading {	position: fixed;	top: 0;	left: 0;	width: 100%;	height: 100vh;	background-color: #fff;	z-index: 999;}.loading ul {	position: absolute;	top: 50%;	left: 50%;	width: 128px;	height: 128px;	transform: translate(-50%, -50%);}.loading ul li {	position: absolute;	display: block;	border-radius: 50%;	animation-duration: 4.0s;	animation-timing-function: linear;	animation-iteration-count: infinite;	opacity: 0.0;}.loading ul li:first-child {	left: 42px;	top: 84px;	width: 42px;	height: 42px;	background-color: rgba(70, 179, 255, 1.0);	animation-name: fade;	animation-delay: 0.5s;}.loading ul li:nth-child(2) {	left: 8px;	top: 102px;	width: 14px;	height: 14px;	background-color: rgba(80, 120, 255, 1.0);	animation-name: fade;	animation-delay: 0.7s;}.loading ul li:nth-child(3) {	left: 77px;	top: 80px;	width: 30px;	height: 30px;	background-color: rgba(255, 120, 0, 0.7);	animation-name: fade;	animation-delay: 0.9s;}.loading ul li:nth-child(4) {	left: 38px;	top: 66px;	width: 34px;	height: 34px;	background-color: rgba(255, 210, 0, 0.77);	animation-name: fade;	animation-delay: 1.1s;}.loading ul li:nth-child(5) {	left: 87px;	top: 50px;	width: 18px;	height: 18px;	background-color: rgba(110, 61, 188, 0.7);	z-index: 1;	animation-name: fade;	animation-delay: 1.3s;}.loading ul li:nth-child(6) {	left: 90px;	top: 33px;	width: 28px;	height: 28px;	background-color: rgba(255, 111, 139, 1.0);	animation-name: fade;	animation-delay: 1.5s;}.loading ul li:nth-child(7) {	left: 66px;	top: 26px;	width: 12px;	height: 12px;	background-color: rgba(255, 159, 0, 1.0);	animation-name: fade;	animation-delay: 1.7s;}.loading ul li:last-child {	left: 68px;	top: 3px;	width: 20px;	height: 20px;	background-color: rgba(189, 229, 100, 1.0);	animation-name: fade;	animation-delay: 1.9s;}@keyframes fade {	0% { opacity: 0.0; transform:scale(0.5); }	15% { opacity: 1.0; }	30% { opacity: 1.0; transform:scale(1.0); }	70% { opacity: 0.0; transform:scale(1.0); }	100% { opacity: 0.0; transform:scale(0.5); }}/* --------------------------------------------------- *//* お知らせ関連 *//* --------------------------------------------------- */.postlist div { font-size: 1.4rem; }.postlist div::before {	display: inline-block;	margin-right: 8px;	width: 100px;	color: #fff;	font-size: 1.1rem;	line-height: 24px;	text-align: center;}@media screen and (max-width: 419px) {	.postlist div { font-size: 1.2rem; }	.postlist div::before {		margin-right: 8px;		width: 90px;		font-size: 1.0rem;		line-height: 22px;	}}/* カテゴリー設定 */.postlist div.cat-00::before { content: 'トピックス'; background-color: #666; }.postlist div.cat-01::before { content: '歯科ニュース'; background-color: #dc649b; }.postlist div.cat-02::before { content: '製品情報'; background-color: #00aadc; }.postlist div.cat-03::before { content: '臨床評価'; background-color: #3cb46e; }.postlist div.cat-04::before { content: '情報チャンネル'; background-color: #e6aa50; }.postlist div.cat-05::before { content: '歯科辞書'; background-color: #dc6441; }.postlist div.cat-06::before { content: 'セミナー情報'; background-color: #4682be; }.postlist div.cat-07::before { content: '歯科書籍情報'; background-color: #a55a9b; }.postlist div.cat-08::before { content: '学会情報'; background-color: #28aaaa; }.postlist div.cat-09::before { content: '国試対策'; background-color: #5a5096; }.postlist div.cat-10::before { content: 'アプリ'; background-color: #6eaa23; }.postlist div.cat-11::before { content: 'OS Labo'; background-color: #aac863; }/* --------------------------------------------------- *//* 一覧ボタン *//* --------------------------------------------------- */.btn-list { margin-top: 10px; text-align: right; }.btn-list a {	position: relative;	display: inline-block;	padding-right: 15px;	font-size: 1.4rem;	transition: all .3s;}.btn-list a::after {	content: '';	position: absolute;	top: 50%;	right: 0;	width: 7px;	height: 7px;	border-top: 1px solid #6e6e6e;	border-right: 1px solid #6e6e6e;	transform: translateY(-50%) rotate(45deg);}@media screen and (min-width: 768px) {	#headline .postlist .btn-list a:hover { opacity: 0.5; }}@media screen and (max-width: 767px) {	.btn-list { text-align: center; }	.btn-list a { font-size: 1.3rem; }}@media screen and (max-width: 419px) {	.btn-list a { padding-right: 10px; font-size: 1.2rem; }	.btn-list a::after { width: 5px; height: 5px; }}/* --------------------------------------------------- *//* もっと見るボタン *//* --------------------------------------------------- */.btn-more {	margin: 30px auto 0;	width: 100%;	max-width: 210px;}.btn-more a {	display: block;	width: 100%;	background-color: #666;	border-radius: 8px;	text-align: center;	transition: all .5s;}.btn-more a span {	display: inline-block;	color: #fff;	font-size: 1.4rem;	font-weight: 500;	line-height: 36px;}.btn-more a span.icw {	padding-left: 30px;	background-repeat: no-repeat;	background-position: 0 50%;	background-size: 24px 24px;}@media screen and (min-width: 768px) {	.btn-more a:hover { opacity: 0.5; }}/* もっと見るボタン2 *//* --------------------------------------------------- */.btn-add {	margin: 40px auto 0;	width: 100%;	max-width: 160px;}.btn-add a {	display: block;	width: 100%;	border: 2px solid #eee;	border-radius: 18px;	text-align: center;	transition: all .5s;}.btn-add a span {	position: relative;	display: inline-block;	padding-left: 20px;	color: #666;	font-size: 1.2rem;	font-weight: 500;	line-height: 32px;}.btn-add a span::before,.btn-add a span::after {	content: '';	position: absolute;	display: block;	background-color: #666;}.btn-add a span::before { top: 50%; left: 0; width: 12px; height: 2px; }.btn-add a span::after { top: 11px; left: 5px; width: 2px; height: 12px; }@media screen and (min-width: 768px) {	.btn-add a:hover { opacity: 0.5; }}@media screen and (max-width: 419px) {	.btn-add { margin: 20px auto 0; }}/* --------------------------------------------------- *//* Page-Title *//* --------------------------------------------------- */.pgtitle {	position: relative;	padding-top: 50px;	padding-bottom: 50px;	padding-left: 4%;	padding-right: 4%;}.pgtitle::after {	content: '';	position: absolute;	bottom: 0;	right: 0;	width: 460px;	height: 100%;	background-repeat: no-repeat;	background-size: auto 100%;	background-position: 100% 100%;}.pgtitle h2 {	margin: 0 auto;	padding-left: 56px;	max-width: 960px;	background-repeat: no-repeat;	background-position: 0 50%;	background-size: auto 100%;	color: #fff;	font-size: 2.0rem;	font-weight: 500;	line-height: 48px;	box-sizing: border-box;}.pgtitle h2 span {	margin-right: 4px;	font-family: 'Montserrat', 'Noto Snas JP', sans-serif;	font-size: 2.1rem;	font-weight: inherit;}@media screen and (max-width: 959px) {	.pgtitle { padding-top: 40px; padding-bottom: 40px; }}@media screen and (max-width: 767px) {	.pgtitle { padding-top: 30px; padding-bottom: 30px; }	.pgtitle h2 {		padding-left: 48px;		line-height: 42px;	}}@media screen and (max-width: 639px) {	.pgtitle { padding-top: 30px; padding-bottom: 30px;  }	.pgtitle.imgoff { padding-bottom: 30px; }	.pgtitle::after { display: none; }}@media screen and (max-width: 419px) {	.pgtitle { padding-top: 20px; padding-bottom: 20px; }	.pgtitle.imgoff { padding-bottom: 20px; }	.pgtitle h2 {		padding-left: 42px;		font-size: 1.8rem;		line-height: 36px;	}	.pgtitle h2 span { font-size: 2.0rem; }}/* --------------------------------------------------- *//* 検索　Search-board *//* --------------------------------------------------- */.search-board { background-color: #f0f0f0; }.search-board .search-block {	margin: 0 auto;	width: 92%;	max-width: 960px;}.search-block h3 { margin-bottom: 30px; text-align: center; }.search-block h3 em { padding: 0 4px; font-size: 2.4rem; }.search-block form dl { display: block; border-bottom: 1px solid #fff; }.search-block form dl dt {	display: inline-block;	padding-top: 35px;	width: 210px;	float: left;}.search-block form dl dd {	padding: 30px 0 30px 210px;	min-height: 30px;	border-top: 1px solid #fff;}.search-block form dl.option dd:nth-child(2) { border-top: 0; }.search-block form dl dd > div { margin-top: 10px; }.search-block form dl dd > div:first-child { margin-top: 0; }@media screen and (max-width: 767px) {	.search-block form dl dt {		display: inline-block;		padding-top: 20px;		width: 160px;		float: left;	}	.search-block form dl dd {		padding: 20px 0 30px 160px;	}}@media screen and (max-width: 639px) {	.search-block h3 { margin-bottom: 20px; }	.search-block form dl dt {		display: block;		padding-top: 10px;		width: 100%;		float: none;		border-top: 1px solid #fff;	}	.search-block form dl dd {		padding: 5px 0 25px;		border-top: 0;	}	.search-block form dl + dl dt:first-child { border-top: 0; }	.search-block form dl dd:last-child ul li:last-child { border-bottom: 0; }	.search-block h4 { font-weight: 500; }}@media screen and (max-width: 419px) {	.search-block h3 { margin-bottom: 10px; }}/* フォーム */.search-block input[type=text] { border: 0; }.search-block form dl dd .enumerate {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-wrap: wrap;}.search-block form dl dd .enumerate label {	padding: 5px 0;	width: 33%;}@media screen and (max-width: 959px) {	.search-block form dl dd .enumerate label { width: 50%; }}@media screen and (max-width: 479px) {	.search-block form dl dd .enumerate label { padding: 2px 0; width: 100%; }}/* オプション */.search-block form dl.option { display: none; }.search-block .btn-option {	display: block;	margin: -16px auto 0;	width: 150px;	height: 30px;	background-color: #fff;	border-radius: 15px;	transition: all .5s;	cursor: pointer;}.search-block .btn-option p {	position: relative;	padding: 0 17px;	font-size: 1.2rem;	line-height: 30px;}.search-block .btn-option p::before { content: '詳細条件を開く'; }.search-block .btn-option.optin p::before { content: '詳細条件を閉じる'; }.search-block .btn-option p::after {	content: '';	position: absolute;	top: 9px;	right: 17px;	display: block;	width: 7px;	height: 7px;	border-top: 1px solid #666;	border-left: 1px solid #666;	transform: rotate(-135deg);	transition: all .5s;}.search-block .btn-option.optin p::after { top: 14px; transform: rotate(45deg); }/* ボタン */ul.btn-area {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-wrap: wrap;	justify-content: center;}ul.btn-area li { padding: 20px 15px 0; }.search-block .btn-find span {	padding-left: 25px;	background-image: url('../../image/common/icw-search.png');	background-repeat: no-repeat;	background-size: 20px 20px;	background-position: 0 50%;	line-height: 36px;	letter-spacing: 0.5em;}/* 開閉 */.search-board .btn-toggle {	background-color: rgba(102, 102, 102, 0.05);	text-align: center;	vertical-align: middle;	transition: all .3s;	cursor: pointer;}.search-board .btn-toggle p::before {	content: '検索を開く';	padding-left: 25px;	background-repeat: no-repeat;	background-size: 20px 20px;	background-position: 0 50%;	font-size: 1.4rem;	line-height: 3.0;	transition: all .3s;}.search-board .btn-toggle p span {	position: relative;	display: inline-block;	width: 25px;	height: 20px;	vertical-align: middle;}.search-board .btn-toggle p span::after {	content: '';	position: absolute;	top: 1px;	right: 3px;	display: block;	width: 9px;	height: 9px;	border-top: 1px solid #666;	border-right: 1px solid #666;	transform: rotate(-225deg);	transition: all .5s;}/* Open時 */.search-board.onboard .btn-toggle p::before { content: '検索を閉じる'; }.search-board.onboard .btn-toggle p span::after {	top: 7px;	right: 3px;	transform: rotate(-45deg);}@media screen and (min-width: 768px) {	.search-board .btn-toggle:hover { background-color: rgba(102, 102, 102, 0.25); }}@media screen and (max-width: 419px) {	ul.btn-area { margin-top: 8px; }	ul.btn-area li { padding: 12px 10px 0; }	.search-block .btn-find span { line-height: 32px; }	.search-board .btn-toggle p::before {		padding-left: 20px;		background-size: 18px 18px;		font-size: 1.3rem;		line-height: 2.4;	}	.search-board .btn-toggle p span::after {		top: 3px;		right: 8px;		display: block;		width: 7px;		height: 7px;	}	.search-board.onboard .btn-toggle p span::after {		top: 8px;		right: 8px;	}}/* 設定 */.search-board.onboard  .search-block { display:block; }.search-board .search-block { display: none; }/* --------------------------------------------------- *//* 会員登録　register-board *//* --------------------------------------------------- */.register-board { background-color: #f0f0f0; }.register-board .register-block {    margin: 0 auto;    width: 92%;    max-width: 960px;}.register-block h3 { margin-bottom: 30px; text-align: center; }.register-block h3 em { padding: 0 4px; font-size: 2.4rem; }.register-block form dl { display: block; border-bottom: 1px solid #fff; }.register-block form dl dt {    display: inline-block;    padding-top: 35px;    width: 210px;    float: left;}.register-block form dl dd {    padding: 30px 0 30px 210px;    min-height: 30px;    border-top: 1px solid #fff;}.register-block form dl.option dd:nth-child(2) { border-top: 0; }.register-block form dl dd > div { margin-top: 10px; }.register-block form dl dd > div:first-child { margin-top: 0; }@media screen and (max-width: 767px) {    .register-block form dl dt {        display: inline-block;        padding-top: 20px;        width: 160px;        float: left;    }    .register-block form dl dd {        padding: 20px 0 30px 160px;    }}@media screen and (max-width: 639px) {    .register-block h3 { margin-bottom: 20px; }    .register-block form dl dt {        display: block;        padding-top: 10px;        width: 100%;        float: none;        border-top: 1px solid #fff;    }    .register-block form dl dd {        padding: 5px 0 25px;        border-top: 0;    }    .register-block form dl + dl dt:first-child { border-top: 0; }    .register-block form dl dd:last-child ul li:last-child { border-bottom: 0; }    .register-block h4 { font-weight: 500; }}@media screen and (max-width: 419px) {    .register-block h3 { margin-bottom: 10px; }}/* フォーム */.register-block input[type=text],.register-block input[type=date],.register-block input[type=email],.register-block input[type=password] { border: 0; }.register-block form dl dd .enumerate {    display: -webkit-box;    display: -ms-flexbox;    display: flex;    flex-wrap: wrap;}.register-block form dl dd .enumerate label {    padding: 5px 0;    width: 33%;}@media screen and (max-width: 959px) {    .register-block form dl dd .enumerate label { width: 50%; }}@media screen and (max-width: 479px) {    .register-block form dl dd .enumerate label { padding: 2px 0; width: 100%; }}/* オプション */.register-block form dl.option { display: none; }.register-block .btn-option {    display: block;    margin: -16px auto 0;    width: 150px;    height: 30px;    background-color: #fff;    border-radius: 15px;    transition: all .5s;    cursor: pointer;}.register-block .btn-option p {    position: relative;    padding: 0 17px;    font-size: 1.2rem;    line-height: 30px;}.register-block .btn-option p::before { content: '詳細条件を開く'; }.register-block .btn-option.optin p::before { content: '詳細条件を閉じる'; }.register-block .btn-option p::after {    content: '';    position: absolute;    top: 9px;    right: 17px;    display: block;    width: 7px;    height: 7px;    border-top: 1px solid #666;    border-left: 1px solid #666;    transform: rotate(-135deg);    transition: all .5s;}.register-block .btn-option.optin p::after { top: 14px; transform: rotate(45deg); }/* ボタン */ul.btn-area {    display: -webkit-box;    display: -ms-flexbox;    display: flex;    flex-wrap: wrap;    justify-content: center;}ul.btn-area li { padding: 20px 15px 0; }.register-block .btn-find span {    padding-left: 25px;    background-image: url('../../image/common/icw-search.png');    background-repeat: no-repeat;    background-size: 20px 20px;    background-position: 0 50%;    line-height: 36px;    letter-spacing: 0.5em;}/* 開閉 */.register-board .btn-toggle {    background-color: rgba(102, 102, 102, 0.05);    text-align: center;    vertical-align: middle;    transition: all .3s;    cursor: pointer;}.register-board .btn-toggle p::before {    content: '検索を開く';    padding-left: 25px;    background-repeat: no-repeat;    background-size: 20px 20px;    background-position: 0 50%;    font-size: 1.4rem;    line-height: 3.0;    transition: all .3s;}.register-board .btn-toggle p span {    position: relative;    display: inline-block;    width: 25px;    height: 20px;    vertical-align: middle;}.register-board .btn-toggle p span::after {    content: '';    position: absolute;    top: 1px;    right: 3px;    display: block;    width: 9px;    height: 9px;    border-top: 1px solid #666;    border-right: 1px solid #666;    transform: rotate(-225deg);    transition: all .5s;}/* Open時 */.register-board.onboard .btn-toggle p::before { content: '検索を閉じる'; }.register-board.onboard .btn-toggle p span::after {    top: 7px;    right: 3px;    transform: rotate(-45deg);}@media screen and (min-width: 768px) {    .register-board .btn-toggle:hover { background-color: rgba(102, 102, 102, 0.25); }}@media screen and (max-width: 419px) {    ul.btn-area { margin-top: 8px; }    ul.btn-area li { padding: 12px 10px 0; }    .register-block .btn-find span { line-height: 32px; }    .register-board .btn-toggle p::before {        padding-left: 20px;        background-size: 18px 18px;        font-size: 1.3rem;        line-height: 2.4;    }    .register-board .btn-toggle p span::after {        top: 3px;        right: 8px;        display: block;        width: 7px;        height: 7px;    }    .register-board.onboard .btn-toggle p span::after {        top: 8px;        right: 8px;    }}/* 設定 */.register-board.onboard  .register-block { display:block; }.register-board .register-block { display: none; }/* --------------------------------------------------- *//* Box-list *//* --------------------------------------------------- */ul.boxlist {	position: relative;	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-wrap: wrap;	width: 100%;}ul.boxlist li {	position: relative;	display: -webkit-box;	display: -ms-flexbox;	display: flex;	margin-top: 50px;	padding: 0 20px;	width: 25%;	font-size: 1.4rem;	box-sizing: border-box;}ul.boxlist li a {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-direction: column;	width: 100%;	min-height: 100%;	transition: all .5s;}ul.boxlist li a div:first-child { flex: 1 0 auto; }@media screen and (max-width: 999px) {	ul.boxlist li {		padding: 0 15px;		width: 33%;	}}@media screen and (max-width: 767px) {	ul.boxlist li {		margin-top: 40px;		width: 50%;	}}@media screen and (max-width: 539px) {	ul.boxlist li { padding: 0 10px; }}@media screen and (max-width: 419px) {	ul.boxlist li {		margin-top: 30px;		padding: 0 35px;		width: 100%;	}}/* Box-list2 *//* --------------------------------------------------- */ul.boxlist2 {	position: relative;	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-wrap: wrap;	width: 100%;}ul.boxlist2 li {	position: relative;	display: -webkit-box;	display: -ms-flexbox;	display: flex;	margin-top: 50px;	padding: 0 20px;	width: 25%;	font-size: 1.4rem;	box-sizing: border-box;}ul.boxlist2 li a {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-direction: column;	width: 100%;	min-height: 100%;	transition: all .5s;}ul.boxlist2 li a div:nth-child(2) { flex: 1 0 auto; }@media screen and (max-width: 959px) {	ul.boxlist2 li { padding: 0 10px; }}@media screen and (max-width: 767px) {	ul.boxlist2 li {		margin-top: 0;		width: 50%;	}	ul.boxlist2 li a {		display: table;		width: 100%;		min-height: 100%;		transition: all .5s;	}}@media screen and (max-width: 639px) {	ul.boxlist2 li { width: 100%; }}/* --------------------------------------------------- *//* Crowd-list *//* --------------------------------------------------- */dl.crowd-list { display: block; }dl.crowd-list dt {	display: inline-block;	padding-top: 20px;	width: 210px;	float: left;}dl.crowd-list dd {	padding: 20px 0 0 210px;	min-height: 50px;	border-top: 1px solid #ddd;}dl.crowd-list dd:nth-child(2) { border-top: 0; }dl.crowd-list dd ul li {	margin-bottom: 20px;	padding-bottom: 20px;	border-bottom: 1px solid #ddd;}@media screen and (max-width: 767px) {	dl.crowd-list dt {		display: inline-block;		padding-top: 20px;		width: 160px;		float: left;	}	dl.crowd-list dd {		padding: 20px 0 0 160px;		border-top: 1px solid #ddd;	}}@media screen and (min-width: 640px) {	dl.crowd-list dd ul li:last-child {border-bottom: 0; }}@media screen and (max-width: 639px) {	dl.crowd-list dt {		display: block;		padding-top: 20px;		width: 100%;		float: none;	}	dl.crowd-list dd {		padding: 20px 0 0 0;		border-top: 0;	}	dl.crowd-list dd:last-child ul li:last-child {border-bottom: 0; }}/* --------------------------------------------------- *//* カラム *//* --------------------------------------------------- */.column {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-direction: row-reverse;}.column > div:first-child { width: 47%; }.column > div:last-child {	width: 53%;	padding-right: 40px;	box-sizing: border-box;}.column .imgcut {	margin: 0 auto;	max-width: 420px;	border: 1px solid #666;}.column .imgcut img { width: 100%; height: auto; }.column blockquote { margin-top: 20px; }@media screen and (max-width: 959px) {	.column > div:first-child { width: 50%; }	.column > div:last-child { padding-right: 30px; width: 50%;  }}@media screen and (max-width: 767px) {	.column { flex-direction: column; }	.column > div:first-child { width: 100%; }	.column > div:last-child {		margin-top: 30px;		width: 100%;		padding-right: 0;	}	.column .imgcut { max-width: 360px; }}.column > div:last-child *:first-child { margin-top: 0; }/* --------------------------------------------------- *//* 製品詳細 *//* --------------------------------------------------- */.pdt-title h2 { padding-top: 3px; padding-bottom: 3px; line-height: 1.4;}.pdt-title p {	margin-top: 12px;	padding: 0 0 15px 40px;	border-bottom: 3px solid #ddd;}.pdt-detail {	display: table;	width: 100%;}.pdt-detail .pdt-spec,.pdt-detail .pdt-btns,.pdt-detail .pdt-mv {	width: 62%;	float: right;	box-sizing: border-box;}.pdt-detail .pdt-img {	width: 32%;	float: left;}.pdt-detail .pdt-img .imgcut {	display: table;	margin: 0 auto;	width: 100%;	max-width: 320px;	border: 1px solid #fff;	box-sizing: border-box;}.pdt-detail .pdt-img .imgcut img { width: 100%; height: auto; }.pdt-detail .pdt-img .btn-review {	margin: 30px auto 0;	width: 100%;	max-width: 320px;}.pdt-detail .pdt-img .btn-review a {	display: block;	background-color: #666;	border-radius: 8px;	text-align: center;	transition: all .5s;}.pdt-detail .pdt-img .btn-review a span {	display: inline-block;	padding-left: 36px;	background-image: url('../../image/common/icw-pdf.png');	background-repeat: no-repeat;	background-size: 32px 32px;	background-position: 0 50%;	color: #fff;	font-size: 1.6rem;	line-height: 48px;}.pdt-detail .pdt-spec h4 {	margin: 30px 0 20px;	border-bottom: 1px solid #ddd;	font-size: 1.6rem;	font-weight: 500;	line-height: 2.4;}.pdt-detail .pdt-spec h4:first-child { margin: 0 0 10px; }.pdt-detail .pdt-btns { margin-top: 50px; text-align: center; }.pdt-detail .pdt-btns > div {	display: inline-block;	width: calc((100% - 25px) / 2);}.pdt-detail .pdt-btns > div:nth-child(2) { margin-left: 20px; }.pdt-detail .pdt-btns .btn-makersite a,.pdt-detail .pdt-btns .btn-makercatalog a {	display: block;	background-color: #f0f0f0;	border-radius: 8px;}.pdt-detail .pdt-btns >div a span {	display: inline-block;	padding: 42px 0 8px;	background-repeat: no-repeat;	background-size: 32px 32px;	background-position: 50% 10px;	font-size: 1.4rem;	transition: all .5s;}.pdt-detail .pdt-btns .btn-makersite a span { background-image: url('../../image/common/ic-blank.png'); }.pdt-detail .pdt-btns .btn-makercatalog a span { background-image: url('../../image/common/ic-pdf.png'); }.pdt-detail .pdt-mv { margin-top: 50px; }.pdt-detail .pdt-mv h4 {	margin: 0;	border-bottom: 1px solid #ddd;	font-size: 1.6rem;	font-weight: 500;	line-height: 2.4;}.pdt-detail .pdt-mv .mv-area {	position: relative;	margin-top: 30px;	padding-top: 56.25%;}.pdt-detail .pdt-mv .mv-area iframe {	position: absolute;	top: 0;	left: 0;	width: 100%;	height: 100%;}@media screen and (min-width: 768px) {	.pdt-detail .pdt-img .btn-review a:hover { opacity: 0.5; }	.pdt-detail .pdt-btns > div a:hover span { opacity: 0.5; }}@media screen and (max-width: 959px) {	.pdt-detail .pdt-img { width: 34%; }}@media screen and (max-width: 767px) {	.pdt-title p {		margin-top: 15px;		padding: 7px 0 0 0;		border-top: 2px solid #ddd;		border-bottom: 0;		font-size: 1.3rem;		text-align: right; 	}	.pdt-detail .pdt-spec, .pdt-detail .pdt-btns, .pdt-detail .pdt-img, .pdt-detail .pdt-mv { width: 100%; float: none; }	.pdt-detail .pdt-img { margin-top: 0; }	.pdt-detail .pdt-img .imgcut { max-width: 300px; }	.pdt-detail .pdt-img .btn-review {		margin: 20px auto 0;		max-width: 300px;	}	.pdt-detail .pdt-spec h4:first-child { margin: 30px 0 10px; }	.pdt-detail .pdt-btns > div {		display: inline-block;		width: calc((100% - 16px) / 2);	}	.pdt-detail .pdt-btns > div:nth-child(2) { margin-left: 11px; }	.pdt-detail .pdt-btns >div a span {		font-size: 1.3rem;		letter-spacing: 0;	}}@media screen and (max-width: 419px) {	.pdt-title p { font-size: 1.2rem; }	.pdt-detail .pdt-btns { margin-top: 30px; text-align: left; }	.pdt-detail .pdt-btns > div { width: 100%; }	.pdt-detail .pdt-btns > div:nth-child(2) { margin-left: 0; margin-top: 10px; }	.pdt-detail .pdt-btns >div a span {		display: inline-block;		padding: 12px 0 12px 40px;		background-repeat: no-repeat;		background-size: 24px 24px;		background-position: 14px 50% ;	}}/* --------------------------------------------------- *//* アダプティブブロック *//* --------------------------------------------------- */.adapter > div > div {	display: inline-block;	margin: 40px 0 0 0;	width: calc((100% - 40px) / 2);	height: 510px;	float: left;}.adapter > div > div:nth-child(2n + 2) { margin: 40px 0 0 40px; }.adapter > div > div:first-child { margin: 0; }.adapter > div > div:nth-child(2) { margin: 0 0 0 40px; }.adapter > div > div > p {	text-align: right;	float: right;}.adapter > div > div > p a { font-size: 1.2rem; color: #999; line-height:  48px; }.adapter > div > div > h3 {	margin-bottom: 10px;	padding-left: 40px;	background-repeat: no-repeat;	background-size: 32px 32px;	background-position: 0 50%;	font-size: 1.6rem;	font-weight: 500;	line-height:  48px;}.adapter .roll {	display: block;	width: 100%;	height: 440px;	overflow: auto;}.adapter .roll dl {	display: block;	width: 100%;}.adapter .roll dl dt {	padding-top: 10px;	width: 90px;	float: left;}.adapter .roll dl dd {	padding-top: 10px;	padding-bottom: 10px;	padding-left: 110px;	min-height: 90px;	border-bottom: 1px dotted #ddd;}.adapter .roll dl dt > div {	border: 1px solid #ddd;	background-repeat: no-repeat;	background-size: contain;	background-position: 50%;}.adapter .roll dl dt > div img { width: 100%; height: auto; }.adapter .roll dl dd > div {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	flex-direction: column;	min-height: 90px;}.adapter .roll dl dd > div > div { flex: 1 0 auto; }.adapter .roll dl dd h4 { font-size: 1.4rem; font-weight: 500; line-height: 1.6; }.adapter .roll dl dd p { font-size: 1.3rem; }.adapter .roll dl dd p.bnote { color: #aaa; font-size: 1.1rem; text-align: right; }.adapter .roll dl a dt > div { transition: all .5s; }.adapter .roll dl a dd > h4 { transition: all .5s; }/* 関連製品 */.adapter .adpt-products h3 {	border-bottom: 4px solid #00aadc;	background-image: url('../../image/common/icc-products.png');}.adapter .adpt-products .roll dl dt > div { border: 1px solid #00aadc; }/* 関連動画 */.adapter .adpt-channel .roll dl dt { width: 140px; }.adapter .adpt-channel .roll dl dd { padding-left: 160px; }.adapter .adpt-channel h3 {	border-bottom: 4px solid #e6aa50;	background-image: url('../../image/common/icc-channel.png');}.adapter .adpt-channel .roll dl dt > div { border: 1px solid #e6aa50; }/* 関連セミナー */.adapter .adpt-seminar h3 {	border-bottom: 4px solid #4682be;	background-image: url('../../image/common/icc-seminar.png');}.adapter .adpt-seminar .roll dl dt > div { border: 1px solid #4682be; }/* ロールオーバー */@media screen and (min-width: 768px) {	.adapter .roll dl a:hover dt > div { opacity: 0.5; }	.adapter .adpt-products .roll dl a:hover dd h4 { color: #00aadc; }	.adapter .adpt-channel .roll dl a:hover dd h4 { color: #e6aa50; }	.adapter .adpt-seminar .roll dl a:hover dd h4 { color: #4682be; }}@media screen and (max-width: 959px) {	.adapter > div > div {		display: inline-block;		margin: 30px 0 0 0;		width: calc((100% - 25px) / 2);		float: left;	}	.adapter > div > div:nth-child(2n + 2) { margin: 30px 0 0 25px; }	.adapter > div > div:first-child { margin: 0; }	.adapter > div > div:nth-child(2) { margin: 0 0 0 25px; }}@media screen and (max-width: 767px) {	.adapter > div > div {		display: inline-block;		margin: 30px 0 0 0;		width: 100%;		float: none;	}	.adapter > div > div:nth-child(2n + 2) { margin: 30px 0 0 0; }	.adapter > div > div:first-child { margin: 0; }	.adapter > div > div:nth-child(2) { margin: 30px 0 0 0; }}@media screen and (max-width: 419px) {	.adapter .roll dl dd { padding-left: 100px; }	.adapter .adpt-channel .roll dl dd { padding-left: 150px; }	.adapter .roll dl dd h4 { font-size: 1.3rem; }	.adapter .roll dl dd p { font-size: 1.2rem; }	.adapter .roll dl dd p.bnote { color: #aaa; font-size: 1.0rem; text-align: right; }}/* --------------------------------------------------- *//* アプリボタン *//* --------------------------------------------------- */ul.btn-apps {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	max-width: 100%;}ul.btn-apps li {	width: 47%;	max-width: 180px;}ul.btn-apps li:last-child { margin-left: 4%; }ul.btn-apps li a {	display: block;	padding: 6px 8px;	background-color: rgba(0, 0, 0, 1.0);	border-radius: 10px;	transition: all .3s;}ul.btn-apps li a img { width: 100%; height: auto; }@media screen and (min-width: 768px) {	ul.btn-apps li a:hover { background-color: rgba(0, 0, 0, 0.5); }}@media screen and (max-width: 767px) {	ul.btn-apps { justify-content: center; }}/* 国試対策netボタン *//* --------------------------------------------------- */.btn-kokushi { margin: 20px 0 0 0; width: 210px; }.btn-kokushi a {	display: block;	width: 100%;	background-color: #5a5096;	border-radius: 8px;	color: #fff;	font-size: 1.4rem;	font-weight: 500;	line-height: 36px;	text-align: center;	transition: all .3s;}@media screen and (min-width: 768px) {	.btn-kokushi a:hover { opacity: 0.7; }}@media screen and (max-width: 767px) {	.btn-kokushi { margin: 20px auto 0; }}/* --------------------------------------------------- *//* ページネーション *//* --------------------------------------------------- */ul.pagenation {	display: -webkit-box;	display: -ms-flexbox;	display: flex;	justify-content: center;	align-items: center	margin: 0 auto;}ul.pagenation li {	position: relative;	margin: 0 6px;	background-color: #f9f9f9;	color: #999;	text-align: center;	border-radius: 50%;}ul.pagenation li a {	display: block;	color: #666;	background-color: #fff;	transition: all .3s;	border-radius: 50%;}ul.pagenation li span {	position: relative;	display: inline-block;	width: 22px;	height: 22px;	font-family: 'Montserrat', 'Noto Snas JP', sans-serif;	font-size: 1.3rem;	font-weight: 500;	line-height: 22px;}ul.pagenation li.pg-prev a,ul.pagenation li.pg-next a { background-color: #666; border-radius: 0; }ul.pagenation li.pg-prev a span::after,ul.pagenation li.pg-next a span::after {	content: '';	position: absolute;	top: 8px;	display: block;	width: 5px;	height: 5px;	border-left: 1px solid #fff;	border-bottom: 1px solid #fff;}ul.pagenation li.pg-prev a span::after { left: 9px; transform: rotate(45deg); }ul.pagenation li.pg-next a span::after { left: 7px;  transform: rotate(-135deg); }@media screen and (min-width: 768px) {	ul.pagenation li a:hover { background-color: #e9e9e9; }	ul.pagenation li.pg-prev a:hover,	ul.pagenation li.pg-next a:hover { background-color: #ccc; }}/* --------------------------------------------------- *//* ページ送り *//* --------------------------------------------------- */ul.pageforward {	display: table;	margin: 0 auto;}ul.pageforward li {	display: table-cell;	width: 180px; 	vertical-align: middle;}ul.pageforward li.pg-prev,ul.pageforward li.pg-next { width: 42px; }ul.pageforward li a {	position: relative;	display: block;	background-color: #f0f0f0;	text-align: center;	transition: all .3s;	border-left: 2px solid #fff;}ul.pageforward li:first-child a { border-left: 0; border-top-left-radius: 6px; border-bottom-left-radius: 6px; }ul.pageforward li:last-child a { border-top-right-radius: 6px; border-bottom-right-radius: 6px; }ul.pageforward li a span {	display: inline-block;	height: 42px;	font-size: 1.3rem;	line-height: 42px;}ul.pageforward li.pg-list a span {	padding-left: 28px;	background-repeat: no-repeat;	background-size: 24px 24px;	background-position: 0 50%;}ul.pageforward li.pg-back a span {	padding-left: 28px;	background-image: url('../../image/common/ic-back.png');	background-repeat: no-repeat;	background-size: 24px 24px;	background-position: 0 50%;}ul.pageforward li.pg-prev a span::after,ul.pageforward li.pg-next a span::after {	content: '';	position: absolute;	top: 16px;	display: block;	width: 9px;	height: 9px;	border-top: 1px solid #666;	border-left: 1px solid #666;}ul.pageforward li.pg-prev a span::after { left:18px; transform: rotate(-45deg); }ul.pageforward li.pg-next a span::after { left: 11px; transform: rotate(135deg); }@media screen and (min-width: 768px) {	ul.pageforward li a:hover { background-color: #ddd; }}@media screen and (max-width: 767px) {	ul.pageforward li a span {		height: 36px;		font-size: 1.2rem;		line-height: 36px;	}	ul.pageforward li.pg-prev,	ul.pageforward li.pg-next { width: 36px; }	ul.pageforward li.pg-prev a span::after,	ul.pageforward li.pg-next a span::after {		top: 14px;		width: 7px;		height: 7px;	}	ul.pageforward li.pg-prev a span::after { left:15px; }	ul.pageforward li.pg-next a span::after { left: 11px; }}@media screen and (max-width: 419px) {	ul.pageforward.reverse li {		display: table-cell;		width: 150px; 		vertical-align: middle;	}}/* --------------------------------------------------- *//* 通常コンテンツ *//* --------------------------------------------------- */.notice * + h2, .notice * + h3, .notice * + h4, .notice * + h5, .notice * + p { margin-top: 15px; }.notice span { display: inline-block; color: inherit; font-size: inherit; font-weight: inherit; }/* --------------------------------------------------- *//* Intro *//* --------------------------------------------------- */.introduce .contents { max-width: 760px; }.introduce h2 {	padding-bottom: 10px;	border-bottom: 1px solid #666;	text-align: center;}.introduce h3 {	margin-top: 50px;	font-weight: 500;	text-align: center;}.introduce p { line-height: 2.2;}.introduce * + p { margin-top: 15px; }.introduce h3 + p { margin-top: 30px; }.introduce span { display: inline-block; color: inherit; font-size: inherit; font-weight: inherit; }@media screen and (max-width: 639px) {	.introduce h3 { margin-top: 30px; }	.introduce h3 + p { margin-top: 20px; }}/* --------------------------------------------------- *//* 医療従事者確認 *//* --------------------------------------------------- */#dentaldr {	position: fixed;	top: 0;	left: 0;	width: 100%;	height: 100vh;	z-index: 998;	background-color: rgba(0,0,0,0.75);}#dentaldr .dialog {	position: absolute;	top: 50%;	left: 50%;	padding: 40px;	width: 90%;	max-width: 560px;	background-color: #fff;	transform: translate(-50%, -50%);	box-sizing: border-box;}#dentaldr .dialog p { text-align: center; }#dentaldr .dialog ul {	display: table;	margin: 20px auto 0;	width: 100%;}#dentaldr .dialog ul li {	display: table-cell;	width: 50%;}#dentaldr .dialog ul li button {	display: table;	margin: 0 auto;	width: 80%;	font-size: 1.6rem;}#dentaldr .dialog ul li button.dr { background-color: #56b17a; }@media screen and (max-width: 639px) {	#dentaldr .dialog { padding: 25px; }	#dentaldr .dialog p { text-align: left; }	#dentaldr .dialog ul li {		display: block;		width: 100%;	}	#dentaldr .dialog ul li:last-child { margin-top: 12px; }}@media screen and (max-width: 419px) {	#dentaldr .dialog ul li:last-child { margin-top: 6px; }}