@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&family=Noto+Serif+JP:wght@400;500&display=swap");
@font-face { font-family: 'icomoon'; src: url("../fonts/icomoon.ttf") format("truetype"); font-weight: normal; font-style: normal; }
/* 文字間を詰めて隙間を削除する */
/* 文字間を通常に戻す */
html { scroll-behavior: smooth; height: 100%; }

body { color: #202020; word-wrap: break-word; overflow-wrap: break-word; font-size: 14px; text-align: center; line-height: 1.5; letter-spacing: 0.08em; margin: 0; padding: 0; background: #fff; font-family: 'Noto Sans JP',"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,"游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; height: 100%; }

a { text-decoration: none; }
a:hover { color: #666666; text-decoration: none; }
a:hover img { opacity: 0.8; filter: alpha(opacity=80); -ms-filter: "alpha( opacity=80 )"; background: none !important; }

li a, #logo a, .feed-list .feed > a { display: block; }

img, aside input[type="image"] { max-width: 100%; height: auto; width: auto; vertical-align: bottom; }

#wrap { overflow: hidden; }

.home #column a:after, #container .feed-list .feed a:after { content: ''; display: block; clear: both; }

/*ヘッダー*/
/* パンくず */
.breadcrumbs { text-align: left; line-height: 40px; overflow: auto; white-space: nowrap; border-top: 1px solid #dddddd; border-bottom: 1px solid #dddddd; }
.breadcrumbs h1 { font-size: 14px; font-weight: 500; }
.breadcrumbs ul { letter-spacing: -0.4em; }
.breadcrumbs ul li { color: #666; font-weight: 500; margin-right: 0.3em; display: inline-block; vertical-align: middle; letter-spacing: normal; position: relative; }
.breadcrumbs ul li:nth-child(n+2) { padding-left: 1.3em; }
.breadcrumbs ul li:nth-child(n+2):before { position: absolute; top: 50%; left: 0; font-weight: normal; font-family: 'icomoon' !important; content: "\ea53"; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; transform: translateY(-50%); -webkit-transform: translateY(-50%); }
.breadcrumbs ul li a { color: #666; font-weight: normal; }

/* 投稿 */
.feed-list .feed { margin-bottom: 32px; }
.feed-list .feed .ttl { font-weight: normal; color: #444444; padding: 16px 0; }

#infscr-loading { margin: 24px 0 40px; color: #666; text-align: center; }
#infscr-loading img { margin-bottom: 8px; }

body.single .feed { padding: 56px 0; background: #f4f4f4; margin-bottom: 56px; }
body.single .feed .tmb { margin-bottom: 48px; }
body.single .feed h1 { text-align: left; font-size: 22px; font-weight: 500; letter-spacing: 0.1em; margin-bottom: 32px; }
body.single .feed table { text-align: left; }
body.single .feed table th { vertical-align: top; background: #ededed; border: 2px solid #f4f4f4; }
body.single .feed table td { vertical-align: middle; vertical-align: top; }
body.single .feed table td p { margin-bottom: 8px; }
body.single .post { padding-bottom: 32px; }

/* コンテンツ */
#ttl { padding: 48px 0 32px; font-weight: 400; font-size: 15px; }
#ttl img { max-height: 35px; display: block; margin: 0 auto 16px; }

.post h2, .post .ttl2 { font-size: 22px; font-weight: 500; text-align: left; margin-bottom: 16px; }
.post img { max-width: 100%; height: auto; }
.post .aligncenter, .post iframe, .post twitterwidget { display: block; margin: 0 auto 16px; }
.post .alignright { float: right; margin-left: 32px; }
.post .alignright .alignright { margin-left: 0; }
.post .alignleft { float: left; margin-right: 32px; }
.post .alignleft .alignleft { margin-right: 0; }
.post .aligncenter, .post .alignright, .post .alignleft { margin-bottom: 16px; }
.post .gallery-item { padding: 0 1.875% 2.5%; clear: none !important; }
.post .gallery-caption { text-align: left; }
.post form .wpcf7-response-output{display: none;}
.post form input { width: 100%; font-family: MS UI Gothic,"ヒラギノ角ゴ ProN" , sans-serif; }
.post form input[type="submit"] { width: auto; font-size: 16px; padding: 8px 16px; display: block; margin: 0 auto; }
.post form table tr.req th { position: relative; }
.post form table tr.req th:after { font-weight: normal; padding: 1px 5px; font-size: 11px; color: #fff; background: red; position: absolute; content: "必須"; right: 8px; top: 16px; }
.post textarea { width: 100%; font-family: MS UI Gothic,"ヒラギノ角ゴ ProN" , sans-serif; }
.post .btn input { width: auto; letter-spacing: 0.05em; font-weight: bold; padding: 8px; }
.post div.gallery { margin-bottom: 0 !important; }
.post div.gallery a { display: block; }
.post div.gallery img { border: none !important; }
.post div.gallery dl dt { text-align: center; }
.post div.gallery dl dd { text-align: center; }
.post div.center { text-align: center; max-width: 768px; margin: 0 auto; }
.post div.center a, .post div.center .aligncenter { display: block; margin: 0 auto; }
.post .red,.screen-reader-response { color: #ff0000; }
.post .orange { color: #ff4200; }
.post .green { color: #009944; }
.post .blue { color: #003a99; }
.post .yellow { color: #ffff00; }
.post p.note { font-size: 13px; padding-left: 1.2em; line-height: 1; color: #777777; text-align: left; position: relative; margin-bottom: 8px; }
.post p.note:before { position: absolute; left: 0; top: 0; content: "※"; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.post ul.note { font-size: 13px; padding-left: 1.2em; line-height: 1; color: #777777; text-align: left; position: relative; margin-bottom: 8px; }
.post ul.note li { font-size: 13px; padding-left: 1.2em; line-height: 1; color: #777777; text-align: left; position: relative; margin-bottom: 8px; }
.post ul.note li:before { position: absolute; left: 0; top: 0; content: "※"; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.post p, .post table, .post ul, .post ol, .post dl { margin-bottom: 16px; }
.post p:not([class]), .post table:not([class]), .post ul:not([class]), .post ol:not([class]), .post dl:not([class]) { text-align: left; }
.post p:last-child, .post table:last-child, .post ul:last-child, .post ol:last-child, .post dl:last-child { margin-bottom: 0; }
.post div, .post section { margin-bottom: 48px; }
.post ul:not([class]) { list-style-type: disc; padding-left: 1.5em; }
.post ul:not([class]) li { padding: 2px 0; }
.post ul:not([class]) li ul { list-style-type: circle; }
.post ul:not([class]) li ul ul { list-style-type: square; }
.post ol:not([class]) { list-style-type: decimal; padding-left: 1.5em; }
.post ol:not([class]) li { padding: 2px 0; }
.post ol:not([class]) li ol { list-style: lower-roman; }
.post table:not([class]) { width: 100%; }
.post table:not([class]) th { padding: 16px 24px; vertical-align: top; border: 1px solid #e4e4e4; background: #f4f4f4; }
.post table:not([class]) td { padding: 16px 24px; vertical-align: middle; vertical-align: top; border: 1px solid #e4e4e4; }

/*トップページ*/
body.home .loopSlider { width: 100%; overflow: hidden; position: relative; background: #eeeff2; }
body.home .loopSlider .loopslider_wrap { display: -webkit-flex; display: flex; position: absolute; top: 0; left: 0; }
body.home .loopSlider .loopslider_wrap ul { display: -webkit-flex; display: flex; }
body.home .loopSlider .loopslider_wrap ul img { width: 100%; height: auto; }
body.home h2 { text-align: center; margin-bottom: 24px; font-weight: 400; font-size: 15px; }
body.home h2 img { max-height: 35px; display: block; margin: 0 auto 1.875%; }
body.home #work ul li dt { text-align: center; font-family: "Noto Serif JP", "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; font-weight: 500; margin-bottom: 16px; }
body.home #work ul li dd { text-align: left; }
body.home #profile table td { text-align: left; padding: 4px 16px 4px 0; }
body.home #skill ul { text-align: left; letter-spacing: -0.4em; }
body.home #skill ul li { display: inline-block; vertical-align: middle; letter-spacing: normal; }
body.home #skill ul li:last-child { margin-right: 0; }

/* フッター */
footer a.top { display: block; padding: 16px; }
footer #copy { color: #999999; padding: 24px; background: #0d1f42; }
footer #copy a { color: #999999; }
