@charset "UTF-8";
/* CSS Document */
body{
	color: #4B4B4B;
	margin: 0 auto;
	padding: 0px;
	line-height: 1;
	font-family: 'Noto Sans JP', sans-serif;
	background-color: #E7F6F6;
}

*{
	list-style: none;
	margin: 0px;
	padding: 0px;
	box-sizing: border-box;
}

html{
	overflow-x: hidden;
}

p{
	line-height: 1.8em;
}

th{
	text-align: left;
}

a{
	outline: none;
}

::placeholder {
	color: #ddd;
	font-size: 12px;
}

address{
	font-style: inherit;
}

.clear{
	clear: both;
}

.left{
	float: left;
}

.right{
	float: right;
}

.block{
	overflow: hidden;
}

fit{
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

just{
	text-align: justify;
	text-justify: inter-ideograph;
}

.min{
	font-family: 'Noto Serif JP', serif;
}

img{
	border: none;
	height: auto;
	line-height: 1em;
	margin: 0px;
	padding: 0px;
	vertical-align: bottom;
}

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

img.alignright {
	padding: 4px;
	margin: 0 0 2px 10px;
	display: inline;
}

img.alignleft {
	padding: 4px;
	margin: 0 10px 2px 0;
	display: inline;
}

.alignright {
	float: right;
}

.alignleft {
	float: left;
}

a,
a img{
	transition: 0.3s;
}

a[href^="tel:"] {
	pointer-events: none;
	color:#666;
	text-decoration: underline;
}

input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}

.sp{
	display: none;
}

.menu-wrapper {
	position: relative;
	display: none;
}

.menu-icon {
	width: 40px;
	height: 30px;
	position: fixed; /* ← fixedにして常に左上固定 */
	top: 20px;
	right: 20px;
	cursor: pointer;
	z-index: 3;
	display: inline-block;
}

.menu-icon span {
	display: block;
	height: 2px;
	margin: 6px 0;
	background: #333;
	border-radius: 2px;
	transition: 0.4s;
}

/* ハンバーガーがXに変形 */
#menu-toggle:checked + .menu-icon span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}
#menu-toggle:checked + .menu-icon span:nth-child(2) {
	opacity: 0;
}
#menu-toggle:checked + .menu-icon span:nth-child(3) {
	transform: translateY(-10px) rotate(-45deg);
}

/* オーバーレイ背景 */
.overlay {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.5);
	opacity: 0;
	pointer-events: none;
	transition: 0.4s;
	z-index: 1;
}

#menu-toggle:checked ~ .overlay {
	opacity: 1;
	pointer-events: auto;
}

/* メニュー本体（左から出す） */
.menu {
	position: fixed;
	top: 0;
	right: -250px; /* ← 初期位置を左へ */
	width: 250px;
	height: 100%;
	background: #fff;
	box-shadow: 2px 0 8px rgba(0,0,0,0.2);
	transition: right 0.4s ease;
	z-index: 2;
}

#menu-toggle:checked ~ .menu {
	right: 0; /* ← 開いたときは左0へ */
}

.menu ul {
	list-style: none;
	padding: 60px 20px;
}

.menu li {
	margin: 20px 0;
	text-transform: uppercase;
}

.menu a {
	text-decoration: none;
	color: #333;
	font-size: 15px;
	transition: color 0.3s;
}

.menu a:hover {
	color: #007bff;
}

.wizwig h2{
	font-size: 20px;
	color:#2792AE;
	border-left: 5px solid #2792AE;
	padding: 5px 0px 5px 15px;
	letter-spacing: 0.12em;
	font-weight: 700;
	margin: 40px 0px 20px;
}

.wizwig p{
	line-height: 1.8em;
	font-size: 15px;
}

.wizwig img{
	max-width: 100%;
}

.wizwig li{
	margin-bottom: 10px;
	list-style: disc;
	font-size: 15px;
	margin-left: 20px;
}

.wizwig li:last-child{
	margin-bottom: 0px;
}

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

.wp-pagenavi span.pages{
	display: none;
}

.wp-pagenavi span,
.wp-pagenavi a{
	width: 44px;
	line-height: 34px;
	height: 44px;
	border: 2px solid #2792AE;
	background-color: #fff;
	border-radius: 9999px;
	margin: 0px 5px;
	display: inline-block;
	color:#2792AE;
	font-size: 20px;
}

.wp-pagenavi span.current{
	border: 2px solid #2792AE;
	background-color: #2792AE;
	color:#fff;
}

.wp-pagenavi a:hover{
	border: 2px solid #2792AE;
	opacity: .5;
}

#pageback{
	text-align: center;
	padding-top: 20px;
}

#pageback a{
	display: block;
	max-width: 300px;
	width: 94%;
	border-radius: 50px;
	margin: auto;
	font-weight: bold;
	line-height: 48px;
	border: 1px solid #3B3B3B;
	color:#3B3B3B;
	font-size: 15px;
	background-color:#fff;
	text-decoration: none;
}

#pageback a:hover{
	background-color: #3B3B3B;
	color:#fff;
}

#media-cont{
	max-width: 1080px;
	width: 94%;
	margin: 0 auto;
	display: flex;
	padding-top: 80px;
	justify-content: space-between;
	flex-direction: row-reverse;
}

#media-cont #cont{
	max-width: 735px;
	width: 70%;
}

#media-cont #side{
	max-width: 320px;
	width: 30%;
}

#line{
	height: 10px;
	background-image: url(../image/line.png);
	background-size: cover;
}

#media-mv{
	background-image: url(../image/mv-bg.jpg);
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
	min-height: 493px;
}

#media-mv h1{
	max-width: 1080px;
	width: 94%;
	margin: 0 auto;
	display: flex;
	padding-top: 100px;
}

#h-logo:hover img{
	opacity: .5;
}

.blog-card a{
	display: flex;
	flex-direction: column; /* SP: 縦並び */
	border: 1px solid #ddd;
	border-radius: 5px;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 0 0 10px #ccc;
	margin-bottom: 30px;
	text-decoration: none;
	padding: 25px 20px;
}

.blog-card a:hover{
	box-shadow: 0 0 10px #666;
}

.blog-card h2{
	font-size: 18px;
	line-height: 1.6em;
	padding: 15px 0px 30px;
	color:#3B3B3B;
	letter-spacing: 0.05em;
}

.blog-single h1{
	font-size: 23px;
	line-height: 1.6em;
	padding: 15px 0px 30px;
	letter-spacing: 0.05em;
}

.blog-card .category,
.blog-single .category{
	font-size: 12px;
	color:#2792AE;
	font-weight: bold;
	letter-spacing: 0.05em;
	border: 1px solid #2792AE;
	padding: 3px 10px;
	border-radius: 9999px;
	margin-right: 10px;
}

.blog-card .date,
.blog-single .date{
	font-size: 12px;
	color:#767676;
	letter-spacing: 0.05em;
}

.blog-card .hashtag,
.blog-single .hashtag{
	font-size: 15px;
	color:#5A91D0;
	text-decoration: none;
	letter-spacing: 0.05em;
}

@media (min-width: 768px) {
.blog-card a{
	flex-direction: row; /* PC: 横並び */
}
.card-image { width: 40%; }
.card-content { width: 60%; }
}

.card-image img { width: 100%; height: auto; display: block; }
.card-content { padding: 20px; }

.category-widget {
	width: 100%;
}

.blog-single .card-content{
	width: 100%;
	padding: 0px;
}

/* タイトル設定 */
.category-title {
	background-color: #2792ae;
	color: #ffffff;
	font-size: 18px;
	padding: 20px;
	margin: 0;
	letter-spacing: 0.03em;
	border-radius: 5px 5px 0 0;
}

/* リスト全体の余白 */
.category-list {
	list-style: none;
	padding: 10px 20px 30px; /* 全体のコンテンツ余白 */
	margin: 0;
	border-radius: 5px;
	margin-bottom: 30px;
	background-color: #fff;
}

/* 各項目の設定 */
.category-list li {
	line-height: 1.6em;
	border-bottom: 1px solid #bebebe; /* 下線 */
}

/* リンクの設定 */
.category-list li a {
	display: block;
	font-weight: bold;
	color: #3b3b3b;
	font-size: 15px;
	padding: 17px 0; /* 上下余白 */
	text-decoration: none;
	transition: color 0.3s ease;
}

/* ホバー時の色変化 */
.category-list li a:hover {
	color: #2892ae;
}

.blog-single{
	background-color: #FFFFFF;
	border-radius: 5px;
	padding: 65px 90px;
}

.blog-single .img{
	padding: 30px 0px 15px;
}

.blog-single .img img{
	width: 100%;
}

p#pankuzu{
	text-align: right;
	padding: 65px 40px 20px 0px;
	color:#3B3B3B;
	font-size: 12px;
}

p#pankuzu a{
	color:#333;
	text-decoration: none;
}

p#pankuzu a:hover{
	color:#ccc;
}

#media-header{
	background-color: #fff;
	padding: 15px 25px;
	display: flex;
	justify-content: space-between;
}

#media-header.shadow{
	box-shadow: 0px 10px 10px -5px #ccc;
	position: relative;
}

#media-header #search{
	position: relative;
}

#media-header #search input{
	background-color: #F7F7F7;
	border-radius: 9999px;
	border: 1px solid #C3C3C3;
	width: 260px;
	height: 45px;
	padding-left: 15px;
}

#media-header #search button{
	background-color: inherit;
	border: none;
	position: absolute;
	top: 13px;
	right: 15px;
}

#media-footer{
	background-image: url(../image/grad.jpg);
	background-size: cover;
	padding: 85px 0px 0px;
}

#media-footer #mf-footer{
	max-width: 1090px;
	margin: 0 auto;
	width: 94%;
}

#media-footer #mf-footer #top-footer{
	display: flex;
	justify-content: space-between;
	padding-bottom: 30px;
}

#media-footer #mf-footer #bottom-footer,
#media-footer #mf-footer #iin{
	display: flex;
	justify-content: space-between;
}

#media-footer #mf-footer #bottom-footer .btn{
	max-width: 560px;
	width: 50%;
	padding-top: 90px;
}

#media-footer #mf-footer #bottom-footer .btn.btn450{
	max-width: 450px;
}

#media-footer #mf-footer #bottom-footer .btn .lines{
	display: block;
	background-color: #2DB900;
	border-radius: 5px;
	text-align: center;
	border: 2px solid #2DB900;
	padding: 15px 0px;
	width: 100%;
	margin-top: 20px;
	position: relative;
}

#media-footer #mf-footer #bottom-footer .btn .lines svg{
	position: absolute;
	top: 0px;
	bottom: 0px;
	margin: auto;
	right: 20px;
	font-size: 16px;
	width: 12px;
	height: 20px;
}

#media-footer #mf-footer #bottom-footer .btn .btn-side .web_mail svg{
	position: absolute;
	top: 0px;
	bottom: 0px;
	margin: auto;
	right: 20px;
	font-size: 16px;
	width: 12px;
	height: 20px;
}

#media-footer #mf-footer #bottom-footer .btn .lines svg path{
	fill: white;
}
#media-footer #mf-footer #bottom-footer .btn .btn-side .web_mail svg path{
	fill: #2792AE;
}

#media-footer #mf-footer #bottom-footer .btn .lines:hover{
	background-color: #28A300;
}

#media-footer #mf-footer #bottom-footer .btn .btn-side .web_mail:hover{
	background-color: #ebfbff;
}

#media-footer #mf-footer #bottom-footer .btn .btn-side{
	display: flex;
	justify-content: space-between;
}

#media-footer #mf-footer #bottom-footer .btn .btn-side .web_mail{
	display: block;
	background-color: #fff;
	border-radius: 5px;
	text-align: center;
	border: 2px solid #2792AE;
	font-weight: bold;
	padding: 20px 0px;
	position: relative;
	width: 210px;
	color:#2792AE;
	text-decoration: none;
	
}

#media-footer #mf-footer #bottom-footer .btn p#kome{
	letter-spacing: 0.08em;
	font-size: 12px;
	padding-top: 20px;
	line-height: 1.6em;
}

#media-footer #mf-footer #bottom-footer .btn .tels{
	display: block;
	background-color: #fff;
	border-radius: 5px;
	text-align: center;
	border: 2px solid #2792AE;
	pointer-events: none;
	padding: 25px 0px 20px;
	text-decoration: none;
	width: 100%;
}

#media-footer #mf-footer #bottom-footer .btn .tels b{
	font-size: 21px;
	line-height: 1.4em;
	letter-spacing: 0.08em;
	color:#2792AE;
}

#media-footer #mf-footer #bottom-footer .btn .tels p{
	font-size: 53px;
	line-height: 1.4em;
	letter-spacing: 0.08em;
	color:#2792AE;
}

#media-footer #mf-footer #iin li{
	max-width: 560px;
	width: 50%;
	display: flex;
	justify-content: flex-start;
}

#media-footer #mf-footer #iin li .img{
	width: 232px;
	height: 187px;
	border-radius: 5px;
	margin-right: 15px;
}

#media-footer #mf-footer #iin li .txt p.t01{
	font-size: 17px;
	line-height: 1.6em;
	font-weight: bold;
	letter-spacing: 0.02em;
}

#media-footer #mf-footer #iin li .txt p.t02{
	font-size: 14px;
	line-height: 1.6em;
	letter-spacing: 0.08em;
}

#media-footer #mf-footer #iin li .txt p.t02.bold{
	font-weight: bold;
	padding-top: 15px;
	padding-bottom: 3px;
}

#media-footer #cr{
	text-align: right;
	padding: 5px 40px 20px 0px;
	color:#3B3B3B;
	font-size: 12px;
	letter-spacing: 0.12em;
}

p#result-txt{
	text-align: right;
	font-size: 16px;
	font-weigt: bold;
	padding-bottom: 10px;
}

p#no-kizi{
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	padding-top: 50px;
}

#colorbox,#cboxOverlay,#cboxWrapper {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    overflow: hidden;
    -webkit-transform: translate3d(0,0,0)
}

#cboxWrapper {
    max-width: none
}

#cboxOverlay {
    position: fixed;
    width: 100%;
    height: 100%
}

#cboxMiddleLeft,#cboxBottomLeft {
    clear: left
}

#cboxContent {
    position: relative
}

#cboxLoadedContent {
    overflow: auto;
    -webkit-overflow-scrolling: touch
}

#cboxTitle {
    margin: 0
}

#cboxLoadingOverlay,#cboxLoadingGraphic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow {
    cursor: pointer
}

.cboxPhoto {
    float: left;
    margin: auto;
    border: 0;
    display: block;
    max-width: none;
    -ms-interpolation-mode: bicubic
}

.cboxIframe {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
    padding: 0;
    margin: 0
}

#colorbox,#cboxContent,#cboxLoadedContent {
    box-sizing: content-box;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box
}

#cboxOverlay {
    background: #fff;
    opacity: .9;
    filter: alpha(opacity=90)
}

#colorbox {
    outline: 0
}

#cboxTopLeft {
    width: 25px;
    height: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border1.png) no-repeat 0 0
}

#cboxTopCenter {
    height: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border1.png) repeat-x 0 -50px
}

#cboxTopRight {
    width: 25px;
    height: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border1.png) no-repeat -25px 0
}

#cboxBottomLeft {
    width: 25px;
    height: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border1.png) no-repeat 0 -25px
}

#cboxBottomCenter {
    height: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border1.png) repeat-x 0 -75px
}

#cboxBottomRight {
    width: 25px;
    height: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border1.png) no-repeat -25px -25px
}

#cboxMiddleLeft {
    width: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border2.png) repeat-y 0 0
}

#cboxMiddleRight {
    width: 25px;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/border2.png) repeat-y -25px 0
}

#cboxContent {
    background: #fff;
    overflow: hidden
}

.cboxIframe {
    background: #fff
}

#cboxError {
    padding: 50px;
    border: 1px solid #ccc
}

#cboxLoadedContent {
    margin-bottom: 20px
}

#cboxTitle {
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: center;
    width: 100%;
    color: #999
}

#cboxCurrent {
    position: absolute;
    bottom: 0;
    left: 100px;
    color: #999
}

#cboxLoadingOverlay {
    background: #fff url(https://www.nagatadental.com/wp-content/themes/humanity/css/images/loading.gif) no-repeat 5px 5px
}

#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose {
    border: 0;
    padding: 0;
    margin: 0;
    overflow: visible;
    width: auto;
    background: 0 0
}

#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active {
    outline: 0
}

#cboxSlideshow {
    position: absolute;
    bottom: 0;
    right: 42px;
    color: #444
}

#cboxPrevious {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #444
}

#cboxNext {
    position: absolute;
    bottom: 0;
    left: 63px;
    color: #444
}

#cboxClose {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    color: #444
}

.p10 {
    padding: 10px;
}

.cboxIE #cboxTopLeft,.cboxIE #cboxTopCenter,.cboxIE #cboxTopRight,.cboxIE #cboxBottomLeft,.cboxIE #cboxBottomCenter,.cboxIE #cboxBottomRight,.cboxIE #cboxMiddleLeft,.cboxIE #cboxMiddleRight {
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)
}

#linepop {
    padding: 15px
}

#linepop img {
    image-rendering: -webkit-optimize-contrast;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    width: 100%;
    height: 100%;
    vertical-align: bottom;
    -o-object-fit: cover;
    object-fit: cover;
}

#linepop h2 {
    margin-bottom: 15px;
    padding: 0 20px 6px 78px;
    font-family: 'Times New Roman',Times,'ヒラギノ明朝 ProN W3','Hiragino Mincho ProN','游明朝',YuMincho,'HG明朝E','ＭＳ Ｐ明朝','ＭＳ 明朝',serif;
    font-size: 24px;
    line-height: 1.4;
    height: 58px;
    display: flex;
    align-items: flex-end;
    box-sizing: border-box;
    color: #3aa5a2;
    background: url(https://www.nagatadental.com/wp-content/themes/humanity/images/common/ttl-low_icon01.png)no-repeat left center/58px,linear-gradient(transparent 54px,#54bbb8 54px,#54bbb8 56px,transparent 56px)
}
