@charset "UTF-8";
/*
例外
*/
/*-----table of contents--------
1.各種設定
  1.色の指定
  2.bodyの指定
  3.レスポンシブ　表示の振り分け
  4.本文　＆　リンク カラー＆下線
  5.画像の位置リセット
  6.画像パス
------------------------------*/
@media only screen and (max-width: 766px) {
		.hideSp {
				display: none !important;
		}
}

@media only screen and (min-width: 767px) {
		.hidePc {
				display: none !important;
		}
}

#container img {
		vertical-align: top;
}

/*-----table of contents--------
1.RESET
------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figcaption, figure, company, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		outline: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
		background: transparent;
		box-sizing: border-box;
}

/* add applet,a,big,s,strike,center,tt,embed,output,ruby */
h1, h2, h3, h4, h5, h6 {
		font-weight: 400;
}

body {
		line-height: 1;
}

article, aside, details, figcaption, figure, company, header, hgroup, menu, nav, section {
		display: block;
}

ol, ul {
		list-style: none;
}

blockquote, q {
		quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
}

a {
		margin: 0;
		padding: 0;
		font-size: 100%;
		vertical-align: baseline;
		background: transparent;
		cursor: pointer;
}

img {
		vertical-align: top;
}

ins {
		text-decoration: none;
}

mark {
		background-color: #ff9;
		font-style: italic;
		font-weight: bold;
}

del {
		text-decoration: line-through;
}

abbr[title], dfn[title] {
		border-bottom: 1px dotted;
		cursor: help;
}

table {
		border-collapse: collapse;
		border-spacing: 0;
}

dfn {
		font-style: normal;
}

hr {
		display: block;
		height: 1px;
		border: 0;
		border-top: 1px solid #231815;
		margin: 1em 0;
		padding: 0;
}

input, select {
		vertical-align: middle;
}

button {
		background: transparent;
		border: none;
		cursor: pointer;
		outline: none;
		padding: 0;
		appearance: none;
}

pre {
		overflow-x: visible;
		white-space: pre-wrap;
}

/* pre 要素（整形済みテキスト）の折り返しを切り替え可能にする */
* {
		-webkit-text-size-adjust: none;
}

input[type="submit"],
input[type="button"] {
		border-radius: 0;
		-webkit-box-sizing: content-box;
		-webkit-appearance: button;
		appearance: button;
		border: none;
		box-sizing: border-box;
		cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
		display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus {
		outline-offset: -2px;
}

:placeholder-shown,
::-webkit-input-placeholder,
:-moz-placeholder,
::-moz-placeholder,
:-ms-input-placeholder {
		opacity: 0.7;
}

/*-----table of contents--------
1.レイアウト
2.モジュール
------------------------------*/
body {
		background: #fff;
		width: 100%;
		color: #483C38;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		font-family: 'M PLUS Rounded 1c', YakuHanJP, sans-serif;
		font-weight: 400;
		box-sizing: border-box;
}

@media only screen and (max-width: 766px) {
		body {
				overflow-x: hidden;
		}
}

@media only screen and (min-width: 767px) and (max-width: 1259px) {
		body {
				overflow-x: auto;
		}
}

@media only screen and (min-width: 1260px) {
		body {
				overflow-x: hidden;
		}
}

a {
		color: #483C38;
		text-decoration: none;
}

a:hover {
		text-decoration: none;
}

/*
body {
		font-family: YakuHanJP, 'Montserrat', "Noto Sans JP", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "MS PGothic", "MS Gothic", "ＭＳ Ｐゴシック", 'Apple SD Gothic NEO', helvetica, sans-serif;
}
*/
@font-face {
		font-family: YakuHanJP;
		font-style: normal;
		font-weight: normal;
		font-display: swap;
		src: url(./fonts/YakuHanJP-Regular.eot);
		src: url(./fonts/YakuHanJP-Regular.woff2) format("woff2"), url(../fonts/YakuHanJP/YakuHanJP-Regular.woff) format("woff");
		unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
		font-family: YakuHanJP;
		font-style: normal;
		font-weight: bold;
		font-display: swap;
		src: url(./fonts/YakuHanJP-Bold.eot);
		src: url(./fonts/YakuHanJP-Bold.woff2) format("woff2"), url(../fonts/YakuHanJP/YakuHanJP-Bold.woff) format("woff");
		unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

/* Hidden
========================================================================== */
/**
* Add the correct display in IE 10-.
*/
@media only screen and (max-width: 766px) {
		.sp_hide {
				display: none;
		}
		.pc_block {
				display: none;
		}
}

@media only screen and (min-width: 767px) {
		.pc_hide {
				display: none;
		}
		.sp_block {
				display: none;
		}
}

/*
一時的措置に利用
*/
.block-hide {
		display: none;
}

/*-----table of contents--------
1.ヘッダー
2.ヘッダーバナー ※SPのみ
------------------------------*/
.momonga__header {
		background: #fff;
		width: 100%;
		position: fixed;
		top: 0;
		box-shadow: 0 0 16px -6px rgba(35, 24, 21, 0.3);
		z-index: 50;
		/* #home & {
			background: none;
			transition: 0.75s;
		} */
}

.momonga__header:before, .momonga__header:after {
		display: block;
		content: "";
		clear: both;
		height: 0;
		overflow: hidden;
}

@media only screen and (max-width: 766px) {
		.momonga__header {
				width: 100vw;
				height: 16vw;
		}
}

@media only screen and (min-width: 767px) {
		.momonga__header {
				width: 100%;
				height: 60px;
		}
}

#home .momonga__header.active {
		background: #fff;
}

.admin-bar .momonga__header {
		margin-top: 32px;
}

.header__contents {
		display: flex;
		position: relative;
		margin: 0 auto;
		padding: 0;
		box-sizing: border-box;
}

@media only screen and (max-width: 766px) {
		.header__contents {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.header__contents {
				width: auto;
				max-width: 1280px;
				/* min-width: 1080px; */
		}
}

.header__title {
		display: inline-flex;
		margin: 0;
		padding: 0;
		position: absolute;
		left: 0;
}

@media only screen and (max-width: 766px) {
		.header__title {
				width: 100%;
				height: 16vw;
		}
}

@media only screen and (min-width: 767px) {
		.header__title {
				width: 520px;
				height: 60px;
				padding-left: 40px;
		}
}

.header__title a {
		width: inherit;
		height: inherit;
		color: #483C38;
		text-decoration: none;
		vertical-align: text-top;
		padding: 0;
		margin: 0;
		display: inline-flex;
}

.header__title em {
		position: relative;
		font-style: normal;
		font-weight: 800;
}

@media only screen and (max-width: 766px) {
		.header__title em {
				width: 100%;
				font-size: 0;
				text-align: left;
				display: inline-block;
				padding-left: 0vw;
				line-height: 16vw;
		}
}

@media only screen and (min-width: 767px) {
		.header__title em {
				display: inline-flex;
				width: 128px;
				font-size: 0;
				padding-left: 0;
				padding-right: 0;
				line-height: 60px;
		}
}

.header__title em:before {
		content: url("../img/momonga-logo.svg");
		display: inline-block;
		position: absolute;
		left: 0;
}

@media only screen and (max-width: 766px) {
		.header__title em:before {
				width: 32vw;
				height: 14vw;
				top: 3.5vw;
				left: 3.5vw;
		}
}

@media only screen and (min-width: 767px) {
		.header__title em:before {
				width: 148px;
				height: 42px;
				top: 10px;
		}
}

@media only screen and (max-width: 766px) {
		.header__title span {
				display: none;
		}
}

@media only screen and (min-width: 767px) {
		.header__title span {
				font-weight: 400;
				font-size: 0.9rem;
				letter-spacing: 0.15rem;
				line-height: 60px;
				display: inline-flex;
		}
}

.header__CSL {
		position: absolute;
		right: 0;
		display: inline-flex;
}

@media only screen and (min-width: 767px) {
		.header__CSL {
				/* width: 500px;
			padding: 0 40px 0 0; */
				width: auto;
				max-width: 560px;
				padding: 0 1rem;
		}
}

@media only screen and (max-width: 766px) {
		.header__CSL-lists {
				display: none;
		}
}

@media only screen and (min-width: 767px) {
		.header__CSL-lists {
				font-size: 1.15rem;
				letter-spacing: 0;
				list-style-type: none;
				display: inline-flex;
				padding: 0 20px 0 0;
				margin: 0;
		}
}

.header__CSL-list {
		display: inline-block;
		line-height: 60px;
		padding: 0 1rem;
}

.header__CSL-list a {
		color: #483C38;
		font-weight: 800;
		text-decoration: none;
		padding-bottom: 0.5rem;
		position: relative;
}

.header__CSL-list a:after {
		position: absolute;
		bottom: 0.25rem;
		right: 0;
		content: "";
		width: 0;
		border-bottom: 3px #483C38 solid;
		transition: 0.75s;
}

.header__CSL-list a:hover:after {
		width: 100%;
		bottom: 0.25rem;
		border-bottom: 3px #483C38 solid;
}

#create .header__CSL-list:nth-child(1) a:after {
		width: 100%;
		bottom: 0.25rem;
		border-bottom: 3px #FF7700 solid;
}

#spread .header__CSL-list:nth-child(2) a:after {
		width: 100%;
		bottom: 0.25rem;
		border-bottom: 3px #33AAFF solid;
}

#leave .header__CSL-list:nth-child(3) a:after {
		width: 100%;
		bottom: 0.25rem;
		border-bottom: 3px #00BB66 solid;
}

.header__menu {
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.header__menu {
				width: 25vw;
				padding: 3vw 3vw 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.header__menu {
				width: 7rem;
				padding: 0.85rem 0.5rem;
		}
}

#button__menu {
		border: 1px solid #483C38;
		border-radius: 0.5rem;
		display: inline-block;
		text-align: center;
		transition: all 1.0s;
}

@media only screen and (max-width: 766px) {
		#button__menu {
				width: 20vw;
				letter-spacing: 0.05rem;
				height: 10vw;
				font-size: 4vw;
				line-height: 10vw;
		}
}

@media only screen and (min-width: 767px) {
		#button__menu {
				width: 6rem;
				letter-spacing: 0.15rem;
				height: 2rem;
				font-size: 0.9rem;
				line-height: 1.8rem;
		}
}

#button__menu:hover, #button__menu.open {
		background: #483C38;
		color: #fff;
}

/*-----table of contents--------
1.フッター
------------------------------*/
.bottom-contents:before, .bottom-contents:after {
		display: block;
		content: "";
		clear: both;
		height: 0;
		overflow: hidden;
}

.grecaptcha-badge {
		visibility: hidden;
}

#footer {
		background: #231815;
		color: #fff;
		width: auto;
		padding: 0;
		margin: 0;
}

@media only screen and (min-width: 767px) {
		#footer {
				/* min-width: 1080px; */
		}
}

#footer .footer__blocks {
		width: auto;
		font-size: 0;
		margin: 0 auto;
		display: inline-flex;
}

@media only screen and (max-width: 766px) {
		#footer .footer__blocks {
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		#footer .footer__blocks {
				/* min-width: 1080px; */
				padding: 0 4vw;
		}
}

#footer .footer__block {
		width: auto;
		font-size: 0;
		margin: 0 auto 2rem;
}

@media only screen and (max-width: 766px) {
		#footer .footer__block {
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		#footer .footer__block {
				/* min-width: 1080px; */
				padding: 0 4vw;
		}
}

#footer .footer__block-item {
		width: auto;
		font-size: 0;
		padding: 0;
		display: inline-block;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		#footer .footer__block-item {
				display: block;
				margin: 0 2rem 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		#footer .footer__block-item {
				display: inline-block;
				margin: 0 2rem 1rem auto;
		}
}

#footer .footer__block-item strong {
		color: #fff;
		font-weight: 800;
		display: block;
}

@media only screen and (max-width: 766px) {
		#footer .footer__block-item strong {
				font-size: 1rem;
				text-align: left;
				padding: 1.5rem 0 0;
				margin-left: 1.5rem;
				margin-bottom: -0.25rem;
		}
}

@media only screen and (min-width: 767px) {
		#footer .footer__block-item strong {
				font-size: 1.1rem;
				text-align: left;
				padding: 1.5rem 1.5rem 0;
				margin-left: 0rem;
				margin-bottom: -0.5rem;
		}
}

#footer .footer__block-item strong a {
		text-decoration: none;
		color: #fff;
}

#footer .footer__block-item strong a:hover {
		border-bottom: 1px dashed #fff;
}

#footer .footer__lists {
		width: auto;
		font-size: 0.85rem;
		color: #fff;
		margin: 0 auto;
		list-style: circle;
}

@media only screen and (max-width: 766px) {
		#footer .footer__lists {
				padding: 0.75rem 0.75rem 0 3rem;
		}
}

@media only screen and (min-width: 767px) {
		#footer .footer__lists {
				padding: 1.5rem 0.75rem 0 3rem;
		}
}

#footer .footer__list {
		line-height: 2rem;
		width: auto;
}

#footer .footer__list a {
		text-decoration: none;
		color: #fff;
		font-size: 0.85rem;
}

#footer .footer__list a:hover {
		border-bottom: 1px dashed #fff;
}

#footer .footer__list.home {
		margin-bottom: 1rem;
}

#footer .footer__list ul {
		display: flex;
		margin: 0 0 0.75rem -1.25rem;
		padding: 0;
}

#footer .footer__list ul:last-child {
		margin: 0 0 0 -1.25rem;
}

#footer .footer__list ul li {
		list-style: disc;
		margin: 0 0 0 2rem;
}

#footer .footer__list ul li a {
		font-size: 0.9rem;
}

#footer .footer__list-logo {
		position: relative;
		font-size: 1.15rem;
		font-style: normal;
		margin-right: 4rem;
}

#footer .footer__list-logo:before {
		content: url(../img/momonga_icon_w.svg);
		display: inline-block;
		position: absolute;
}

@media only screen and (max-width: 766px) {
		#footer .footer__list-logo:before {
				width: 10vw;
				height: 10vw;
				top: -0.75rem;
				right: -3.5rem;
		}
}

@media only screen and (min-width: 767px) {
		#footer .footer__list-logo:before {
				width: 36px;
				height: 36px;
				top: -0.75rem;
				right: -3.5rem;
		}
}

#footer .footer__list-logo em {
		font-size: 1.15rem;
		font-style: normal;
}

#footer .footer__list .footer__list-logo:hover {
		border-bottom: none;
}

#footer .footer__list .footer__list-logo:hover em {
		border-bottom: 1px dashed #fff;
}

#footer .footer__recaptcha {
		font-size: 0.75rem;
		text-align: center;
		padding: 0 1rem 2rem;
}

#footer .footer__recaptcha a {
		color: #fff;
		padding-bottom: 0.15rem;
		text-decoration: none;
}

#footer .footer__copyright {
		font-size: 0.85rem;
		text-align: center;
		padding: 2rem 0;
}

.formlink {
		box-shadow: 0 0 4px 3px rgba(125, 125, 125, 0.2);
		background: white;
		border-radius: 0.5rem;
		text-align: left;
		padding: 0.5rem 1rem 0.25rem;
		-webkit-transition: 0.3s;
		transition: 0.3s;
		position: fixed;
		z-index: 10;
}

@media only screen and (max-width: 766px) {
		.formlink {
				display: none;
				width: 50vw;
				right: 5vw;
				bottom: 5vw;
		}
}

@media only screen and (min-width: 767px) {
		.formlink {
				right: 40px;
				bottom: 60px;
		}
}

.formlink_title {
		display: block;
		color: #231815;
		font-size: 1.05rem;
		font-weight: normal;
		text-align: center;
		padding: 0.25rem 0 0;
}

@media only screen and (max-width: 766px) {
		.formlink_title {
				display: none;
		}
}

.formlink_lists {
		font-size: 0;
		list-style-type: circle;
		padding: 0.5rem 0 0.5rem 1.5rem;
}

@media only screen and (max-width: 766px) {
		.formlink_lists {
				overflow-x: scroll;
				height: 3rem;
		}
}

.formlink_list {
		font-size: 1rem;
		line-height: 1.5;
		position: relative;
		/* &:before {
		  content: "ー";
		  font-size: 1rem;
		  opacity: 0.5;
		  position: absolute;
		  left: -1.5rem;
		  top: 0;
		  @include forSP(&) {}
		  @include forPC(&) {}
		} */
}

.formlink a {
		border-bottom: 1px solid #fff;
		font-weight: normal;
		color: #888877;
		padding-bottom: 0rem;
}

.formlink a:hover {
		border-bottom: 1px dashed #231815;
		color: #231815;
}

/*-----table of contents--------
1.ヘッダー　ナビリスト　ブロック ※SPのみ
2.横開閉メニュー ※SPのみ
3.左カラム　メニューリスト
------------------------------*/
.nav-header:before, .nav-header:after {
		display: block;
		content: "";
		clear: both;
		height: 0;
		overflow: hidden;
}

@media only screen and (max-width: 766px) {
		.nav-header {
				height: 12vw;
		}
}

@media only screen and (min-width: 767px) {
		.nav-header {
				height: 44px;
		}
}

.bigmenu {
		display: none;
		width: auto;
		height: 0;
		transition: 2s;
}

.bigmenu.is-open {
		display: block;
		background-color: #fa7b2dcc;
		background-color: rgba(250, 123, 45, 0.9);
		position: fixed;
		top: 60px;
		left: 0;
		z-index: 100;
}

@media only screen and (max-width: 766px) {
		.bigmenu.is-open {
				/* height: calc(100% - 92px); */
				height: 100%;
				padding: 0;
				overflow: scroll;
		}
}

@media only screen and (min-width: 767px) {
		.bigmenu.is-open {
				height: calc(100vh - 60px);
				padding: 10px 40px;
		}
}

.admin-bar .bigmenu.is-open {
		top: 92px;
}

.bigmenu .index__blocks {
		width: auto;
		font-size: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.bigmenu .index__blocks {
				width: 100%;
				display: block;
				padding: 4vw;
		}
}

@media only screen and (min-width: 767px) {
		.bigmenu .index__blocks {
				display: inline-flex;
				padding: 0 4vw;
		}
}

.bigmenu .index__block {
		width: auto;
		font-size: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.bigmenu .index__block {
				padding: 0 0 10vw;
		}
}

@media only screen and (min-width: 767px) {
		.bigmenu .index__block {
				padding: 0;
		}
}

.bigmenu .index__block-item {
		font-size: 0;
		display: inline-block;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.bigmenu .index__block-item {
				width: 100%;
				margin: 0;
				padding: 0;
		}
		.bigmenu .index__block-item:nth-child(1) {
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		.bigmenu .index__block-item {
				width: auto;
				margin: 0 1.5rem 0 0;
				padding: 0;
		}
}

.bigmenu .index__block-item strong {
		border-top-left-radius: 0.5rem;
		border-top-right-radius: 0.5rem;
		background: #fff;
		width: 100%;
		font-size: 1.1rem;
		font-weight: 800;
		display: inline-block;
		text-align: center;
		margin-bottom: -1rem;
}

@media only screen and (max-width: 766px) {
		.bigmenu .index__block-item strong {
				padding: 1.5rem 2.5vw 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.bigmenu .index__block-item strong {
				padding: 1.5rem 1.5rem 1rem;
		}
}

.bigmenu .index__block-item strong a, .bigmenu .index__block-item strong em {
		border-bottom: 2px solid #231815;
		display: inline-block;
		padding-bottom: 0.5rem;
}

.bigmenu .index__lists {
		border-radius: 0.5rem;
		background: #fff;
		width: auto;
		font-size: 1rem;
		margin: 0 auto 1.5rem;
		list-style: circle;
}

@media only screen and (max-width: 766px) {
		.bigmenu .index__lists {
				padding: 1rem 1rem 1rem 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.bigmenu .index__lists {
				padding: 1.5rem 2rem 1.5rem 2.75rem;
		}
}

.bigmenu .index__list {
		width: auto;
		line-height: 1.25rem;
		margin-bottom: 0.5rem;
}

.bigmenu .index__list a {
		border-bottom: none;
		text-decoration: none;
		color: #231815;
		font-size: 1rem;
		padding-bottom: 0.25rem;
}

.bigmenu .index__list a:hover {
		border-bottom: 1px dashed #231815;
}

.bigmenu .index__list ul {
		display: flex;
		margin: 0 0 0.75rem -1.25rem;
		padding: 0;
}

.bigmenu .index__list ul:last-child {
		margin: 0 0 0 -1.25rem;
}

.bigmenu .index__list ul li {
		list-style: disc;
		margin: 0 0 0 2rem;
}

.bigmenu .index__list ul li a {
		font-size: 0.9rem;
}

.bigmenu .index__list-logo em {
		position: relative;
		font-size: 1.15rem;
		font-style: normal;
		margin-right: 4rem;
}

.bigmenu .index__list-logo em:before {
		content: url("../img/momonga-logo_soft.svg");
		display: inline-block;
		width: 46px;
		height: 54px;
		position: absolute;
		top: -0.75rem;
		right: -5rem;
}

.bigmenu .index__list .index__list-logo:hover {
		border-bottom: none;
}

.bigmenu .index__list .index__list-logo:hover em {
		border-bottom: 1px dashed #231815;
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
.home__contents {
		width: 100%;
		height: auto;
}

.home__contents-01 {
		background: #00D9E8;
		width: 100%;
		margin: auto;
		display: inline-table;
}

@media only screen and (max-width: 766px) {
		.home__contents-01 {
				padding: 20vw 0 5vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-01 {
				padding: 10vw 0 7.5vw;
		}
}

.home__contents-01 a {
		width: 100%;
		margin: auto;
		display: inline-flex;
		text-align: center;
		vertical-align: middle;
}

.home__contents-01 a:hover {
		opacity: 0.8;
}

.home__contents--main {
		position: relative;
}

@media only screen and (max-width: 766px) {
		.home__contents--main {
				width: 90vw;
				padding: 0 0 5rem;
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main {
				width: 100%;
				max-width: 1080px;
				margin: auto;
		}
}

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

@media only screen and (max-width: 766px) {
		.home__contents--main__lead {
				background: #fff;
				width: 90vw;
				padding: 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__lead {
				width: 680px;
				margin-bottom: 0.5rem;
		}
}

.home__contents--main__lead span {
		font-weight: bold;
}

@media only screen and (max-width: 766px) {
		.home__contents--main__lead span {
				border-bottom: 2px solid #222;
				display: inline;
				font-size: 1.25rem;
				line-height: 2;
				padding: 0 0.25em 0.15rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__lead span {
				background: #fff;
				display: inline-block;
				font-size: 1.75rem;
				line-height: 1;
				padding: 0.75rem;
				margin-bottom: 0.75rem;
		}
}

.home__contents--main__text {
		display: block;
		color: #fff;
		font-weight: bold;
}

@media only screen and (max-width: 766px) {
		.home__contents--main__text {
				font-size: 1.15rem;
				line-height: 1.5;
				text-align: left;
				margin: 1rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__text {
				font-size: 1.25rem;
				line-height: 1.8;
				margin: 2rem auto 0;
		}
}

.home__contents--main__mark {
		position: absolute;
}

@media only screen and (max-width: 766px) {
		.home__contents--main__mark {
				width: 5rem;
				bottom: 0;
				right: 0;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__mark {
				width: 10.5rem;
				top: -0.5rem;
				right: 2rem;
		}
}

.home__contents-02 {
		background: #fff;
		width: 100%;
		height: auto;
		text-align: center;
		padding: 5vw 0;
		margin: auto;
}

.home__contents-02 img {
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.home__contents-02 img {
				width: 100vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-02 img {
				width: 100%;
				max-width: 960px;
		}
}

.home__contents-03 {
		background: #FFEFEF;
		width: 100%;
		height: auto;
		text-align: center;
		padding: 5vw 0;
		margin: auto;
}

.home__contents-04 {
		width: 100%;
		height: auto;
		text-align: center;
		padding: 5vw 0 2.5vw;
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.home__contents-04 a {
				display: block;
				width: 80vw;
				height: auto;
				padding: 0;
				margin: 0 auto 5vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-04 a {
				display: inline-block;
				width: 340px;
				height: 200px;
				padding: 0;
				margin: 0 1vw 2vw;
		}
}

.home__contents-04 a:hover {
		opacity: 0.5;
		cursor: pointer;
}

.home__contents-04 a img {
		width: inherit;
		height: inherit;
}

.home__contents-05 {
		width: 100%;
		height: auto;
		text-align: center;
		padding: 2.5vw 0;
		margin: auto;
}

.home__contents-05 a {
		border-radius: 1rem;
		overflow: hidden;
		display: inline-block;
		height: auto;
		padding: 0;
		margin: 0 auto 1vw;
}

@media only screen and (max-width: 766px) {
		.home__contents-05 a {
				width: 95vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-05 a {
				width: auto;
				max-width: 90vw;
		}
}

.home__contents-05 a:hover {
		opacity: 0.5;
		cursor: pointer;
}

.home__contents-05 a img {
		display: inline-block;
		padding: 0;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.home__contents-05 a img {
				width: 95vw;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-05 a img {
				width: auto;
				height: 200px;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
.home__contents {
		width: 100%;
		height: auto;
}

.home__contents-01 {
		background: #00D9E8;
		width: 100%;
		margin: auto;
		display: inline-table;
}

@media only screen and (max-width: 766px) {
		.home__contents-01 {
				padding: 20vw 0 5vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-01 {
				padding: 10vw 0 7.5vw;
		}
}

.home__contents-01 a {
		width: 100%;
		margin: auto;
		display: inline-flex;
		text-align: center;
		vertical-align: middle;
}

.home__contents-01 a:hover {
		opacity: 0.8;
}

.home__contents--main {
		position: relative;
}

@media only screen and (max-width: 766px) {
		.home__contents--main {
				width: 90vw;
				padding: 0 0 5rem;
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main {
				width: 100%;
				max-width: 1080px;
				margin: auto;
		}
}

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

@media only screen and (max-width: 766px) {
		.home__contents--main__lead {
				background: #fff;
				width: 90vw;
				padding: 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__lead {
				width: 680px;
				margin-bottom: 0.5rem;
		}
}

.home__contents--main__lead span {
		font-weight: bold;
}

@media only screen and (max-width: 766px) {
		.home__contents--main__lead span {
				border-bottom: 2px solid #222;
				display: inline;
				font-size: 1.25rem;
				line-height: 2;
				padding: 0 0.25em 0.15rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__lead span {
				background: #fff;
				display: inline-block;
				font-size: 1.75rem;
				line-height: 1;
				padding: 0.75rem;
				margin-bottom: 0.75rem;
		}
}

.home__contents--main__text {
		display: block;
		color: #fff;
		font-weight: bold;
}

@media only screen and (max-width: 766px) {
		.home__contents--main__text {
				font-size: 1.15rem;
				line-height: 1.5;
				text-align: left;
				margin: 1rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__text {
				font-size: 1.25rem;
				line-height: 1.8;
				margin: 2rem auto 0;
		}
}

.home__contents--main__mark {
		position: absolute;
}

@media only screen and (max-width: 766px) {
		.home__contents--main__mark {
				width: 5rem;
				bottom: 0;
				right: 0;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents--main__mark {
				width: 10.5rem;
				top: -0.5rem;
				right: 2rem;
		}
}

.home__contents-02 {
		background: #fff;
		width: 100%;
		height: auto;
		text-align: center;
		padding: 5vw 0;
		margin: auto;
}

.home__contents-02 img {
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.home__contents-02 img {
				width: 100vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-02 img {
				width: 100%;
				max-width: 960px;
		}
}

.home__contents-03 {
		background: #FFEFEF;
		width: 100%;
		height: auto;
		text-align: center;
		padding: 5vw 0;
		margin: auto;
}

.home__contents-04 {
		width: 100%;
		height: auto;
		text-align: center;
		padding: 5vw 0 2.5vw;
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.home__contents-04 a {
				display: block;
				width: 80vw;
				height: auto;
				padding: 0;
				margin: 0 auto 5vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-04 a {
				display: inline-block;
				width: 340px;
				height: 200px;
				padding: 0;
				margin: 0 1vw 2vw;
		}
}

.home__contents-04 a:hover {
		opacity: 0.5;
		cursor: pointer;
}

.home__contents-04 a img {
		width: inherit;
		height: inherit;
}

.home__contents-05 {
		width: 100%;
		height: auto;
		text-align: center;
		padding: 2.5vw 0;
		margin: auto;
}

.home__contents-05 a {
		border-radius: 1rem;
		overflow: hidden;
		display: inline-block;
		height: auto;
		padding: 0;
		margin: 0 auto 1vw;
}

@media only screen and (max-width: 766px) {
		.home__contents-05 a {
				width: 95vw;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-05 a {
				width: auto;
				max-width: 90vw;
		}
}

.home__contents-05 a:hover {
		opacity: 0.5;
		cursor: pointer;
}

.home__contents-05 a img {
		display: inline-block;
		padding: 0;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.home__contents-05 a img {
				width: 95vw;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.home__contents-05 a img {
				width: auto;
				height: 200px;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
インディーズブック プロジェクト
*/
#project h1 {
		font-size: 0;
		padding: 0;
		margin: 0;
}

.projects__nav {
		display: flex;
		width: auto;
		height: inherit;
		position: relative;
		margin: 0 auto;
		padding: 0;
}

.projects__nav fieldset {
		border: none;
		width: 100%;
		height: inherit;
		font-size: 0;
		padding: 0;
		margin: 0;
}

.projects em {
		font-weight: 800;
		font-style: normal;
}

.projects em b {
		font-weight: 400;
}

.project__menu {
		background: #fff;
		width: 100%;
		height: 60px;
		position: fixed;
		top: 60px;
		left: 0;
		z-index: 10;
}

.admin-bar .project__menu {
		top: 92px;
}

.project__nav {
		width: calc(100% / 3);
		height: inherit;
		display: inline-block;
		line-height: 60px;
		font-size: 1.25rem;
		text-decoration: none;
		text-align: center;
		padding: 0;
		margin: 0;
		color: rgba(255, 255, 255, 0.5);
		transition: all 0.5s;
}

.project__nav em {
		font-weight: 800;
		font-style: normal;
}

.project__nav em b {
		font-weight: 400;
}

.project__nav.indiesbook {
		background: #FFA8A8;
}

.project__nav.publisher {
		background: #00D9E8;
}

.project__nav.passion {
		background: #00DDBB;
}

.project__nav.active {
		color: #fff;
		text-shadow: 1px 1px 4px rgba(35, 24, 21, 0.1);
}

.project__content-01 {
		background: #FFA8A8;
		width: 100%;
		padding-top: 180px;
		padding-bottom: 240px;
}

.project__content-02 {
		background: #00D9E8;
		width: 100%;
		padding-top: 180px;
		padding-bottom: 240px;
}

.project__content-03 {
		background: #00DDBB;
		width: 100%;
		padding-top: 180px;
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
つくる　ひろめる　のこす
*/
/*　つくる　*/
.csl__menu {
		background: #fff;
		width: 100%;
		height: 60px;
		position: fixed;
		top: 60px;
		left: 0;
		z-index: 2;
}

.admin-bar .csl__menu {
		top: 92px;
}

.csl__navs {
		display: flex;
		background: #231815;
		width: 100%;
		height: inherit;
		position: relative;
		margin: 0 auto;
		padding: 0;
}

.csl__navs fieldset {
		border: none;
		width: 100%;
		height: inherit;
		font-size: 0;
		padding: 0;
		margin: 0;
}

.csl__nav {
		width: 50%;
		height: inherit;
		display: inline-block;
		line-height: 60px;
		font-size: 1.25rem;
		text-shadow: 1px 1px 4px rgba(35, 24, 21, 0.1);
		text-decoration: none;
		text-align: center;
		padding: 0;
		margin: 0;
		color: rgba(0, 0, 0, 0.5);
		background: #f4f3f3;
		background: #E3E3E3;
}

.csl__nav.active, .csl__nav:hover {
		color: #231815;
		background: #fff;
}

.csl__nav:nth-child(odd) {
		border-right: 1px solid #CBCBCB;
		width: calc(50% - 1px);
}

.csl__nav:nth-child(odd) em {
		font-weight: 400;
		font-style: normal;
}

.csl__contents {
		background: #f4f3f3;
		width: auto;
		padding: 120px 5vw 0;
}

.csl__header {
		background: #231815;
		width: auto;
		max-width: 1280px;
		min-width: 980px;
		height: 200px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 4rem auto 80px;
}

#create .csl__header {
		background: #FF7700;
}

#spread .csl__header {
		background: #33AAFF;
}

#leave .csl__header {
		background: #00BB66;
}

.csl__header-figure {
		margin: 0;
		padding: 0;
}

.csl__header-title {
		background: #fff;
		width: 160px;
		height: 160px;
		font-size: 1.25rem;
		font-weight: 800;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: auto;
		padding: 0;
}

.csl__header-title span {
		border-bottom: 4px solid #231815;
		letter-spacing: 0.15rem;
		padding-bottom: 0.5rem;
}

.csl__content-01 {
		background: none;
		width: auto;
		max-width: 1280px;
		min-width: 980px;
		min-height: 150vh;
		margin: 4rem auto 280px;
		padding: 4rem 0;
		margin-top: -180px;
		padding-top: 180px;
}

.csl__content-02 {
		background: none;
		width: auto;
		max-width: 1280px;
		min-width: 980px;
		min-height: 150vh;
		margin: 4rem auto 280px;
		padding: 4rem 0;
		margin-top: -180px;
		padding-top: 180px;
}

.csl__publisher {
		background: #fff;
		width: 100%;
		height: 275vh;
}

.csl__writer {
		background: #fff;
		width: 100%;
		height: 275vh;
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
出版＆書籍に関わる基礎知識：出版辞典：逆引きFAQ ナビ
*/
.KDF__menu {
		background: #fff;
		width: 100%;
		height: 60px;
		position: fixed;
		top: 60px;
		left: 0;
		z-index: 10;
}

.admin-bar .KDF__menu {
		top: 92px;
}

.KDF__navs {
		display: flex;
		background: #E3E3E3;
		background: #999;
		width: auto;
		height: inherit;
		position: relative;
		margin: 0 auto;
		padding: 0;
}

.KDF__navs fieldset {
		border: none;
		width: 100%;
		height: inherit;
		font-size: 0;
		padding: 0;
		margin: 0;
}

.KDF__nav {
		border-left: 1px solid #CBCBCB;
		background: #E3E3E3;
		width: calc((100% - 2px) / 3);
		height: inherit;
		color: rgba(0, 0, 0, 0.5);
		color: rgba(255, 255, 255, 0.5);
		display: inline-block;
		text-decoration: none;
		text-align: center;
		padding: 0;
		margin: 0;
		transition: all 0.5s;
}

.KDF__nav:first-child {
		border-left: none;
}

.KDF__nav em {
		line-height: 60px;
		font-size: 1.15rem;
		font-weight: 400;
		font-style: normal;
}

.KDF__nav.knowledge {
		background: rgba(170, 170, 255, 0.5);
}

.KDF__nav.dictionary {
		background: rgba(255, 153, 0, 0.5);
}

.KDF__nav.faq {
		background: rgba(0, 187, 170, 0.5);
}

.KDF__nav:hover,
#knowledge .KDF__nav.knowledge,
#dictionary .KDF__nav.dictionary,
#faq .KDF__nav.faq {
		color: #fff;
		text-shadow: 1px 1px 4px rgba(35, 24, 21, 0.1);
}

.KDF__nav.knowledge:hover,
#knowledge .KDF__nav.knowledge {
		background: #AAAAFF;
}

.KDF__nav.dictionary:hover,
#dictionary .KDF__nav.dictionary {
		background: #FF9900;
}

.KDF__nav.faq:hover,
#faq .KDF__nav.faq {
		background: #00BBAA;
}

.KDF__content {
		background: #E3E3E3;
		width: 100%;
		font-size: 0;
		margin: 0;
		padding: 0 0;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		-webkit-flex-direction: row-reverse;
		flex-direction: row-reverse;
}

.KDF__entry {
		width: 85%;
		max-width: 1280px;
		min-width: 820px;
		font-size: 1rem;
		text-align: center;
		margin: 5rem auto 5rem 2vw;
		padding: 0;
}

.KDF__header {
		width: 820px;
		margin: 0 auto 4rem;
		text-align: center;
}

.KDF__title {
		border-bottom: 4px solid #231815;
		width: auto;
		display: inline-block;
		font-size: 1.75rem;
		text-align: center;
		padding: 0;
		margin: 0 auto;
}

.KDF__title span {
		display: inline-block;
		margin: 0;
}

.KDF__posts {
		width: auto;
		max-width: 1280px;
		min-width: 820px;
		font-size: 0;
		margin: 0 auto;
		padding: 0;
}

/*
出版＆書籍に関わる基礎知識
*/
#knowledge .post__contents {
		padding-top: 120px;
}

#knowledge .post__header {
		background: #AAAAFF;
}

.knowledge__content {
		background: #E3E3E3;
		width: 100%;
		font-size: 0;
		margin: 0;
		padding: 0;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		-webkit-flex-direction: row-reverse;
		flex-direction: row-reverse;
}

.knowledge__entry {
		width: 100%;
		max-width: 900px;
		min-width: 820px;
		font-size: 1rem;
		text-align: center;
		margin: 5rem auto 5rem 5vw;
		padding: 0;
}

.archive .knowledge__entry {
		max-width: 1280px;
}

#knowledge.post .knowledge__entry {
		margin: 5rem 5vw;
}

.knowledge__header {
		width: auto;
		max-width: 820px;
		margin: 0 auto 4rem;
		text-align: center;
}

.knowledge__title {
		border-bottom: 4px solid #231815;
		width: auto;
		display: inline-block;
		font-size: 1.75rem;
		font-weight: 800;
		text-align: center;
		padding: 0 0 0.5rem;
		margin: 0 auto;
}

.knowledge__title span {
		display: inline-block;
		margin: 0;
}

.knowledge__block {
		width: 100%;
		margin: 0 auto 0 2.5vw;
}

.knowledge__lists {
		width: auto;
		max-width: 1280px;
		min-width: 820px;
		font-size: 0;
		text-align: left;
		margin: 0 auto;
		padding: 0;
}

.knowledge__list {
		background: #fff;
		width: calc(50% - 4vw);
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0 auto 3rem;
		display: inline-block;
}

.knowledge__list:nth-child(even) {
		margin-left: 2vw;
}

.knowledge__list-post {
		display: block;
}

.knowledge__list-figure {
		width: 200px;
		height: 200px;
		padding: 0;
		margin: 0;
		overflow: hidden;
		display: inline-block;
}

.knowledge__list-figure img {
		width: 200px;
		height: 200px;
		object-fit: cover;
}

.knowledge__list-content {
		display: inline-block;
		width: auto;
		width: 42%;
		height: 100%;
		vertical-align: top;
		padding: 1rem 1.5rem;
}

.knowledge__list-header {
		width: 100%;
		height: 110px;
		font-weight: 800;
		display: flex;
		justify-content: center;
		align-items: center;
}

.knowledge__list-title {
		width: 100%;
		height: 110px;
		font-size: 1.15rem;
		display: flex;
		justify-content: center;
		align-items: center;
}

.knowledge__list-text {
		background: #fff;
		font-size: 1rem;
		line-height: 2;
		padding: 1.5rem 0 0;
		margin-left: 2;
		display: none;
}

.knowledge__list-meta {
		width: auto;
		font-size: 0.85rem;
		text-align: left;
		padding: 0;
		margin: 0.5rem 0;
		display: none;
}

.knowledge__list-ruby {
		font-size: 0.85rem;
		font-style: normal;
		text-align: left;
		display: inline-block;
		padding: 0 1.5rem;
		margin: 0.5rem 0;
}

.knowledge__list-tage {
		width: 100%;
		text-align: center;
		text-decoration: none;
		display: inline-block;
		margin: 0.5rem 0;
}

.knowledge__list-category span {
		border-bottom: 1px dashed #231815;
		padding-bottom: 0.25rem;
}

.knowledge__list-more {
		border-radius: 2rem;
		border: 1px solid #231815;
		font-size: 0.7rem;
		text-decoration: none;
		line-height: 2;
		display: inline-flex;
		padding: 0 0.75rem;
		margin: 0.5rem auto 0;
		vertical-align: middle;
}

.knowledge__list-more:hover {
		background: #231815;
		color: #fff;
}

.knowledge__list-more span {
		width: 1.25rem;
		height: 1rem;
		display: inline-block;
		position: relative;
}

.knowledge__list-more span b {
		border-top: 2px solid #231815;
		width: 0.6rem;
		display: inline-block;
		position: absolute;
}

.knowledge__list-more span b:nth-child(1) {
		top: 0.6rem;
		left: 0.5rem;
		transform: rotate(90deg);
}

.knowledge__list-more span b:nth-child(2) {
		top: 0.6rem;
		left: 0.5rem;
}

.knowledge__list-more:hover span b {
		border-top: 2px solid #fff;
}

.knowledge__posts {
		width: 100%;
		max-width: 1080px;
		min-width: 820px;
		font-size: 0;
		margin: 0 auto;
		padding: 0;
}

.knowledge__post {
		background: #fff;
		width: 100%;
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0 auto 3rem;
		display: inline-block;
}

.knowledge__post:nth-child(even) {
		margin-left: 2vw;
}

.knowledge__post-figure {
		width: 100%;
		height: 20vw;
		padding: 0;
		margin: 0;
		overflow: hidden;
		display: inline-block;
}

.knowledge__post-figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
}

.knowledge__post-content {
		display: inline-block;
		width: inherit;
		height: 100%;
		vertical-align: top;
		padding: 4rem 4rem;
		box-sizing: border-box;
}

.knowledge__post-header {
		width: 100%;
		height: auto;
		text-align: center;
		font-weight: 800;
		margin-bottom: 2rem;
}

.knowledge__post-title {
		width: auto;
		max-width: 800px;
		height: auto;
		font-size: 1.5rem;
		font-weight: 800;
		line-height: 1.75;
		letter-spacing: 0.15rem;
		text-align: left;
		display: inline-block;
		margin: auto;
}

.knowledge__post-meta em {
		border-radius: 2rem;
		border: 1px solid #231815;
		display: inline-block;
		font-size: 0.85rem;
		font-style: normal;
		font-weight: 400;
		padding: 0.25rem 1rem;
		margin: 0.5rem auto;
}

.knowledge__post-text {
		background: #fff;
		font-size: 1rem;
		line-height: 2;
		padding: 1.5rem 0 0;
		margin: 4rem;
}

.knowledge__post-text h2 {
		font-size: 1.25rem;
		font-weight: 800;
		margin: 3rem 0 1rem;
}

.knowledge__post-text p {
		margin-bottom: 1rem;
}

.knowledge__post-text a {
		border-bottom: 3px double #231815;
		color: #231815;
		text-decoration: none;
		padding-bottom: 0.15rem;
}

.knowledge__post-text a:hover {
		border-bottom: 3px double #FF2F2F;
		color: #FF2F2F;
}

.knowledge__post-text img {
		width: inherit;
		max-width: 580px;
		height: auto;
		display: block;
		margin: 4rem auto;
}

.knowledge__post-text img.imgcenter {
		text-align: center;
}

.knowledge__post-text-meta {
		width: auto;
		font-size: 0.85rem;
		text-align: left;
		padding: 0;
		margin: 0.5rem 0;
		display: none;
}

.knowledge__post-text-ruby {
		font-size: 0.85rem;
		font-style: normal;
		text-align: left;
		display: inline-block;
		padding: 0 1.5rem;
		margin: 0.5rem 0;
}

.knowledge__post-text-tage {
		width: 100%;
		text-align: center;
		text-decoration: none;
		display: inline-block;
		margin: 0.5rem 0;
}

.knowledge__post-text-category span {
		border-bottom: 1px dashed #231815;
		padding-bottom: 0.25rem;
}

.knowledge__post-text-more {
		border-radius: 2rem;
		border: 1px solid #231815;
		font-size: 0.7rem;
		text-decoration: none;
		line-height: 2;
		display: inline-flex;
		padding: 0 0.75rem;
		margin: 0.5rem auto 0;
		vertical-align: middle;
}

.knowledge__post-text-more:hover {
		background: #231815;
		color: #fff;
}

.knowledge__post-text-more span {
		width: 1.25rem;
		height: 1rem;
		display: inline-block;
		position: relative;
}

.knowledge__post-text-more span b {
		border-top: 2px solid #231815;
		width: 0.6rem;
		display: inline-block;
		position: absolute;
}

.knowledge__post-text-more span b:nth-child(1) {
		top: 0.6rem;
		left: 0.5rem;
		transform: rotate(90deg);
}

.knowledge__post-text-more span b:nth-child(2) {
		top: 0.6rem;
		left: 0.5rem;
}

.knowledge__post-text-more:hover span b {
		border-top: 2px solid #fff;
}

.knowledge__aside {
		background: #fff;
		padding-top: 5rem;
}

.knowledge__aside .aside__parts {
		padding: 0 1rem;
}

.knowledge__aside-lists {
		padding: 0 2.5rem;
}

.knowledge__aside-lists {
		padding: 0;
		margin-left: 0.75rem;
}

.knowledge__aside-lists.term {
		margin-left: 1.5rem;
}

.knowledge__aside-lists.grand2child {
		margin-left: 0;
}

.knowledge__aside-lists.index {
		padding: 0 3rem;
}

.knowledge__aside-list {
		line-height: 2;
		display: block;
}

.knowledge__aside-list {
		display: list-item;
		list-style: square;
		margin-top: 0.5rem;
}

.knowledge__aside-list li {
		list-style: circle;
}

.knowledge__aside-list li li {
		list-style: disc;
}

.knowledge__aside-list li li li {
		list-style: circle;
}

.knowledge__aside-list:nth-child(6) {
		margin-top: 1.5rem;
}

.knowledge__aside-list a {
		border-bottom: 1px dashed #231815;
		color: #231815;
		text-decoration: none;
}

.knowledge__aside-list a:hover {
		border-bottom: 1px dashed #FF9900;
		color: #FF9900;
}

/*
ツールチップ
*/
.tooltip {
		font-style: normal;
		padding: 0 0.5rem;
		position: relative;
		cursor: pointer;
}

.tooltip b {
		border-bottom: 1px dashed #231815;
		font-weight: 400;
		letter-spacing: 0.1rem;
		padding: 0 0 0.25rem;
}

.tooltip:hover .balloon {
		display: inline;
}

.balloon {
		display: none;
		background-color: rgba(34, 24, 21, 0.9);
		width: 20rem;
		color: #fff;
		font-size: 0.9rem;
		font-style: normal;
		letter-spacing: 0.1rem;
		padding: 2rem;
		margin-bottom: 1rem;
		box-sizing: border-box;
		position: absolute;
		left: -7rem;
		bottom: 100%;
}

.balloon span {
		display: block;
		font-size: 0.9rem;
		margin-bottom: 0.25rem;
}

.balloon small {
		padding-right: 1rem;
}

.balloon a {
		display: block;
		border-radius: 1rem;
		border: 1px solid #fff;
		width: 8rem;
		color: #fff;
		font-size: 0.85rem;
		text-align: center;
		text-decoration: none;
		line-height: 1.5;
		padding: 0;
		margin: 1.25rem auto 0;
}

.balloon a:hover {
		border-bottom: 1px dashed #fff;
		background: #fff;
		color: #231815;
}

.balloon a:after {
		border-top: 1rem solid rgba(34, 24, 21, 0.9);
		border-left: 0.8rem solid transparent;
		border-right: 0.8rem solid transparent;
		bottom: -1rem;
		left: 9rem;
		content: "";
		position: absolute;
}

/*
出版辞典
*/
#dictionary .post__contents {
		padding-top: 120px;
}

#dictionary .post__header {
		background: #FF9900;
}

.dict__content {
		background: #E3E3E3;
		width: 100%;
		font-size: 0;
		margin: 0;
		padding: 0 0;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		-webkit-flex-direction: row-reverse;
		flex-direction: row-reverse;
}

.dict__entry {
		width: 85%;
		max-width: 1280px;
		min-width: 820px;
		font-size: 1rem;
		text-align: center;
		margin: 5rem auto 5rem 2vw;
		padding: 0;
}

.dict__header {
		width: 820px;
		margin: 0 auto 4rem;
		text-align: center;
}

.dict__title {
		border-bottom: 4px solid #231815;
		width: auto;
		display: inline-block;
		font-size: 1.75rem;
		font-weight: 800;
		text-align: center;
		padding: 0 0 0.5rem;
		margin: 0 auto;
}

.dict__title span {
		display: inline-block;
		margin: 0;
}

.dict__posts {
		width: auto;
		max-width: 1280px;
		min-width: 820px;
		font-size: 0;
		margin: 0 auto;
		padding: 0;
}

.dict__post {
		width: 220px;
		font-size: 0.9rem;
		list-style-type: none;
		text-align: center;
		background: #fff;
		display: inline-block;
		vertical-align: top;
		margin: 0 1vw 2rem 1vw;
}

.dict__post a {
		color: #231815;
}

.dict__post-figure {
		width: 220px;
		height: 220px;
		margin: 0;
		padding: 0;
}

.dict__post-figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
}

.dict__post-header {
		width: 100%;
		font-size: 1.75rem;
		text-align: center;
		margin: 0 auto;
		position: relative;
}

.dict__post-title {
		border-bottom: 3px solid #231815;
		display: inline-block;
		font-size: 1.1rem;
		font-weight: 800;
		letter-spacing: 0.1rem;
		line-height: 1.5;
		text-align: left;
		padding: 0;
		margin: 2rem 1.5rem 1.5rem;
}

.dict__post-title span {
		display: inline-block;
		margin: 0 -0.5rem 0.5rem;
}

.dict__post-meta {
		width: auto;
		font-size: 0.85rem;
		text-align: left;
		padding: 0;
		margin: 0.5rem 0;
}

.dict__post-ruby {
		font-size: 0.85rem;
		font-style: normal;
		line-height: 1.5;
		text-align: left;
		display: inline-block;
		padding: 0 1.5rem;
		margin: 0.5rem 0;
}

.dict__post-ruby span {
		display: inline-block;
		text-align: left;
}

.dict__post-ruby span em {
		display: inline-block;
		font-style: normal;
		font-weight: 800;
		text-align: center;
		padding-right: 0.5rem;
}

.dict__post-meaning {
		width: auto;
		font-size: 0.85rem;
		line-height: 1.5;
		padding: 0 1.5rem;
		margin: 0.5rem 0;
		display: inline-block;
}

.dict__post-meaning em {
		display: inline-block;
		font-style: normal;
		font-weight: 800;
		text-align: center;
		padding-right: 0.5rem;
}

.dict__post-category {
		width: 100%;
		text-align: center;
		text-decoration: none;
		display: inline-block;
		margin: 0.5rem 0;
}

.dict__post-category span {
		border-bottom: 1px dashed #231815;
		padding-bottom: 0.25rem;
}

.dict__post-more {
		border-radius: 2rem;
		border: 1px solid #231815;
		font-size: 0.7rem;
		text-decoration: none;
		line-height: 2;
		display: inline-flex;
		padding: 0 0.75rem;
		margin: 1rem auto;
		vertical-align: middle;
}

.dict__post-more:hover {
		background: #231815;
		color: #fff;
}

.dict__post-more:hover span b {
		border-top: 2px solid #fff;
}

.dict__post-more span {
		width: 1.25rem;
		height: 1rem;
		display: inline-block;
		position: relative;
}

.dict__post-more span b {
		border-top: 2px solid #231815;
		width: 0.6rem;
		display: inline-block;
		position: absolute;
}

.dict__post-more span b:nth-child(1) {
		top: 0.6rem;
		left: 0.5rem;
		transform: rotate(90deg);
}

.dict__post-more span b:nth-child(2) {
		top: 0.6rem;
		left: 0.5rem;
}

.dict__aside {
		background: #fff;
		padding-top: 5rem;
}

.dict__lists {
		padding: 0 2.5rem;
}

.dict__lists.index {
		padding: 0 3rem;
}

.dict__list {
		line-height: 2;
		display: block;
}

.dict__list a {
		border-bottom: 1px dashed #231815;
		color: #231815;
		text-decoration: none;
}

.dict__list a:hover {
		border-bottom: 1px dashed #FF9900;
		color: #FF9900;
}

.dict__lists.index .dict__list {
		display: inline-block;
}

.dict__lists.index .dict__list a {
		font-size: 1.15rem;
		margin: 0.25rem;
}

/*
逆引きＦＡＱ
*/
#faq .post__contents {
		padding-top: 120px;
}

#faq .post__header {
		background: #00BBAA;
}

.faq__content {
		background: #E3E3E3;
		width: 100%;
		font-size: 0;
		margin: 0;
		padding: 0 0;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		-webkit-flex-direction: row-reverse;
		flex-direction: row-reverse;
}

.faq__entry {
		width: 85%;
		max-width: 1280px;
		min-width: 820px;
		font-size: 1rem;
		text-align: center;
		margin: 5rem auto 5rem 2vw;
		padding: 0;
}

.faq__search {
		width: auto;
		text-align: center;
		margin: 0 10vw 0;
}

.faq__search-text {
		text-align: center;
		line-height: 2;
}

.faq__search-box {
		border-radius: 3rem;
		box-shadow: 2px 2px 4px rgba(35, 24, 21, 0.1);
		width: 30vw;
		text-align: center;
		margin: 2rem auto 8rem;
		position: relative;
}

.faq__search-field {
		border-radius: 3rem;
		border: none;
		/* box-shadow: 2px 2px 4px rgba(35,24,21,0.1); */
		width: 30vw;
		padding: 1rem 2rem;
}

.faq__search-submit {
		border-radius: 3rem;
		background: #231815;
		color: #fff;
		line-height: 1.2;
		padding: 1rem;
		position: absolute;
		right: 0rem;
}

.faq__header {
		width: 820px;
		margin: 0 auto 4rem;
		text-align: center;
}

.faq__title {
		border-bottom: 4px solid #231815;
		width: auto;
		display: inline-block;
		font-size: 1.75rem;
		font-weight: 800;
		text-align: center;
		padding: 0 0 0.5rem;
		margin: 0 auto;
}

.faq__title span {
		display: inline-block;
		margin: 0;
}

.faq__block {
		width: auto;
		max-width: 840px;
		margin: 0 auto;
}

.faq__posts {
		width: auto;
		margin: auto;
}

.faq__post {
		background: #fff;
		width: auto;
		list-style: none;
		text-align: left;
		padding: 2rem 3rem 2rem 6rem;
		margin: 0 auto 3rem;
}

.faq__post-header {
		border-bottom: 2px solid #231815;
		font-size: 1.15rem;
		font-weight: 800;
		padding-bottom: 1rem;
		position: relative;
}

.faq__post-text {
		background: #fff;
		font-size: 1rem;
		line-height: 2;
		padding: 1.5rem 0 0;
		margin-left: 2;
		position: relative;
}

.faq__post-header:before, .faq__post-text:before {
		border-radius: 30px;
		width: 42px;
		height: 42px;
		color: #fff;
		font-size: 2rem;
		font-weight: 800;
		line-height: 42px;
		text-align: center;
		position: absolute;
		left: -4rem;
}

.faq__post-header:before {
		content: 'Q';
		background-color: #00DDBB;
		top: -0.5rem;
}

.faq__post-text:before {
		content: 'A';
		background-color: #00D9E8;
		top: 1rem;
}

.faq__post__aside {
		width: inherit;
		max-width: 840px;
		min-width: 640px;
		height: auto;
		text-align: center;
}

.faq__post__aside img {
		width: 100%;
		height: 100%;
		object-fit: cover;
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
SAMPLE 書影
*/
.bookcover__content {
		background: #E3E3E3;
		width: auto;
		font-size: 0;
		margin: 0 auto;
		padding: 0 4vw;
		box-sizing: border-box;
}

.bookcover__tage {
		width: 85%;
		max-width: 1080px;
		min-width: 840px;
		font-size: 1.25rem;
		padding: 4vw 0;
		margin: 0 auto;
}

.bookcover__tage-title {
		font-size: 1.25rem;
		text-align: center;
		letter-spacing: 0.15rem;
		margin: 0 auto 1rem;
}

.bookcover__tage-title span {
		border-bottom: 3px solid #231815;
		padding-bottom: 0.35rem;
}

.bookcover__tage-title em {
		display: block;
		font-size: 1.5rem;
		font-style: normal;
		padding-top: 1rem;
}

.bookcover__tage-item {
		display: block;
		text-align: center;
		margin: 0 auto 2rem;
}

.bookcover__tage-item a {
		border-radius: 2rem;
		background: #fff;
		color: #231815;
		font-size: 1rem;
		display: inline-block;
		line-height: 2;
		padding: 0.25rem 1.5rem;
		margin: 0 0.75rem 0.75rem;
		text-decoration: none;
}

.bookcover__tage-item a:hover {
		background: #231815;
		color: #fff;
}

.bookcover__tage-note {
		width: auto;
		font-size: 1rem;
		text-align: center;
		margin: 2rem 5vw;
		padding: 2rem;
}

.bookcover__tage-note span {
		line-height: 2;
		text-align: left;
		display: inline-block;
}

.bookcover__entry {
		width: 1080px;
		font-size: 1rem;
		text-align: center;
		margin: 0 auto;
		padding: 0 0 5rem;
}

.bookcover__lists {
		text-align: left;
		margin: 0;
		padding: 0;
}

.bookcover__list {
		width: 240px;
		font-size: 0.9rem;
		list-style-type: none;
		text-align: left;
		background: #fff;
		display: inline-block;
		vertical-align: top;
		margin: 0 0 2rem 20px;
}

.bookcover__list:nth-child(4n+1) {
		margin-left: 0;
}

.bookcover__list a {
		color: #231815;
		text-decoration: none;
}

.bookcover__list-figure {
		width: 240px;
		height: 320px;
		margin: 0 0 0 auto;
		padding: 0;
		overflow: hidden;
}

.bookcover__list-figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
}

.bookcover__list-header {
		width: 240px;
		text-align: center;
		padding-top: 1rem;
		margin: 0 auto;
		position: relative;
}

.bookcover__list-title {
		border-bottom: 3px solid #231815;
		display: inline-block;
		font-size: 1.1rem;
		text-align: left;
		padding: 0;
		margin: 0 3rem;
}

.bookcover__list-title span {
		display: inline-block;
		margin: 0 -2rem 0.5rem;
}

.bookcover__list-meta {
		width: auto;
		padding: 0.5rem 1rem 0;
		margin: 0 auto;
}

.bookcover__list-note {
		font-size: 0.85em;
		text-align: left;
}

.bookcover__list-favo {
		width: 100%;
		font-size: 1.25rem;
		text-align: right;
		padding: 0;
		display: inline-block;
}

.bookcover__list-tage {
		display: block;
		text-align: center;
		margin: 0.5rem;
}

.bookcover__list-tage a {
		border-radius: 2rem;
		border: 1px solid #231815;
		color: #231815;
		font-size: 0.75rem;
		display: inline-block;
		line-height: 1.75;
		padding: 0 0.75rem;
		margin: 0 0.25rem 0.5rem;
		text-decoration: none;
}

.bookcover__list-tage a:hover {
		background: #231815;
		color: #fff;
}

/*-----table of contents--------
1.投稿 Single コンテンツ要素
1-1. .post
1-2. 記事パーツ

2.アーカイブ Archive
2-1. #blog .archive
2-2. #news .archive
2-3. #studyroom .archive
2-4. #books .archive


------------------------------*/
.post {
		/* &__SNS {
    width: 100%;
    text-align: center;
    padding: 0 0 5rem;
    margin: 1rem auto;
    & .SNS__button {
      border-radius: 3rem;
      display: inline-block;
      width: 3rem;
      height: 3rem;
      color: #fff;
      font-size: 0;
      text-align: center;
      line-height: 3rem;
      margin: 1rem;
      &.twitter {
        background: #1DA1F2;
      }
      &.facebook {
        background: #1877f2;
      }
      &.instagram {
        background: #CF2E92;
      }
    }
  } */
}

.post__contents {
		width: auto;
		margin: 0 auto;
		padding: 60px 0 0;
}

@media only screen and (max-width: 766px) {
		.post__contents {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.post__contents {
				width: auto;
		}
}

.post__header {
		background: #231815;
		font-size: 1.25rem;
		display: inline-table;
		text-align: center;
		padding-bottom: 1rem;
		vertical-align: middle;
}

@media only screen and (max-width: 766px) {
		.post__header {
				width: 100%;
				height: 20vw;
				line-height: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.post__header {
				width: 100%;
				height: 120px;
				line-height: 120px;
		}
}

#blog .post__header {
		background: #FF2F2F;
}

#news .post__header {
		background: #AAAAFF;
}

#studyroom .post__header {
		background: #00CC77;
}

#books .post__header {
		background: #ffa747;
}

#tobeauthor .post__header {
		background: #FF2F2F;
}

.post-type-archive-bookcover .post__header {
		background: #FFAA00;
}

.post__title {
		color: #fff;
		font-weight: 800;
		line-height: 1;
		padding-bottom: 0.75rem;
		border-bottom: 0.25rem solid #fff;
		display: inline-block;
		margin: auto;
}

.post__title span {
		display: inline-block;
		letter-spacing: 0.15rem;
}

#blog .post__title span {
		margin: 0 -4rem;
}

#news .post__title span {
		margin: 0 -1.5rem;
}

#studyroom .post__title span {
		margin: 0 -0.5rem;
}

#books .post__title span {
		margin: 0 -2rem;
}

.post__entry {
		width: 85%;
		font-size: 1rem;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.post__entry {
				width: inherit;
				margin: 2.5rem 0 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		.post__entry {
				width: 85%;
				max-width: 820px;
				min-width: 767px;
				margin: 5rem 0 5rem auto;
		}
}

.post__entry-content {
		background: #fff;
}

.post__content {
		background: #f4f3f3;
		width: 100%;
		font-size: 0;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.post__content {
				display: inline-block;
		}
}

@media only screen and (min-width: 767px) {
		.post__content {
				display: inline-flex;
		}
}

.post__content-figure {
		background: #ececec;
		/*width: 100%;
      max-width: 820px;
      min-width: 640px;
      height: 240px;
      margin: 0 0 0 auto;
      padding: 0;
      overflow: hidden;*/
		position: relative;
		width: 100%;
		overflow: hidden;
}

#blog .post__content-figure {
		padding-top: 55%;
}

#studyroom .post__content-figure {
		padding-top: 75%;
}

@media only screen and (max-width: 766px) {
		#books .post__content-figure {
				padding-top: 82%;
		}
}

@media only screen and (min-width: 767px) {
		#books .post__content-figure {
				padding-top: 50%;
				min-height: 500px;
				max-height: 640px;
		}
}

.post__content-figure img {
		/*width: 100%;
        height: 100%;
        object-fit: cover;*/
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: contain;
}

@media only screen and (min-width: 767px) {
		.post__content-figure img {
				max-height: 640px;
		}
}

.post__content-header {
		text-align: center;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.post__content-header {
				font-size: 1.25rem;
				width: 100%;
				padding-top: 2.5rem;
				margin: 0 auto 2.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-header {
				font-size: 1.75rem;
				width: 580px;
				padding-top: 6rem;
				margin: 0 auto 4rem;
		}
}

.post__content-title {
		border-bottom: 3px solid #231815;
		display: inline-block;
		text-align: center;
		padding: 0 0 0.25rem;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.post__content-title {
				margin: 0 1.5rem 1rem;
				font-size: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-title {
				font-size: 1.75rem;
				margin: 0 auto;
		}
}

.post__content-title span {
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.post__content-title span {
				margin: 0 0 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-title span {
				margin: 0 -3rem 1rem;
		}
}

.post__content-meta {
		width: auto;
		font-size: 1rem;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.post__content-meta {
				width: inherit;
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-meta {
				width: 580px;
				padding: 0.5rem 0;
		}
}

.post__content-data {
		width: auto;
		padding: 0.5rem 0;
		text-align: center;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.post__content-data {
				width: inherit;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-data {
				width: inherit;
		}
}

.post__content-data strong {
		font-size: 1.35rem;
		display: block;
		margin-bottom: 2.5rem;
}

.post__content-data span {
		display: block;
		width: 65%;
		font-size: 0.85rem;
		margin: 0 auto 0.5rem;
		text-align: left;
}

@media only screen and (max-width: 766px) {
		.post__content-data span {
				width: auto;
				margin: 0 1.5rem 0.5rem;
		}
}

.post__content-favo {
		width: auto;
		font-size: 1.25rem;
		padding: 0.5rem 0;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.post__content-favo {
				width: inherit;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-favo {
				width: 40%;
		}
}

.post__content-category {
		display: block;
		font-size: 0.75rem;
}

.post__content-category a {
		border-radius: 2rem;
		border: 1px solid #231815;
		color: #231815;
		display: inline-block;
		line-height: 1.5;
		padding: 0 0.75rem;
		margin: 0 0.5rem;
		text-decoration: none;
}

.post__content-category a:hover {
		background: #231815;
		color: #fff;
}

.post__content-text {
		width: auto;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.post__content-text {
				width: inherit;
				font-size: 1rem;
				line-height: 2;
				margin: 0 5vw 4rem;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-text {
				width: 580px;
				font-size: 1.1rem;
				line-height: 2.25;
				margin: 0 auto 4rem;
		}
}

.post__content-text p {
		margin: 0 0 1rem;
}

.post__content-text h2 {
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 2.55;
		margin: 0 0 1rem;
}

.post__content-text h3 {
		font-size: 1.35rem;
		font-weight: bold;
		line-height: 2.55;
		margin: 0 0 1rem;
}

.post__content-text h4 {
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.55;
		margin: 0 0 1rem;
}

.post__content-text h5 {
		font-size: 1.05rem;
		font-weight: bold;
		line-height: 1.85;
		margin: 0 0 1rem;
}

.post__content-text p {
		line-height: 1.8;
		margin: 0 0 1rem;
}

.post__content-text strong {
		font-weight: bold;
		letter-spacing: 0.15rem;
}

.post__content-text img {
		border: 1px solid #EBEBEB;
		text-align: center;
		display: flex;
		margin: 1.5rem auto;
}

@media only screen and (max-width: 766px) {
		.post__content-text img {
				width: auto;
				max-width: 90vw;
				height: auto;
				max-height: 100vw;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-text img {
				width: auto;
				max-width: 580px;
				height: auto;
				max-height: 640px;
		}
}

.post__content-text .comment {
		border: 1px dashed #999999;
		line-height: 1.8;
		padding: 2rem;
		margin: 0 0 2rem;
}

.post__content-text .comment strong {
		background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #eeeeee 0%) repeat scroll 0 0;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.55;
		padding: 0 0.25rem;
		margin: 0;
		display: inline-block;
}

.post__content-text .editor_comment {
		border-radius: 0.5rem;
		background: #ededed;
		line-height: 1.8;
		padding: 2rem;
		margin: 0 0 2rem;
}

.post__content-text .editor_comment strong {
		background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ffffff 0%) repeat scroll 0 0;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.55;
		padding: 0 0.25rem;
		margin: 0;
		display: inline-block;
}

.post__content-aside {
		width: 100%;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.post__content-aside {
				padding: 0;
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		.post__content-aside {
				padding: 0 0 5rem;
				margin: 0 auto 5rem;
		}
}

.post__share {
		width: 100%;
		text-align: center;
		padding: 0 0 5rem;
}

@media only screen and (max-width: 766px) {
		.post__share {
				margin: 1rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.post__share {
				margin: 1rem auto 5rem;
		}
}

.post__share-items {
		font-size: 0;
		text-align: center;
}

.post__share-item {
		display: inline-block;
		padding: 0 0.5rem;
}

.post__share-item a:hover {
		opacity: 0.7;
}

.post__navs {
		padding: 0;
		font-size: 0;
		display: flex;
}

@media only screen and (max-width: 766px) {
		.post__navs {
				margin: 2.5rem 2.5vw;
		}
}

@media only screen and (min-width: 767px) {
		.post__navs {
				margin: 5rem 0;
		}
}

.post__nav {
		width: calc((100% - 1vw) / 2);
		display: block;
}

@media only screen and (max-width: 766px) {
		.post__nav {
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.post__nav {
				min-height: 8rem;
		}
}

.post__nav:nth-child(odd) {
		margin-right: 1vw;
}

.post__nav a {
		background: #fff;
		font-size: 1rem;
		width: 100%;
		height: 100%;
		color: #231815;
		line-height: 1.25;
		text-decoration: none;
		vertical-align: middle;
}

@media only screen and (max-width: 766px) {
		.post__nav a {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.post__nav a {
				display: flex;
		}
}

.post__nav a:hover {
		opacity: 0.7;
}

#books .post__nav a {
		position: relative;
		height: 180px;
}

.post__nav:nth-child(odd) a {
		border-left: 0.25rem solid #231815;
		text-align: left;
}

#blog .post__nav:nth-child(odd) a {
		border-left: 0.25rem solid #FF2F2F;
}

#news .post__nav:nth-child(odd) a {
		border-left: 0.25rem solid #AAAAFF;
}

#studyroom .post__nav:nth-child(odd) a {
		border-left: 0.25rem solid #00CC77;
}

#books .post__nav:nth-child(odd) a {
		border-left: 0.25rem solid #ffa747;
}

.post__nav:nth-child(even) a {
		border-right: 0.25rem solid #231815;
		text-align: right;
}

@media only screen and (min-width: 767px) {
		.post__nav:nth-child(even) a {
				flex-direction: row-reverse;
		}
}

#blog .post__nav:nth-child(even) a {
		border-right: 0.25rem solid #FF2F2F;
}

#news .post__nav:nth-child(even) a {
		border-right: 0.25rem solid #AAAAFF;
}

#studyroom .post__nav:nth-child(even) a {
		border-right: 0.25rem solid #00CC77;
}

#books .post__nav:nth-child(even) a {
		border-right: 0.25rem solid #ffa747;
}

@media only screen and (max-width: 766px) {
		.post__nav-figure img {
				width: 100%;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.post__nav-figure img {
				width: 100%;
				max-width: 200px;
				height: auto;
		}
}

#books .post__nav-figure {
		background: #ececec;
		padding: 0;
		overflow: hidden;
		padding: 0;
		position: absolute;
		top: 0;
		left: 0;
}

@media only screen and (max-width: 766px) {
		#books .post__nav-figure {
				width: auto;
				height: 70vw;
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		#books .post__nav-figure {
				width: 192px;
				height: 180px;
				margin: 0 0 0 auto;
		}
}

#books .post__nav-figure img {
		width: 100%;
		height: 100%;
		object-fit: contain;
}

.post__nav-text {
		font-size: 1.15rem;
		padding: 1rem;
		padding: 1.5rem 1rem 1rem;
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
}

.post__nav-text em {
		display: block;
		width: 10rem;
		font-size: 0.95rem;
		color: #555;
		margin: 0.75rem 0;
		position: absolute;
		top: 0.25rem;
}

.post__nav-button {
		border-radius: 3rem;
		display: inline-flex;
		color: #fff;
		font-weight: 800;
		text-align: center;
		text-decoration: none;
		box-shadow: 0 0 16px -6px rgba(35, 24, 21, 0.3);
		padding: 1rem 3rem;
}

@media only screen and (max-width: 766px) {
		.post__nav-button {
				line-height: 2rem;
				margin: 0 auto 2.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.post__nav-button {
				line-height: 3rem;
				margin: 0 auto 5rem;
		}
}

.post__nav-button:hover {
		opacity: 0.8;
}

#bookcover .post__nav-button {
		background: #231815;
}

#blog .post__nav-button {
		background: #FF2F2F;
}

#news .post__nav-button {
		background: #AAAAFF;
}

#studyroom .post__nav-button {
		background: #00CC77;
}

#books .post__nav-button {
		background: #ffa747;
}

#knowledge .post__nav-button {
		background: #AAAAFF;
}

#books .post__nav:nth-child(odd) a .post__nav-figure {
		left: 0;
}

#books .post__nav:nth-child(even) a .post__nav-figure {
		right: 0;
}

@media only screen and (max-width: 766px) {
		#books .post__nav-figure {
				display: none;
		}
		#books .post__nav-figure img {
				height: 70vw;
		}
}

#books .post__nav:nth-child(odd) a .post__nav-text {
		width: 400px;
		padding-left: 220px;
}

#books .post__nav:nth-child(even) a .post__nav-text {
		width: 400px;
		padding-right: 220px;
}

@media only screen and (max-width: 766px) {
		#books .post__nav:nth-child(odd) a .post__nav-text {
				width: 100%;
				height: 100%;
				padding-left: 1rem;
		}
		#books .post__nav:nth-child(even) a .post__nav-text {
				width: 100%;
				height: 100%;
				padding-right: 1rem;
		}
}

.mov-wrap {
		width: 100%;
		height: 0;
		position: relative;
		padding-top: 56.25%;
		overflow: hidden;
}

.mov-wrap iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
}

.archive__content {
		background: #f4f3f3;
		width: 100%;
		font-size: 0;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.archive__content {
				display: inline-block;
		}
}

@media only screen and (min-width: 767px) {
		.archive__content {
				display: inline-flex;
		}
}

@media only screen and (max-width: 766px) {
		.archive__content__none {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.archive__content__none {
				width: 820px;
		}
}

.archive__content-aside {
		width: auto;
		font-size: 1rem;
		text-align: center;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.archive__content-aside {
				padding: 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.archive__content-aside {
				padding: 5rem 0;
		}
}

.archive__entry {
		font-size: 1rem;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.archive__entry {
				width: 100%;
				margin: 2.5rem 0 2.5rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.archive__entry {
				width: auto;
				max-width: 820px;
				margin: 5rem 0 5rem auto;
		}
}

.archive__lists {
		font-size: 0;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.archive__lists {
				width: 100%;
				text-align: center;
		}
}

@media only screen and (min-width: 767px) {
		.archive__lists {
				width: 820px;
		}
		#blog .archive__lists {
				display: flex;
				flex-wrap: wrap;
		}
		#blog_tax .archive__lists {
				display: flex;
				flex-wrap: wrap;
		}
}

.archive__list {
		font-size: 0.9rem;
		list-style-type: none;
		background: #fff;
		display: inline-block;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.archive__list {
				width: 94vw;
				margin: 0 auto 5vw;
		}
}

@media only screen and (min-width: 767px) {
		.archive__list {
				width: 250px;
				margin: 0 0 2rem 20px;
		}
}

.archive__list a {
		color: #231815;
		display: block;
}

.archive__list-figure {
		background: #ececec;
		padding: 0;
		overflow: hidden;
}

@media only screen and (max-width: 766px) {
		#blog .archive__list-figure {
				width: auto;
				height: 70vw;
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		#blog .archive__list-figure {
				width: 250px;
				height: 195px;
				margin: 0 0 0 auto;
		}
}

#blog .archive__list-figure img {
		width: 100%;
		height: 100%;
		object-fit: contain;
}

@media only screen and (max-width: 766px) {
		#blog .archive__list-figure img {
				height: 70vw;
		}
}

.archive__list-header {
		font-size: 1.75rem;
		text-align: center;
		margin: 0 auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.archive__list-header {
				width: 80vw;
				padding: 0.75rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.archive__list-header {
				width: 250px;
				padding: 0.75rem 0;
		}
}

.archive__list-title {
		border-bottom: 3px solid #231815;
		display: inline-block;
		font-size: 1.1rem;
		text-align: left;
		padding: 0;
		margin: 0 3rem;
}

@media only screen and (max-width: 766px) {
		#blog .archive__list-title {
				margin: 0 auto;
		}
}

.archive__list-title span {
		display: inline-block;
		margin: 0 -2rem 0.5rem;
}

@media only screen and (max-width: 766px) {
		#blog .archive__list-title span {
				margin: 0 0 0.5rem;
		}
}

.archive__list-meta {
		width: 260px;
		font-size: 1rem;
		padding: 0.5rem 0 0;
		margin: 0 auto;
}

#blog .archive__list-meta {
		font-size: 0;
}

@media only screen and (max-width: 766px) {
		#blog .archive__list-meta {
				width: 80vw;
		}
}

@media only screen and (min-width: 767px) {
		#blog .archive__list-meta {
				width: 90%;
		}
}

.archive__list-data {
		width: 40%;
		font-size: 0.95rem;
		text-align: left;
		padding: 0;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.archive__list-data {
				width: 40%;
		}
}

@media only screen and (min-width: 767px) {
		.archive__list-data {
				width: 50%;
		}
}

.archive__list-favo {
		font-size: 1.25rem;
		text-align: right;
		padding: 0;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.archive__list-favo {
				width: 40%;
		}
}

@media only screen and (min-width: 767px) {
		.archive__list-favo {
				width: 50%;
		}
}

.archive__list-category {
		display: block;
		font-size: 0.6rem;
}

@media only screen and (max-width: 766px) {
		.archive__list-category {
				text-align: center;
				padding: 0 0 1rem;
				margin: 0.5rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.archive__list-category {
				text-align: left;
				margin: 0.5rem;
		}
}

.archive__list-category a {
		border-radius: 2rem;
		border: 1px solid #231815;
		color: #231815;
		font-size: 0.65rem;
		display: inline-block;
		line-height: 1.75;
		padding: 0 0.75rem;
		margin: 0 0.25rem 0.5rem;
		text-decoration: none;
}

.archive__list-category a:hover {
		background: #231815;
		color: #fff;
}

/*
news　アーカイブ
*/
#news .archive__lists {
		width: auto;
		font-size: 0;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		#news .archive__lists {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		#news .archive__lists {
				width: 820px;
				padding-left: 20px;
		}
}

#news .archive__list {
		list-style-type: none;
		background: #fff;
		display: inline-block;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		#news .archive__list {
				width: auto;
				margin: 0 5vw 5vw;
		}
}

@media only screen and (min-width: 767px) {
		#news .archive__list {
				width: 100%;
				margin: 0 0 2rem;
		}
}

#news .archive__list-post {
		font-size: 0.9rem;
		display: inline-block;
		padding: 0 7.5vw;
		margin: 0 auto;
		color: #231815;
		text-decoration: none;
}

@media only screen and (max-width: 766px) {
		#news .archive__list-post {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		#news .archive__list-post {
				width: 100%;
		}
}

#news .archive__list-header {
		width: 100%;
		font-size: 1.75rem;
		text-align: left;
		padding: 1.5rem 0 1rem;
		margin: 0 auto;
		position: relative;
}

#news .archive__list-title {
		border-bottom: 2px solid #231815;
		display: block;
		font-size: 1.1rem;
		text-align: left;
		padding: 0 0 0.5rem;
		margin: 0;
}

#news .archive__list-title span {
		display: block;
		margin: 0 0 0.5rem;
}

#news .archive__list-text {
		font-size: 0.95rem;
		line-height: 1.5;
		padding: 0.75rem 0 0;
}

#news .archive__list-meta {
		width: 100%;
		font-size: 0.85rem;
		text-align: right;
		padding: 0.25rem 0 0;
		margin: 0 auto;
}

#news .archive__list-data {
		width: auto;
		text-align: right;
		padding: 0;
		display: inline-block;
}

#news .archive__list-favo {
		width: auto;
		font-size: 1rem;
		text-align: right;
		padding: 0;
		display: inline-block;
}

/*
studyroom　アーカイブ
*/
#studyroom .archive__lists {
		width: auto;
		font-size: 0;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		#studyroom .archive__lists {
				width: 100%;
				text-align: center;
		}
}

@media only screen and (min-width: 767px) {
		#studyroom .archive__lists {
				width: auto;
				width: 820px;
				padding-left: 20px;
				display: flex;
				flex-wrap: wrap;
		}
}

#studyroom .archive__list {
		/*width: auto;
      height: auto; */
		font-size: 0.9rem;
		list-style-type: none;
		background: #fff;
		display: inline-block;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		#studyroom .archive__list {
				width: 94vw;
				margin: 0 auto 5vw;
		}
}

@media only screen and (min-width: 767px) {
		#studyroom .archive__list {
				width: 100%;
				height: auto;
				min-height: 120px;
				margin: 0 0 2rem;
		}
}

#studyroom .archive__list-post {
		width: auto;
		height: auto;
		min-height: 120px;
		font-size: 0.9rem;
		display: flex;
		padding: 0;
		margin: 0 auto;
		color: #231815;
		text-decoration: none;
		position: relative;
}

#studyroom .archive__list-figure {
		background: #ececec;
		padding: 0;
		overflow: hidden;
		padding: 0;
		position: absolute;
		top: 0;
		left: 0;
}

@media only screen and (max-width: 766px) {
		#studyroom .archive__list-figure {
				width: auto;
				height: 70vw;
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		#studyroom .archive__list-figure {
				width: 192px;
				height: 100%;
				margin: 0 0 0 auto;
		}
}

#studyroom .archive__list-figure img {
		width: 100%;
		height: 100%;
		object-fit: contain;
}

@media only screen and (max-width: 766px) {
		#studyroom .archive__list-figure img {
				height: 70vw;
		}
}

#studyroom .archive__list-header {
		width: 100%;
		font-size: 1.75rem;
		text-align: left;
		margin: 0 auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		#studyroom .archive__list-header {
				padding: 75vw 1.5rem 0.5rem;
		}
}

@media only screen and (min-width: 767px) {
		#studyroom .archive__list-header {
				padding: 1rem 1.5rem 0.5rem 218px;
		}
}

#studyroom .archive__list-title {
		border-bottom: 2px solid #231815;
		display: block;
		font-size: 1.1rem;
		text-align: left;
		padding: 0;
		margin: 0;
}

#studyroom .archive__list-title span {
		display: block;
		margin: 0 0 0.5rem;
}

#studyroom .archive__list-text {
		font-size: 0.95rem;
		line-height: 1.5;
		padding: 0.5rem 0 0;
}

#studyroom .archive__list-meta {
		width: 100%;
		font-size: 0.85rem;
		text-align: right;
		padding: 0.25rem 0 0;
		margin: 0 auto;
}

#studyroom .archive__list-data {
		width: auto;
		text-align: right;
		padding: 0;
		display: inline-block;
}

#studyroom .archive__list-favo {
		width: auto;
		font-size: 1rem;
		text-align: right;
		padding: 0;
		display: inline-block;
}

/*
books　アーカイブ
*/
#books .archive__lists {
		width: auto;
		font-size: 0;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		#books .archive__lists {
				width: 100%;
				text-align: center;
		}
}

@media only screen and (min-width: 767px) {
		#books .archive__lists {
				width: auto;
				width: 820px;
				padding-left: 20px;
				display: flex;
				flex-wrap: wrap;
		}
}

#books .archive__list {
		/*width: auto;
      height: auto; */
		font-size: 0.9rem;
		list-style-type: none;
		background: #fff;
		display: inline-block;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		#books .archive__list {
				width: 94vw;
				margin: 0 auto 5vw;
		}
}

@media only screen and (min-width: 767px) {
		#books .archive__list {
				width: 100%;
				height: 180px;
				margin: 0 0 2rem;
		}
}

#books .archive__list-post {
		width: auto;
		height: 180px;
		font-size: 0.9rem;
		display: flex;
		padding: 0;
		margin: 0 auto;
		color: #231815;
		text-decoration: none;
		position: relative;
}

@media only screen and (max-width: 766px) {
		#books .archive__list-post {
				width: auto;
				height: 100%;
		}
}

#books .archive__list-figure {
		background: #ececec;
		padding: 0;
		overflow: hidden;
		padding: 0;
		position: absolute;
		top: 0;
		left: 0;
}

@media only screen and (max-width: 766px) {
		#books .archive__list-figure {
				width: 100%;
				height: 80vw;
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		#books .archive__list-figure {
				width: 192px;
				height: 180px;
				margin: 0 0 0 auto;
		}
}

#books .archive__list-figure img {
		width: 100%;
		height: 100%;
		object-fit: contain;
}

@media only screen and (max-width: 766px) {
		#books .archive__list-figure img {
				height: 80vw;
		}
}

#books .archive__list-header {
		width: 100%;
		font-size: 1.75rem;
		text-align: left;
		margin: 0 auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		#books .archive__list-header {
				padding: 85vw 1.5rem 0.5rem;
		}
}

@media only screen and (min-width: 767px) {
		#books .archive__list-header {
				padding: 1.5rem 1.5rem 1.5rem 218px;
		}
}

#books .archive__list-title {
		border-bottom: 2px solid #231815;
		display: block;
		font-size: 1.3rem;
		text-align: left;
		padding: 0;
		margin: 0;
}

@media only screen and (min-width: 767px) {
		#books .archive__list-title {
				padding: 0 0 0.5rem;
		}
}

#books .archive__list-title span {
		display: block;
		margin: 0 0 0.5rem;
}

#books .archive__list-text {
		font-size: 1.25rem;
		line-height: 1.5;
		padding: 0.25rem 0 0;
}

@media only screen and (max-width: 766px) {
		#books .archive__list-text {
				font-size: 1.15rem;
				line-height: 1.5;
				padding: 0.5rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		#books .archive__list-text {
				font-size: 1rem;
				line-height: 1.5;
				padding: 0.75rem 0 0;
		}
}

#books .archive__list-text strong {
		display: block;
		padding: 0 0 0.25rem;
}

#books .archive__list-text span {
		display: block;
		color: #555;
		font-size: 0.85rem;
		line-height: 1.5;
		padding: 0;
		margin-right: 1rem;
}

#books .archive__list-meta {
		width: 100%;
		font-size: 0.85rem;
		text-align: right;
		padding: 0.25rem 0 0;
		margin: 0 auto;
}

#books .archive__list-data {
		width: auto;
		text-align: right;
		padding: 0;
		display: inline-block;
}

#books .archive__list-favo {
		width: auto;
		font-size: 1rem;
		text-align: right;
		padding: 0;
		display: inline-block;
}

/*
ブログ　カテゴリー
*/
.category__header {
		margin: 0 0 2rem auto;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.category__header {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.category__header {
				width: 820px;
		}
}

.category_title {
		border-bottom: 4px solid #231815;
		width: auto;
		display: inline-block;
		font-size: 1.75rem;
		text-align: center;
		padding: 0 0 0.5rem;
		margin: 0 auto;
}

.category_title span {
		display: inline-block;
		margin: 0 -3rem 0.5rem;
}

/*
post　書籍データ
*/
@media only screen and (max-width: 766px) {
		.post__bookdata {
				width: auto;
				margin: 0 5vw 4rem;
		}
}

@media only screen and (min-width: 767px) {
		.post__bookdata {
				max-width: 540px;
				margin: 0 auto 4rem;
		}
}

.post__bookdata-title {
		border-left: 0.25rem solid #231815;
		font-size: 1rem;
		padding: 0 0.5rem;
		margin: 1rem 0;
}

.post__bookdata-list {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		border-top: 1px dashed #231815;
}

.post__bookdata-list dt,
.post__bookdata-list dd {
		border-bottom: 1px dashed #231815;
		box-sizing: border-box;
		font-size: 0.85rem;
		line-height: 1.5;
		padding: 1rem 1rem 1rem 0;
}

@media only screen and (max-width: 766px) {
		.post__bookdata-list dt {
				width: 30%;
		}
}

@media only screen and (min-width: 767px) {
		.post__bookdata-list dt {
				width: 100px;
		}
}

@media only screen and (max-width: 766px) {
		.post__bookdata-list dd {
				width: 70%;
		}
}

@media only screen and (min-width: 767px) {
		.post__bookdata-list dd {
				width: calc(100% - 100px);
		}
}

.post__bookdata-publisher_link {
		margin: 2rem auto 4rem;
		text-align: center;
}

.post__bookdata-publisher_link a {
		border-radius: 5rem;
		background: #333;
		display: inline-block;
		padding: 1rem 2rem;
		color: #fff;
		font-weight: bold;
		line-height: 1.8;
}

#studyroom .post__bookdata-publisher_link a {
		background: #00CC77;
}

#books .post__bookdata-publisher_link a {
		background: #ffa747;
}

@media only screen and (max-width: 766px) {
		.post__bookdata-publisher_link a em {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.post__bookdata-publisher_link a em {
				display: inline-block;
				padding-right: 1rem;
		}
}

@media only screen and (max-width: 766px) {
		.post__profile {
				width: auto;
				margin: 0 5vw 4rem;
		}
}

@media only screen and (min-width: 767px) {
		.post__profile {
				max-width: 540px;
				margin: 0 auto 4rem;
		}
}

.post__profile-title {
		border-left: 0.25rem solid #231815;
		font-size: 1rem;
		padding: 0 0.5rem;
		margin: 1rem 0 1.5rem;
}

.post__profile-content {
		padding: 0 1rem 1rem 220px;
		position: relative;
		padding: 0;
}

.post__profile-data {
		width: 100%;
}

@media only screen and (max-width: 766px) {
		.post__profile-data {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.post__profile-data {
				display: flex;
		}
}

.post__profile-figure {
		width: auto;
		height: auto;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.post__profile-figure {
				text-align: center;
				margin: 0 auto 7.5vw;
		}
}

@media only screen and (min-width: 767px) {
		.post__profile-figure {
				max-width: 180px;
				padding: 0 0 2rem;
				margin: 0 2rem 0 0;
		}
}

.post__profile-figure img {
		width: auto;
		height: auto;
}

@media only screen and (max-width: 766px) {
		.post__profile-figure img {
				max-width: 60vw;
		}
}

@media only screen and (min-width: 767px) {
		.post__profile-figure img {
				max-width: 180px;
		}
}

.post__profile-name_text {
		width: auto;
}

.post__profile-name {
		font-size: 1rem;
		margin-bottom: 1.5rem;
}

.post__profile-text {
		font-size: 0.85rem;
		line-height: 1.5;
		margin-bottom: 2rem;
}

.post__profile-text a {
		border-bottom: 1px dashed #231815;
		color: #231815;
		text-decoration: none;
		letter-spacing: 0.15rem;
}

.post__profile-text a:hover {
		opacity: 0.7;
}

.post__profile-add_text {
		width: 100%;
		font-size: 0.85rem;
		line-height: 1.5;
		margin-bottom: 2rem;
}

.post__profile-add_text a {
		border-bottom: 1px dashed #231815;
		color: #231815;
		text-decoration: none;
		letter-spacing: 0.15rem;
}

.post__profile-add_text a:hover {
		opacity: 0.7;
}

.post__profile-sns {
		width: 100%;
		line-height: 1.8;
}

.post__profile-sns_title {
		font-size: 0.85rem;
		padding-bottom: 0.5rem;
		margin-bottom: 0.5rem;
		border-bottom: 1px dashed #888877;
}

.post__profile-sns_item {
		color: #888877;
		font-size: 0.85rem;
		text-decoration: none;
		letter-spacing: 0.15rem;
		padding: 0 0 0.25rem;
}

.post__profile-sns_item span {
		display: inline;
}

.post__profile-sns_item a {
		color: #231815;
}

.post__profile-sns_item a:hover {
		color: #db7600;
}

/*-----table of contents--------
1.著述者への道
------------------------------*/
.tBAA {
		background: #fff;
}

.tBAA:before, .tBAA:after {
		display: block;
		content: "";
		clear: both;
		height: 0;
		overflow: hidden;
}

@media only screen and (max-width: 766px) {
		.tBAA {
				width: 100%;
				padding: 0;
				margin: 0 auto 4rem;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA {
				width: auto;
				max-width: 760px;
				padding: 0 1rem;
				margin: 0 auto 8rem;
		}
}

.tBAA__title {
		background: #FF2F2F;
		border: 0.5rem solid #FF2F2F;
		color: #fff;
		font-size: 1.5rem;
		font-weight: bold;
		letter-spacing: 0.25rem;
		text-align: center;
}

.tBAA__title span {
		font-style: normal;
		display: block;
		margin: auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.tBAA__title span {
				line-height: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__title span {
				line-height: 92px;
				width: 740px;
				height: 92px;
		}
}

.tBAA__title span::before, .tBAA__title span::after {
		content: ' ';
		width: 0;
		height: 0;
		position: absolute;
		z-index: 1;
}

.tBAA__title span::before {
		top: 0;
		left: 0;
}

@media only screen and (max-width: 766px) {
		.tBAA__title span::before {
				border-top: 5vw solid #DD0000;
				border-right: 5vw solid transparent;
				border-bottom: 5vw solid transparent;
				border-left: 5vw solid #DD0000;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__title span::before {
				border-top: 46px solid #DD0000;
				border-right: 46px solid transparent;
				border-bottom: 46px solid transparent;
				border-left: 46px solid #DD0000;
		}
}

.tBAA__title span::after {
		bottom: 0;
		right: 0;
}

@media only screen and (max-width: 766px) {
		.tBAA__title span::after {
				border-top: 5vw solid transparent;
				border-right: 5vw solid #DD0000;
				border-bottom: 5vw solid #DD0000;
				border-left: 5vw solid transparent;
				right: 0px;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__title span::after {
				border-top: 46px solid transparent;
				border-right: 46px solid #DD0000;
				border-bottom: 46px solid #DD0000;
				border-left: 46px solid transparent;
		}
}

@media only screen and (max-width: 766px) {
		.tBAA__contents {
				width: 90vw;
				padding: 0;
				margin: auto;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__contents {
				width: 100%;
		}
}

.tBAA__description {
		border: 1px dashed #989898;
		font-weight: bold;
}

@media only screen and (max-width: 766px) {
		.tBAA__description {
				width: inherit;
				line-height: 2;
				padding: 1.25rem;
				margin: 2rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__description {
				width: 100%;
				line-height: 1.75;
				padding: 2.5rem 3.5rem;
				margin: 4rem auto;
		}
}

.tBAA__repletion {
		text-align: center;
		width: inherit;
}

.tBAA__repletion__list {
		padding: 0;
		font-size: 0;
}

@media only screen and (max-width: 766px) {
		.tBAA__repletion__list {
				margin: 0 auto 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__repletion__list {
				margin: 0 auto 4rem;
		}
}

.tBAA__repletion__list--item {
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.tBAA__repletion__list--item {
				font-size: 0.9rem;
				padding: 0 0.4rem;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__repletion__list--item {
				font-size: 1rem;
				letter-spacing: 0.15rem;
				padding: 0 1rem;
		}
}

.tBAA__repletion__list--item::before {
		content: "●";
		font-size: 1rem;
}

.tBAA__repletion__list--item.author::before {
		color: #FF2F2F;
}

.tBAA__repletion__list--item.publisher::before {
		color: #00DDBB;
}

.tBAA__repletion__list--item.common::before {
		color: #0099FF;
}

.tBAA__flow {
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow {
				width: inherit;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow {
				width: auto;
				max-width: 760px;
		}
}

.tBAA__flow--block {
		display: inline-block;
		vertical-align: top;
		font-size: 0;
		padding: 0;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow--block {
				width: inherit;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow--block {
				width: auto;
				max-width: 360px;
		}
}

.tBAA__flow__title {
		font-size: 1rem;
		font-weight: bold;
		text-align: center;
		letter-spacing: 0.15rem;
		line-height: 2;
		border-bottom: 5px solid #272727;
		margin-bottom: 2rem;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow__title {
				width: inherit;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow__title {
				width: auto;
				max-width: 325px;
		}
		.flow--primary .tBAA__flow__title {
				margin-right: 2.5rem;
		}
		.flow--secondary .tBAA__flow__title {
				margin-left: 2.5rem;
		}
}

.tBAA__flow__title em {
		font-size: 1.25rem;
}

.tBAA__flow__list {
		margin: 0;
		padding: 0;
		font-size: 0;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow__list {
				width: inherit;
				margin-bottom: 4rem;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow__list {
				width: 375px;
				padding: 0;
		}
		.flow--primary .tBAA__flow__list {
				padding-right: 50px;
		}
		.flow--secondary .tBAA__flow__list {
				border-left: 1px dashed #989898;
				padding-left: 25px;
		}
}

.tBAA__flow__list--item {
		background: #cccc;
		font-size: 1.1rem;
		line-height: 1.5;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow__list--item {
				width: inherit;
				height: auto;
				padding: 1rem 2rem;
				padding-left: 30vw;
				margin: 0 auto 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow__list--item {
				width: 325px;
				height: 140px;
				padding-left: 100px;
				margin: 0 auto 2rem;
		}
}

.tBAA__flow__list--item.author {
		background: #FF2F2F;
		color: #fff;
}

.tBAA__flow__list--item.author em {
		background: #DD0000;
}

.tBAA__flow__list--item.publisher {
		background: #00DDBB;
		color: #272727;
}

.tBAA__flow__list--item.publisher em {
		background: #00BBAA;
}

.tBAA__flow__list--item.common {
		background: #0099FF;
		color: #fff;
}

.tBAA__flow__list--item.common em {
		background: #0077CC;
}

.tBAA__flow__list--item em {
		position: absolute;
		display: block;
		border-radius: 50%;
		background: #272727;
		color: #fff;
		font-weight: bold;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow__list--item em {
				width: 15vw;
				height: 15vw;
				line-height: 15vw;
				top: 2vw;
				left: 10vw;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow__list--item em {
				width: 50px;
				height: 50px;
				line-height: 50px;
				top: 20px;
				left: 40px;
		}
}

.tBAA__flow__text {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		font-weight: bold;
		text-align: center;
		letter-spacing: 0.15rem;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow__text {
				width: 50vw;
				height: 25vw;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow__text {
				width: 225px;
				height: 140px;
		}
}

.tBAA__flow__text small {
		font-size: 0.8rem;
		font-weight: normal;
		display: block;
}

@media only screen and (max-width: 766px) {
		.tBAA__flow__text small {
				margin-top: 0px;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__flow__text small {
				margin-top: -30px;
		}
}

.tBAA__position__list {
		position: absolute;
}

@media only screen and (max-width: 766px) {
		.tBAA__position__list {
				bottom: 2vw;
				left: 10vw;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__position__list {
				bottom: 10px;
				left: 35px;
		}
}

.tBAA__position__list--item {
		display: block;
		background: #fff;
		line-height: 2;
		font-size: 0.7rem;
		text-align: center;
		margin-bottom: 0.15rem;
}

@media only screen and (max-width: 766px) {
		.tBAA__position__list--item {
				width: 15vw;
		}
}

@media only screen and (min-width: 767px) {
		.tBAA__position__list--item {
				width: 60px;
		}
}

.author .tBAA__position__list--item.author {
		background: #fff;
		color: #F0000F;
}

.author .tBAA__position__list--item.publisher {
		background: #FFA8A8;
		color: #FF5E5E;
}

.publisher .tBAA__position__list--item.author {
		background: #55EEDD;
		color: #00DDBB;
}

.publisher .tBAA__position__list--item.publisher {
		background: #fff;
		color: #007788;
}

.common .tBAA__position__list--item.author {
		background: #fff;
		color: #0077CC;
}

.common .tBAA__position__list--item.publisher {
		background: #fff;
		color: #0077CC;
}

.tBAA__note {
		background: #EFEFEF;
		width: 100%;
		font-size: 0.9rem;
		line-height: 2;
		text-align: left;
		padding: 3rem;
}

.company {
		position: relative;
}

@media only screen and (max-width: 766px) {
		.company {
				width: 100vw;
				padding: 10vw 5vw;
				margin: 0;
		}
}

@media only screen and (min-width: 767px) {
		.company {
				width: 680px;
				padding: 40px 0;
				margin: 0 -50px;
		}
}

.company:before, .company:after {
		display: block;
		content: "";
		clear: both;
		height: 0;
		overflow: hidden;
}

.company__miraipub {
		background: #443737;
		color: #fff;
}

@media only screen and (max-width: 766px) {
		.company__miraipub {
				padding: 8vw;
		}
}

@media only screen and (min-width: 767px) {
		.company__miraipub {
				width: 100%;
				padding: 40px;
				margin: 0 auto 80px;
		}
}

.company__miraipub h4 {
		font-weight: bold;
		letter-spacing: 0.25rem;
		display: block;
		margin-bottom: 2rem;
}

.company__miraipub h4 em {
		font-size: 0.8rem;
		font-weight: normal;
		letter-spacing: 0.15rem;
}

.company__miraipub p {
		line-height: 2;
		margin-bottom: 0.5rem;
}

.company__miraipub a {
		color: #fff;
		letter-spacing: 0.15rem;
		padding: 0 0.25rem 0.15rem;
		border-bottom: 1px dashed #ddd;
}

.company__miraipub a:hover {
		opacity: 0.5;
}

.company__miraipub__list {
		font-size: 0;
}

.company__miraipub__list--item {
		font-size: 0.8rem;
		line-height: 2;
}

.company__miraipub__list--item::before {
		content: '※';
}

@media only screen and (max-width: 766px) {
		.company__data {
				display: flex;
				vertical-align: top;
				width: 100%;
				margin: 0 auto 40px;
		}
}

.company__data--address {
		color: #272727;
		line-height: 2;
}

@media only screen and (max-width: 766px) {
		.company__data--address {
				font-size: 0.8rem;
				padding: 10vw 0;
		}
}

@media only screen and (min-width: 767px) {
		.company__data--address {
				width: 360px;
				font-size: 0.8rem;
		}
}

.company__data--address strong {
		font-weight: bold;
		display: block;
		margin-bottom: 1rem;
}

.company__data--address span {
		display: block;
}

.company__data--address--related {
		display: flex;
		justify-content: center;
		align-items: center;
		background: #fff;
		padding: 1.5rem 0;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.company__data--address--related {
				width: inherit;
				margin: 0 auto 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.company__data--address--related {
				width: 400px;
		}
}

@media only screen and (max-width: 766px) {
		.company__data--address--related a {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.company__data--address--related a {
				display: inline-block;
				transition-property: all;
				transition: 0.3s linear;
		}
		.company__data--address--related a:hover {
				opacity: 0.3;
		}
}

@media only screen and (max-width: 766px) {
		.company__data--address--related .logo_jdiscover,
		.company__data--address--related .logo_jdiscover img {
				width: 45vw;
		}
}

@media only screen and (min-width: 767px) {
		.company__data--address--related .logo_jdiscover,
		.company__data--address--related .logo_jdiscover img {
				width: 200px;
		}
}

@media only screen and (max-width: 766px) {
		.company__data--address--related .logo_miraipub,
		.company__data--address--related .logo_miraipub img {
				width: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.company__data--address--related .logo_miraipub,
		.company__data--address--related .logo_miraipub img {
				width: 100px;
		}
}

@media only screen and (max-width: 766px) {
		.company__data--address--related .logo_poempiece,
		.company__data--address--related .logo_poempiece img {
				width: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.company__data--address--related .logo_poempiece,
		.company__data--address--related .logo_poempiece img {
				width: 60px;
		}
}

.company .company_copyright {
		font-family: 'Montserrat', sans-serif;
		font-weight: 500;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.company .company_copyright {
				font-size: 1rem;
				margin: 0 auto 6rem;
		}
}

@media only screen and (min-width: 767px) {
		.company .company_copyright {
				font-size: 1rem;
		}
}

/*-----table of contents--------
サイド要素

------------------------------*/
/*
ブログ お知らせ　プレスリリース　サイドカラム
*/
.post__aside {
		font-size: 0.9rem;
}

@media only screen and (max-width: 766px) {
		.post__aside {
				width: 80vw;
				margin: 1.5rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.post__aside {
				width: 15%;
				min-width: 280px;
				margin: 5rem auto 0;
		}
}

.aside__parts {
		font-size: 1rem;
		padding: 0;
		/* &.blog {
		  margin: 0 auto 3.5rem;
		}
		&.news {
		  margin: 0 auto 3.5rem;
		}
		&.pressrelease {
		  margin: 0 auto 3.5rem;
		} */
}

@media only screen and (max-width: 766px) {
		.aside__parts {
				width: 80vw;
				margin: 0 auto 2.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.aside__parts {
				width: 240px;
				margin: 0 auto 5rem;
		}
}

.aside__parts.category {
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.aside__parts.category {
				width: 80vw;
		}
}

@media only screen and (min-width: 767px) {
		.aside__parts.category {
				width: 240px;
		}
}

.aside__parts-category {
		display: block;
		font-size: 0.75rem;
}

.aside__parts-category a {
		border-radius: 2rem;
		border: 1px solid #231815;
		color: #231815;
		display: inline-block;
		line-height: 1.5;
		padding: 0 0.75rem;
		margin: 0 0.25rem 0.5rem;
		text-decoration: none;
}

.aside__parts-category a:hover {
		background: #231815;
		color: #fff;
}

.aside__title {
		font-size: 1.15rem;
		text-align: center;
		margin-bottom: 2rem;
}

.aside__title span {
		border-bottom: 3px solid #231815;
		padding-bottom: 0.35rem;
}

.aside__lists {
		border-top: 1px dashed #b6aaa6;
		color: #231815;
		padding: 0;
		margin: 0;
		margin-bottom: 0.5rem;
}

.aside__list {
		border-bottom: 1px dashed #b6aaa6;
		color: #231815;
		list-style: none;
		padding: 0;
		margin: 0;
}

.aside__list a {
		color: #231815;
		font-size: 1rem;
		text-decoration: none;
		line-height: 1.5;
		padding: 0.25rem;
		display: block;
}

@media only screen and (min-width: 767px) {
		.aside__list a:hover {
				/* background: #231815;
					color: #fff; */
				background: #fff;
				opacity: 1;
		}
		.aside__parts.blog .aside__list a:hover {
				color: #FF2F2F;
		}
		.aside__parts.news .aside__list a:hover {
				color: #AAAAFF;
				color: #8888e2;
		}
		.aside__parts.pressrelease .aside__list a:hover {
				color: #00CC77;
				color: #0da968;
		}
}

.aside__list span.date {
		font-size: 0.85rem;
		display: block;
}

.aside__list em {
		font-size: 1rem;
}

.aside__more {
		text-align: center;
}

.aside__more a {
		border-bottom: 1px solid #231815;
		width: auto;
		color: #231815;
		display: inline-block;
		font-size: 0.8rem;
		text-align: center;
		text-decoration: none;
		padding: 0.25rem 0;
		margin: 1rem auto;
}

/*
ページネーション
-------------------------------------------*/
.page-numbers {
		border-radius: 2rem;
		border: 1px solid #231815;
		background: none;
		color: #231815;
		text-decoration: none;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.page-numbers {
				font-size: 0.75rem;
				line-height: 2rem;
				padding: 0.25rem 0.5rem;
				margin: 0.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.page-numbers {
				font-size: 1rem;
				line-height: 3rem;
				padding: 0.5rem 1rem;
				margin: 0.5rem;
		}
}

.paginate_links > .page-numbers {
		border: none;
}

li .page-numbers:hover {
		background: #fff;
}

.page-numbers li {
		width: auto;
		display: inline-block;
		margin: 0;
		padding: 0;
}

.page-numbers.current {
		border-radius: 2rem;
		border: 1px solid #231815;
		background: #231815;
		color: #fff;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.page-numbers.current {
				font-size: 0.75rem;
				line-height: 2rem;
				padding: 0.25rem 0.5rem;
				margin: 0.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.page-numbers.current {
				font-size: 1rem;
				line-height: 3rem;
				padding: 0.5rem 1rem;
				margin: 0.5rem;
		}
}

.page-numbers.current:hover {
		background: #231815;
}

.page-numbers.dots {
		border: none;
		background: none;
		vertical-align: top;
		padding: 0.5rem 0;
		margin: 0;
}

.page-numbers.dots:hover {
		background: none;
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
.autoprice__contents {
		background: #E3E3E3;
		width: 100%;
		line-height: 1.55;
		margin: 0 auto;
		padding: 60px 0 4vw;
}

.autoprice__contents-header {
		background: #231815;
		font-size: 1.25rem;
		display: inline-table;
		text-align: center;
		padding-bottom: 1rem;
		vertical-align: middle;
}

@media only screen and (max-width: 766px) {
		.autoprice__contents-header {
				width: 100%;
				height: 20vw;
				line-height: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__contents-header {
				width: 100%;
				height: 120px;
				line-height: 120px;
		}
}

.autoprice__contents-title {
		color: #fff;
		font-weight: 800;
		line-height: 1;
		padding-bottom: 0.75rem;
		border-bottom: 0.25rem solid #fff;
		display: inline-block;
		margin: auto;
}

.autoprice__contents-title span {
		display: inline-block;
		letter-spacing: 0.15rem;
		margin: 0 -1rem;
}

.autoprice__content {
		width: auto;
		font-size: 1rem;
		line-height: 1.75;
		margin: 5vw auto;
		padding: 0 4vw;
		box-sizing: border-box;
}

@media only screen and (min-width: 767px) {
		.autoprice__content {
				max-width: 1080px;
				min-width: 960px;
		}
}

.form-lead {
		background: #fff;
		width: auto;
		font-size: 1.05rem;
		line-height: 1.55;
		margin: 5vw auto;
		padding: 2.5rem 5vw;
}

@media only screen and (min-width: 767px) {
		.form-lead {
				max-width: 1080px;
				min-width: 960px;
		}
}

.form-lead strong {
		font-weight: 800;
		letter-spacing: 0.05rem;
}

.autoprice__contents.econfirm .form-lead,
.autoprice__contents.phase-02 .form-lead,
.autoprice__contents.bconfirm .form-lead,
.autoprice__contents.phase-03 .form-lead,
.autoprice__contents.confirm .form-lead,
.autoprice__contents.thanks .form-lead {
		display: none;
}

.form__blocks {
		width: auto;
		font-size: 1rem;
		margin: 5vw auto;
		padding: 0;
}

@media only screen and (min-width: 767px) {
		.form__blocks {
				max-width: 1080px;
				min-width: 960px;
		}
}

.form__blocks-item {
		padding: 0;
		margin: 0;
}

.form__blocks-header {
		background: #fff;
		width: 100%;
		font-size: 1.5rem;
		display: inline-table;
		text-align: center;
		padding-bottom: 0.5rem;
		margin-bottom: 4vw;
		vertical-align: middle;
}

@media only screen and (max-width: 766px) {
		.form__blocks-header {
				height: auto;
				line-height: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.form__blocks-header {
				height: 120px;
				line-height: 120px;
		}
}

.form__blocks-title {
		color: #231815;
		font-weight: 800;
		line-height: 1;
		padding-bottom: 0.75rem;
		border-bottom: 0.25rem solid #231815;
		display: inline-block;
		margin: auto;
}

.form__blocks-title em {
		display: inline-block;
		letter-spacing: 0.15rem;
		margin: 0 -1rem;
}

.form__content {
		background: #fff;
		width: 100%;
}

.form__content.block-b03 {
		display: none;
}

@media only screen and (max-width: 766px) {
		.form__content {
				padding: 5vw 5vw;
				margin-bottom: 5vw;
		}
		.form__content.block-04 {
				padding-bottom: 0;
		}
}

@media only screen and (min-width: 767px) {
		.form__content {
				padding: 3rem 4rem;
				margin-bottom: 4vw;
		}
}

.form__content.unactivated {
		background: #c7c7c7;
		opacity: 0.5;
}

.form__content.unactivated .form__content-wrap {
		display: none;
}

.form__content.block-b07.hardcover .block-b07_form.form-lists li:nth-child(2) {
		opacity: 0.35;
}

.form__content-header {
		border-bottom: 4px solid #301919;
		width: auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.form__content-header {
				margin: 0 auto;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-header {
				min-width: 640px;
				margin: 0 auto 2rem;
		}
}

@media only screen and (max-width: 766px) {
		.form__content-header > span {
				position: absolute;
				right: 0;
				top: -0.5rem;
				border-radius: 1rem;
				background: #ff3535;
				width: 3.5rem;
				color: #fff;
				font-size: 0.5rem;
				font-weight: 800;
				letter-spacing: 0.5rem;
				text-align: center;
				padding: 0.25rem 0.25rem 0.25rem 0.5rem;
				margin: auto;
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-header > span {
				position: absolute;
				right: 0;
				top: 1rem;
				border-radius: 1rem;
				background: #ff3535;
				width: 4rem;
				color: #fff;
				font-size: 0.75rem;
				font-weight: 800;
				letter-spacing: 0.5rem;
				text-align: center;
				padding: 0.25rem 0.25rem 0.25rem 0.75rem;
				margin: auto;
				display: block;
		}
}

.form__content-title {
		position: relative;
		font-weight: 800;
}

@media only screen and (max-width: 766px) {
		.form__content-title {
				font-size: 1.1rem;
				line-height: 1.5;
				padding: 1rem 0 0.5rem 3rem;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-title {
				font-size: 1.25rem;
				line-height: 3;
				padding-left: 4rem;
		}
}

@media only screen and (max-width: 766px) {
		.form__content-title em {
				border-radius: 3rem;
				border: 3px solid #231815;
				width: 2rem;
				height: 2rem;
				font-size: 1.15rem;
				font-weight: 800;
				line-height: 1.5;
				text-align: center;
				position: absolute;
				top: 0.75rem;
				left: 0;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-title em {
				border-radius: 3rem;
				border: 3px solid #231815;
				width: 2.5rem;
				height: 2.5rem;
				font-size: 1.25rem;
				font-weight: 800;
				line-height: 1.75;
				text-align: center;
				position: absolute;
				top: 0.5rem;
				left: 0;
		}
}

@media only screen and (max-width: 766px) {
		.form__content-wrap {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-wrap {
				display: flex;
		}
}

.form__content-text {
		color: rgba(35, 24, 21, 0.8);
		vertical-align: top;
		font-size: 1.05rem;
		line-height: 1.8;
}

@media only screen and (max-width: 766px) {
		.form__content-text {
				width: 100%;
				font-size: 1.05rem;
				padding: 1.25rem 0;
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-text {
				width: 39.45%;
				font-size: 0.95rem;
				padding: 0 2rem 0 0;
				display: inline-block;
		}
}

.form__content-text h5 {
		font-weight: bold;
		padding: 0.25rem 0;
}

.form__content-text table {
		width: 100%;
		font-size: 0.95rem;
}

.form__content-text table thead {
		text-align: left;
		font-weight: bold;
		border-top: 1px solid #231815;
		border-bottom: 1px solid #231815;
}

.form__content-text table tbody tr {
		border-bottom: 1px dashed #231815;
}

.form__content-text table th, .form__content-text table td {
		padding: 0.5rem 0;
}

.form__content-text.block-c01_text table {
		border-top: 1px dashed #231815;
		width: 100%;
}

.form__content-text.block-c01_text table th {
		border-bottom: 1px dashed #231815;
		font-weight: bold;
		text-align: left;
		padding: 5px 0;
		display: block;
}

.form__content-text.block-c01_text table td {
		padding: 5px 0;
		display: block;
}

.form__content-form {
		font-size: 1.1rem;
		line-height: 2.5;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.form__content-form {
				border-top: 3px solid #231815;
				width: 100%;
				padding: 1.25rem 0 0;
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-form {
				border-left: 3px solid #231815;
				width: 60%;
				padding: 0 0 0 2rem;
				display: inline-block;
		}
}

.form__content-form.block-e02_form {
		padding-bottom: 0;
}

.form__content-form.block-b08_form small {
		color: #ff3535;
		line-height: 1.5;
		font-size: 0.9rem;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.form__content-form.block-b08_form small {
				padding: 1rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.form__content-form.block-b08_form small {
				padding: 1rem 0 0 1.5rem;
		}
}

.form__content-form legend {
		border-bottom: 3px double #231815;
		width: auto;
		font-size: 0.9rem;
		text-align: left;
		line-height: 1;
		padding: 0 0.25rem 0.5rem 0;
}

.form__content-form legend:before {
		content: '●';
		font-size: 1rem;
		padding-right: 0.5rem;
}

.form__content-form input {
		font-size: 1.15rem;
		padding: 0.5rem 1rem;
}

@media only screen and (max-width: 766px) {
		.form__content-form input#pagecount {
				width: 45%;
		}
}

.form__content-form select {
		min-width: 15rem;
		font-size: 1.15rem;
		padding: 0.5rem 1rem;
}

.form-parts {
		padding: 1.5rem 0;
}

.form-part {
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.form-lists {
				padding: 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.form-lists {
				padding: 1.5rem 0 0;
		}
}

.form-lists.block-e02_form {
		padding: 0;
}

.form-lists_note {
		display: inline-block;
		font-size: 0.9rem;
		line-height: 1.8;
		margin-top: 1.5rem;
		margin-left: 2rem;
}

.form-lists_note span {
		display: inline-block;
		margin-left: -1.75rem;
		margin-right: 0.25rem;
}

#block-c04 .form-lists_note em {
		color: #ff3535;
		font-style: normal;
}

.form-list {
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.form-list {
				line-height: 1.5;
		}
}

@media only screen and (min-width: 767px) {
		.form-list {
				line-height: 2.25;
		}
}

.form-list label {
		font-size: 1.1rem;
		letter-spacing: 0.1rem;
}

.form-list label + span {
		display: inline-block;
		font-size: 0.9rem;
		margin-left: 1rem;
}

.form-list label + sup {
		display: inline-block;
		font-size: 0.9rem;
		margin-top: -0.5rem;
		margin-left: 0.5rem;
}

.form-list-note {
		color: #857570;
		font-size: 1rem;
		line-height: 1.5;
		padding-left: 1.75rem;
		margin-bottom: 0.75rem;
}

.form-list-note b {
		padding-right: 0.25rem;
}

.form__aside {
		width: 100%;
}

@media only screen and (max-width: 766px) {
		.form__aside {
				margin: 0 auto 0;
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside {
				margin: 2rem auto 0;
				padding: 0;
		}
}

.form__aside.none {
		display: none;
}

.form__aside.block-04_aside {
		background: #efefef;
}

@media only screen and (max-width: 766px) {
		.form__aside.block-04_aside {
				width: auto;
				padding: 0.5rem 1rem 1.5rem;
				margin: 0 -5vw;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside.block-04_aside {
				padding: 0.5rem 2.5rem 2.5rem;
		}
}

@media only screen and (max-width: 766px) {
		.form__aside .form-part em input#receive {
				width: 50%;
		}
}

.form__aside-listbox {
		width: 100%;
}

.form__aside-listbox.inline {
		height: auto;
		overflow-x: auto;
		white-space: nowrap;
}

.form__aside-lists {
		width: 100%;
		height: auto;
		font-size: 0;
}

.form__aside-list {
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.form__aside-list {
				width: 55vw;
				height: auto;
				padding: 2.5vw;
				vertical-align: top;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside-list {
				width: 300px;
				height: auto;
				padding: 1.25rem 0;
		}
}

@media only screen and (max-width: 766px) {
		#block-f02 .form__aside-list {
				width: 80vw;
		}
}

@media only screen and (min-width: 767px) {
		#block-f02 .form__aside-list {
				width: 460px;
		}
}

.form__aside-list img {
		height: auto;
}

@media only screen and (max-width: 766px) {
		.form__aside-list img {
				width: 50vw;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside-list img {
				max-width: 300px;
		}
}

@media only screen and (max-width: 766px) {
		#block-f02 .form__aside-list img {
				width: 80vw;
		}
}

@media only screen and (min-width: 767px) {
		#block-f02 .form__aside-list img {
				max-width: 460px;
		}
}

.form__aside-list span {
		display: block;
}

@media only screen and (max-width: 766px) {
		.form__aside-list span {
				width: 50vw;
				font-size: 0.8rem;
				text-align: left;
				padding: 1rem 0 0;
				white-space: normal;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside-list span {
				max-width: 300px;
				font-size: 1rem;
				text-align: center;
				padding: 1.25rem 0 0;
		}
}

.form__aside-buttom {
		width: 100%;
		margin: 3rem auto 8vw;
}

.form__aside-header {
		border-bottom: 4px solid #301919;
		width: auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.form__aside-header {
				margin: 1rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside-header {
				min-width: 640px;
				margin: 2rem auto 2rem;
		}
}

.form__aside-title {
		position: relative;
		font-size: 1.25rem;
		font-weight: 800;
		line-height: 3;
}

.form__aside-form {
		width: 100%;
}

.form__aside-button {
		border-top: 1px solid #231815;
		width: 100%;
		text-align: center;
		padding: 2.5rem 0;
}

.form__aside-button button {
		border-radius: 5rem;
		background: #301919;
		color: #fff;
		font-size: 1rem;
		font-weight: 800;
		text-align: center;
		margin: auto;
		display: block;
}

@media only screen and (max-width: 766px) {
		.form__aside-button button {
				width: auto;
				padding: 0.75rem 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside-button button {
				width: 20rem;
				letter-spacing: 0.5rem;
				padding: 0.75rem 0;
		}
}

.form__aside-button button:hover {
		opacity: 0.75;
}

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

.form__aside-form .form-parts {
		width: 100%;
		padding: 0 0 2.5rem;
}

.form__aside-form .form-part {
		width: 100%;
		padding: 0.25rem 0;
}

.form__aside-form .form-part span {
		font-size: 1rem;
}

@media only screen and (max-width: 766px) {
		.form__aside-form .form-part span {
				width: 100%;
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.form__aside-form .form-part span {
				width: 39.45%;
				display: inline-block;
		}
}

@media only screen and (max-width: 766px) {
		#block-a04 .form__aside-form .form-part span {
				padding-left: 0;
		}
}

@media only screen and (min-width: 767px) {
		#block-a04 .form__aside-form .form-part span {
				padding-left: 1rem;
		}
}

#block-a04 .form__aside-form .form-part span:before {
		content: '◎';
		font-size: 1rem;
		padding-right: 0.5rem;
}

@media only screen and (max-width: 766px) {
		.block-06_form .form__aside-form .form-part span {
				width: auto;
				display: inline-block;
		}
}

.form__aside-form .form-part em {
		width: auto;
		font-size: 1.15rem;
		padding: 0;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.block-06_form .form__aside-form .form-part em {
				width: 80%;
		}
}

.form__aside-form .form-part em input,
.form__aside-form .form-part em select {
		font-size: 1.15rem;
		padding: 0.5rem 1rem;
}

@media only screen and (max-width: 766px) {
		.form__aside-form .form-part em input#receive {
				width: 80%;
		}
}

.block_form-btm {
		width: 100%;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.block_form-btm {
				padding: 2rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.block_form-btm {
				padding: 5rem 0;
		}
}

.block_form-btm button {
		border-radius: 5rem;
		background: #301919;
		width: auto;
		color: #fff;
		font-size: 1.5rem;
		letter-spacing: 0.5rem;
		text-align: center;
		margin: auto;
		display: block;
}

@media only screen and (max-width: 766px) {
		.block_form-btm button {
				padding: 1rem 3.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.block_form-btm button {
				padding: 1rem 5rem;
		}
}

/*
div[class$="_text"] {
  font-weight:bold;
  color:red;
}
*/
.block-a01_form .block-01_form.form-lists {
		margin-left: -2rem;
}

.block-a01_form .block-01_form .form-list {
		display: inline-block;
		padding-left: 2rem;
}

.block-e02_form_aside {
		background: #e0e0e0;
		width: auto;
}

@media only screen and (max-width: 766px) {
		.block-e02_form_aside {
				padding: 5vw;
				margin: 0.5rem 0 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.block-e02_form_aside {
				padding: 1rem;
				margin: 0.5rem 0 1rem;
		}
}

.block-e02_form_aside ul {
		list-style-type: disc;
		padding-left: 0.5rem;
}

.block-e02_form_aside li {
		margin-left: 1rem;
		line-height: 1.5;
		padding: 0.25rem 0;
}

.block_aside_form {
		display: block;
		font-size: 0;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.block_aside_form {
				margin: 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.block_aside_form {
				margin-top: 3rem;
		}
}

.block_form-btm.submit {
		text-align: center;
		padding: 1rem 0 0;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.block_form-btm.submit {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.block_form-btm.submit {
				width: 50%;
		}
}

.block_form-btm.submit button {
		border-radius: 2.5rem;
		border: 1px solid #301919;
		background: #301919;
		width: auto;
		color: #fff;
		font-size: 1rem;
		text-align: center;
		margin: auto;
		display: block;
}

@media only screen and (max-width: 766px) {
		.block_form-btm.submit button {
				padding: 1rem 1.5rem;
				letter-spacing: 0;
		}
}

@media only screen and (min-width: 767px) {
		.block_form-btm.submit button {
				padding: 1rem 2.5rem;
				letter-spacing: 0.15rem;
		}
}

.block_form-btm.submit button:hover {
		opacity: 0.75;
}

.block_form-btm.back {
		text-align: center;
		padding: 1rem 0 0;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.block_form-btm.back {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.block_form-btm.back {
				width: 50%;
		}
}

.block_form-btm.back button {
		border-radius: 2.5rem;
		border: 1px solid #301919;
		background: #fff;
		width: auto;
		color: #301919;
		font-size: 1rem;
		letter-spacing: 0.15rem;
		text-align: center;
		margin: auto;
		display: block;
}

@media only screen and (max-width: 766px) {
		.block_form-btm.back button {
				padding: 1rem 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.block_form-btm.back button {
				padding: 1rem 2.5rem;
		}
}

.block_form-btm.back button:hover {
		opacity: 0.75;
}

@media only screen and (max-width: 766px) {
		.form-block-bookdata {
				margin: 0 auto 5rem;
		}
}

@media only screen and (min-width: 767px) {
		.form-block-bookdata {
				margin: 0 auto 10rem;
		}
}

.autoprice__confirm {
		background: #fff;
		width: 100%;
		padding: 4vw;
}

.autoprice__confirm-title {
		border-bottom: 4px solid #231815;
		font-weight: 800;
		text-align: center;
		padding-bottom: 1rem;
		margin: 0 auto 2rem;
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-title {
				width: auto;
				font-size: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-title {
				width: 640px;
				font-size: 2rem;
		}
}

.autoprice__confirm-lead {
		font-size: 1rem;
		line-height: 1.75;
		text-align: left;
		margin: 0 auto 2rem;
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-lead {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-lead {
				width: 640px;
		}
}

.autoprice__confirm-price {
		border: none;
		background: #E3E3E3;
		padding: 1rem 0;
		margin: 2rem auto 4rem;
		text-align: center;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-price {
				width: auto;
				height: auto;
				padding: 1rem 0;
				margin: 2rem auto 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-price {
				width: 640px;
				height: auto;
				padding: 1rem 0 0.5rem;
				margin: 2rem auto 4rem;
		}
}

.autoprice__confirm-price strong {
		border-bottom: 4px solid #231815;
		display: block;
		font-size: 1.5rem;
		font-weight: 800;
		padding-bottom: 0.75rem;
		margin-bottom: 1rem;
}

.autoprice__confirm-price b {
		font-size: 1.15rem;
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-price b {
				display: block;
				padding-bottom: 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-price b {
				display: inline;
		}
}

.autoprice__confirm-price em {
		font-size: 2rem;
		font-style: normal;
		padding: 0 1rem;
}

.autoprice__confirm-price small {
		font-size: 1rem;
}

.autoprice__confirm-tablehead {
		border-bottom: 2px solid #231815;
		font-weight: 800;
		text-align: center;
		padding-bottom: 0.5rem;
		margin: 2rem auto 0.25rem;
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-tablehead {
				width: auto;
				font-size: 1.15rem;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-tablehead {
				width: 640px;
				font-size: 1.25rem;
		}
}

.autoprice__confirm-item {
		border-bottom: 1px dashed #231815;
		font-size: 0;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-item {
				display: block;
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-item {
				display: flex;
				width: 640px;
		}
}

.autoprice__confirm-item:nth-child(1) {
		border-top: 1px dashed #231815;
}

.autoprice__confirm-item:nth-child(10), .autoprice__confirm-item:nth-child(11) {
		display: none;
}

.autoprice__confirm-item label {
		font-weight: 800;
		line-height: 1.5rem;
		vertical-align: middle;
		padding: 1rem 1rem 1rem 0;
		/* .confirm & {
          @include forSP(&) {
            width: 34%;
          }
          @include forPC(&) {
            width: 34%;
          }
        } */
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-item label {
				display: block;
				width: 100%;
				font-size: 1.1rem;
				padding: 0.5rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-item label {
				display: inline-block;
				width: 34%;
				font-size: 1.1rem;
				padding: 1rem 1rem 1rem 0;
		}
}

.autoprice__confirm-item em {
		font-style: normal;
		line-height: 1.5rem;
		/* .confirm  & {
          font-size: 0.9rem;
          @include forSP(&) {
            width: 40%;
          }
          @include forPC(&) {
            width: 40%;
          }
        } */
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-item em {
				display: block;
				width: 100%;
				font-size: 1rem;
				padding: 0.25rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-item em {
				display: inline-block;
				width: 62%;
				font-size: 0.9rem;
				padding: 1rem 0;
		}
}

.autoprice__confirm-item span {
		font-style: normal;
		line-height: 1.5rem;
		text-align: right;
		padding: 1rem 0;
		/* .confirm  & {
          display: inline-block;
          font-size: 1.25rem;
          font-style: normal;
          line-height: 1.5rem;
          text-align: right;
          padding: 1rem 0;
          @include forSP(&) {
            width: 26%;
          }
          @include forPC(&) {
            width: 26%;
          }
        } */
}

@media only screen and (max-width: 766px) {
		.autoprice__confirm-item span {
				display: block;
				width: 100%;
				font-size: 1.15rem;
				padding: 0 0 0.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__confirm-item span {
				display: inline-block;
				width: 26%;
				font-size: 1.25rem;
				padding: 1rem 0;
		}
}

/*
.confirm .autoprice__confirm-item label {
  @include forSP(&) {
    width: 34%;
  }
  @include forPC(&) {
    width: 34%;
  }
}
.confirm .autoprice__confirm-item em {
  font-size: 0.9rem;
  @include forSP(&) {
    width: 40%;
  }
  @include forPC(&) {
    width: 40%;
  }
}
.confirm .autoprice__confirm-item span {
  display: inline-block;
  font-size: 1.25rem;
  font-style: normal;
  line-height: 1.5rem;
  text-align: right;
  padding: 1rem 0;
  @include forSP(&) {
    width: 26%;
  }
  @include forPC(&) {
    width: 26%;
  }
}

*/
.form__bookdatas {
		background: #fff;
		font-size: 1rem;
		margin: 4vw auto;
}

@media only screen and (max-width: 766px) {
		.form__bookdatas {
				width: auto;
				padding: 3rem 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.form__bookdatas {
				width: auto;
				max-width: 1080px;
				min-width: 960px;
				padding: 3rem 4rem;
		}
}

.form__bookdata {
		width: 100%;
}

.form__bookdata-title {
		border-bottom: 4px solid #231815;
		font-size: 1.75rem;
		font-weight: 800;
		text-align: center;
		padding-bottom: 1rem;
		margin: 0 auto 2rem;
}

@media only screen and (max-width: 766px) {
		.form__bookdata-title {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.form__bookdata-title {
				width: 820px;
		}
}

.bookdata__entrys {
		border-bottom: 1px dashed #231815;
		font-size: 0;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.bookdata__entrys {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__entrys {
				width: 820px;
		}
}

.bookdata__entry {
		width: 820px;
		font-size: 0;
		padding: 0;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
}

@media only screen and (max-width: 766px) {
		.bookdata__entry {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__entry {
				width: 820px;
		}
}

.bookdata__question {
		border-top: 1px dashed #231815;
		box-sizing: border-box;
		font-size: 1.1rem;
		font-weight: 800;
		line-height: 2;
		margin: 0;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.bookdata__question {
				width: 100%;
				padding: 1rem 0rem 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__question {
				width: 250px;
				padding: 1.5rem 40px 1.5rem 0;
		}
}

.bookdata__question small {
		display: block;
		font-size: 0.85rem;
}

.bookdata__question span {
		border-radius: 1rem;
		background: #ff3535;
		width: auto;
		color: #fff;
		font-size: 0.7rem;
		text-align: center;
		line-height: 2;
		padding: 0.1rem 0.5rem 0.2rem;
		display: inline-block;
		position: absolute;
}

@media only screen and (max-width: 766px) {
		.bookdata__question span {
				top: 1.25rem;
				right: 0;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__question span {
				top: 1.75rem;
				right: 0;
		}
}

@media only screen and (max-width: 766px) {
		.bookdata__question label[for="infomail"] span {
				top: 4rem;
		}
}

.bookdata__anser {
		border-top: 1px dashed #231815;
		box-sizing: border-box;
		font-size: 1.1rem;
		font-style: normal;
		line-height: 1.5;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.bookdata__anser {
				width: 100%;
				padding: 1.15rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__anser {
				width: calc(100% - 250px);
				padding: 1.15rem 0 1.15rem 2.25rem;
		}
}

@media only screen and (max-width: 766px) {
		.bookdata__anser span {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__anser span {
				display: block;
		}
}

@media only screen and (max-width: 766px) {
		.phase-03 .bookdata__anser span {
				padding: 0 0 0 2.5rem;
				text-indent: -2.5em;
		}
}

.bookdata__anser input {
		border: 1px solid #707777;
		/* box-shadow: 2px 2px 4px rgba(35,24,21,0.1); */
		width: auto;
		font-size: 1rem;
		line-height: 1.75;
		padding: 0.5rem 1rem;
}

@media only screen and (max-width: 766px) {
		.bookdata__anser input {
				width: 80vw;
				margin: 0;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__anser input {
				margin: 0 1rem 0 0;
		}
}

@media only screen and (max-width: 766px) {
		.bookdata__anser input.width-w {
				width: 80vw;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__anser input.width-w {
				width: 24rem;
		}
}

@media only screen and (max-width: 766px) {
		.phase-03 .bookdata__anser input {
				margin: 0 0 0 -0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.phase-03 .bookdata__anser input {
				margin: 0 1rem 0 -2rem;
		}
}

@media only screen and (max-width: 766px) {
		.bookdata__anser input[type="radio"] {
				width: 15vw;
		}
}

@media only screen and (max-width: 766px) {
		.bookdata__anser input[type="checkbox"] {
				width: 14vw;
		}
}

@media only screen and (max-width: 766px) {
		.bookdata__anser label {
				line-height: 2;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__anser label {
				margin: 0 1.5rem 0 0;
		}
}

@media only screen and (max-width: 766px) {
		.bookdata__anser textarea {
				padding: 5vw;
				width: 80vw;
		}
}

@media only screen and (min-width: 767px) {
		.bookdata__anser textarea {
				padding: 1rem;
		}
}

.bookdata__anser.input-inline span {
		display: inline-block;
}

.bookdata__anser.input-inline input {
		margin: 0 0.75rem 0 0;
}

@media only screen and (min-width: 767px) {
		.bookdata__anser.input-inline input[type="text"] {
				width: 150px;
		}
}

.surveyform .bookdata span {
		display: block;
}

.bookdata__note {
		width: 100%;
		font-size: 1rem;
		line-height: 2;
		text-align: left;
		margin: 2rem auto;
}

.autoprice__thanks {
		background: #fff;
		margin: 4vw auto 0;
}

@media only screen and (max-width: 766px) {
		.autoprice__thanks {
				width: auto;
				padding: 10vw 8vw 8vw;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__thanks {
				width: 840px;
				padding: 8vw 0;
		}
}

.autoprice__thanks-title {
		border-bottom: 4px solid #231815;
		font-weight: 800;
		text-align: center;
		padding-bottom: 8vw;
		margin: 0 auto 2rem;
}

@media only screen and (max-width: 766px) {
		.autoprice__thanks-title {
				width: auto;
				font-size: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__thanks-title {
				width: 640px;
				font-size: 1.5rem;
		}
}

.autoprice__thanks-lead {
		width: 640px;
		font-size: 1rem;
		line-height: 2;
		text-align: left;
		margin: 2rem auto 0;
}

@media only screen and (max-width: 766px) {
		.autoprice__thanks-lead {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.autoprice__thanks-lead {
				width: 640px;
		}
}

.confirm_wrap {
		position: relative;
}

@media only screen and (max-width: 766px) {
		.confirm_wrap {
				margin-bottom: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.confirm_wrap {
				width: 640px;
				margin: 0 auto 5rem;
		}
}

.openbutton {
		display: none;
		cursor: pointer;
}

.openbutton + label {
		border: 1px solid #231815;
		border-radius: 3rem;
		color: #231815;
		position: absolute;
		cursor: pointer;
}

@media only screen and (max-width: 766px) {
		.openbutton + label {
				font-size: 0.85rem;
				padding: 0.15rem 0.4rem;
				right: 0;
				top: 0;
		}
}

@media only screen and (min-width: 767px) {
		.openbutton + label {
				font-size: 0.85rem;
				padding: 0.15rem 1rem 0.25rem;
				top: 0;
				right: 0;
		}
}

/* 見積り確認 */
.econfirm #book_spec.openbutton + label {
		display: none;
}

/* ＋書籍情報 */
.bconfirm #book_spec.openbutton + label {
		display: block;
}

.bconfirm #book_info.openbutton + label {
		display: none;
}

/* ＋アンケート */
.confirm #book_spec.openbutton + label,
.confirm #book_info.openbutton + label {
		display: block;
}

.openbutton + label:hover {
		/* マウスがボタンの上にある時 */
}

@media only screen and (min-width: 767px) {
		.openbutton + label:hover {
				background: #231815;
				color: #fff;
		}
}

/* 非表示時の文字 ※３*/
@media only screen and (max-width: 766px) {
		.openbutton + label:before {
				content: "＋";
		}
}

@media only screen and (min-width: 767px) {
		.openbutton + label:before {
				content: "open";
		}
}

.openbutton:checked + label:before {
		/* 表示時の文字 ※３ */
}

@media only screen and (max-width: 766px) {
		.openbutton:checked + label:before {
				content: "－";
		}
}

@media only screen and (min-width: 767px) {
		.openbutton:checked + label:before {
				content: "close";
		}
}

.spec_content,
.info_content {
		display: none;
}

.bconfirm .spec_content,
.confirm .info_content {
		display: none;
}

.econfirm .spec_content {
		display: block;
}

.bconfirm .info_content {
		display: block;
}

#book_spec:checked ~ #spec_content,
#book_info:checked ~ #info_content {
		display: block;
}

.spec_content,
.info_content {
		/* 表示非表示されるボックスの外観 ※２*/
		margin: 0;
		padding: 0;
}

ul.block-01_form.form-lists li:nth-child(9),
ul.block-01_form.form-lists li:nth-child(9) label,
ul.block-01_form.form-lists li:nth-child(10),
ul.block-01_form.form-lists li:nth-child(10) label,
ul.block-01_form.form-lists li:nth-child(11),
ul.block-01_form.form-lists li:nth-child(11) label,
ul.block-01_form.form-lists li:nth-child(12),
ul.block-01_form.form-lists li:nth-child(12) label {
		/* display: none; */
		/* opacity: 0.5; */
}

/*
ul.block-02_form.form-lists li:nth-child(3),
ul.block-02_form.form-lists li:nth-child(3) label,
ul.block-02_form.form-lists li:nth-child(5),
ul.block-02_form.form-lists li:nth-child(5) label,
ul.block-02_form.form-lists li:nth-child(7),
ul.block-02_form.form-lists li:nth-child(7) label {
     display: none;
     opacity: 0.5;
}
*/
/*
ul.block-02_form.form-lists li #booksize_2,
ul.block-02_form.form-lists li #booksize_4,
ul.block-02_form.form-lists li #booksize_6 {
     display: none;
}*/
/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
コンタクトフォーム
*/
.contactform__contents {
		background: #E3E3E3;
		width: 100%;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.contactform__contents {
				padding: 20vw 0 4vw;
		}
}

@media only screen and (min-width: 767px) {
		.contactform__contents {
				padding: 60px 0 4vw;
		}
}

.contactform__contents-header {
		background: #231815;
		font-size: 1.25rem;
		display: inline-table;
		text-align: center;
		padding-bottom: 1rem;
		vertical-align: middle;
}

@media only screen and (max-width: 766px) {
		.contactform__contents-header {
				width: 100%;
				line-height: 20vw;
		}
}

@media only screen and (min-width: 767px) {
		.contactform__contents-header {
				width: 100%;
				min-width: 1080px;
				height: 120px;
				line-height: 120px;
		}
}

.contactform__contents-title {
		color: #fff;
		font-weight: 800;
		line-height: 1;
		padding-bottom: 0.75rem;
		border-bottom: 0.25rem solid #fff;
		display: inline-block;
		margin: auto;
}

.contactform__contents-title span {
		display: inline-block;
		letter-spacing: 0.15rem;
		margin: 0 -1rem;
}

.contactform__content {
		font-size: 1rem;
		line-height: 1.75;
		margin: 5vw auto;
		padding: 0 4vw;
		box-sizing: border-box;
}

@media only screen and (max-width: 766px) {
		.contactform__content {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.contactform__content {
				width: auto;
				max-width: 1080px;
				min-width: 960px;
		}
}

.form__contacts {
		background: #fff;
		font-size: 1rem;
}

@media only screen and (max-width: 766px) {
		.form__contacts {
				width: auto;
				padding: 1rem 5vw;
				margin: 2vw auto;
		}
}

@media only screen and (min-width: 767px) {
		.form__contacts {
				width: auto;
				max-width: 1080px;
				min-width: 960px;
				padding: 3rem 4rem;
				margin: 4vw auto;
		}
}

.form__contact {
		width: 100%;
}

.form__contact-title {
		border-bottom: 4px solid #231815;
		font-weight: 800;
		text-align: center;
		padding-bottom: 1rem;
		margin: 0 auto 2rem;
}

@media only screen and (max-width: 766px) {
		.form__contact-title {
				width: 100%;
				font-size: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.form__contact-title {
				width: 820px;
				font-size: 1.75rem;
		}
}

.form__recaptcha {
		font-size: 0.75rem;
		text-align: center;
		padding: 0 1rem 2rem;
}

.form__recaptcha p {
		text-align: center;
}

.form__recaptcha a {
		border-bottom: 1px dashed #231815;
		color: #231815;
		line-height: 2;
		padding-bottom: 0.05rem;
		text-decoration: none;
}

/* お問い合わせ */
.contact__entrys {
		border-bottom: 1px dashed #231815;
		font-size: 0;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.contact__entrys {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.contact__entrys {
				width: 820px;
		}
}

.contact__entry {
		border-bottom: 1px dashed #231815;
		font-size: 0;
		padding: 0;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
}

@media only screen and (max-width: 766px) {
		.contact__entry {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.contact__entry {
				width: 820px;
		}
}

.contact__item {
		border-top: 1px dashed #231815;
		box-sizing: border-box;
		font-size: 1.1rem;
		font-weight: 800;
		line-height: 2;
		margin: 0;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.contact__item {
				width: 100%;
				padding: 1.5rem 4rem 0.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.contact__item {
				width: 300px;
				padding: 1.5rem 1rem 1.5rem 4rem;
		}
}

.contact__item h3 {
		line-height: 1.5;
}

.contact__item small {
		display: block;
		font-size: 0.85rem;
}

.contact__item sup {
		border-radius: 1rem;
		background: #301919;
		width: auto;
		color: #fff;
		font-size: 0.7rem;
		text-align: center;
		line-height: 2;
		padding: 0.1rem 0.5rem 0.2rem;
		display: inline-block;
		position: absolute;
		top: 1.75rem;
}

@media only screen and (max-width: 766px) {
		.contact__item sup {
				right: 0rem;
		}
}

@media only screen and (min-width: 767px) {
		.contact__item sup {
				left: 1rem;
		}
}

.contact__content {
		border-top: 1px dashed #231815;
		box-sizing: border-box;
		font-size: 1.1rem;
		font-style: normal;
		line-height: 1.5;
		padding: 1.15rem 0 1.15rem 1.15rem;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.contact__content {
				width: 100%;
				padding: 1.15rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.contact__content {
				width: calc(100% - 300px);
				padding: 1.15rem 0 1.15rem 1.15rem;
		}
}

.contact__content input {
		border: 1px solid #707777;
		width: auto;
		font-size: 1.1rem;
		line-height: 1.75;
		padding: 0.5rem 1rem;
		margin: 0 1rem 0 0;
}

.contact__content input[name="your-name"], .contact__content input[name="pen-name"] {
		margin: 0 1rem 1rem 0;
}

.contact__content input[type="file"] {
		border: none;
		padding: 0.5rem 0;
}

@media only screen and (max-width: 766px) {
		.contact__content input[type="text"], .contact__content input[type="email"] {
				width: 72vw;
		}
}

@media only screen and (min-width: 767px) {
		.contact__content input[type="text"], .contact__content input[type="email"] {
				width: auto;
		}
}

.contact__content label {
		margin: 0 1rem 0 0;
}

.contact__content textarea {
		font-size: 1.1rem;
		line-height: 1.8;
		padding: 1rem;
}

@media only screen and (max-width: 766px) {
		.contact__content textarea {
				width: 72vw;
		}
}

@media only screen and (min-width: 767px) {
		.contact__content textarea {
				width: auto;
		}
}

.contact__content.input-inline span {
		display: inline-block;
}

.contact__content .wpcf7-list-item {
		display: block;
		padding: 0 2rem 0.5rem 0;
}

.contact__content .purpose .wpcf7-list-item {
		display: block;
		padding: 0 0 0.5rem 0;
}

.contact__content .wpcf7-list-item-label {
		display: inline;
}

.contact__content.input-inline input {
		margin: 0 1rem 0 0;
}

.contact__content-small {
		font-size: 0.8rem;
		display: block;
}

.contact__content-note {
		font-size: 1rem;
		line-height: 2;
		text-align: left;
		margin: 0 auto 1rem;
}

.contact__note {
		width: 100%;
		font-size: 1rem;
		line-height: 2;
		text-align: left;
		margin: 2rem auto;
}

.contact__submit {
		text-align: center;
		margin: 5rem auto;
}

.contact__submit input {
		display: inline-block;
}

.contact__submit input[type="submit"] {
		border-radius: 2.5rem;
		border: 1px solid #301919;
		background: #301919;
		width: auto;
		color: #fff;
		font-size: 1rem;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
		padding: 1rem 5rem;
		margin: 0 2rem;
		display: inline-block;
}

.contact__submit input[type="submit"]:hover {
		opacity: 0.7;
}

.contact__submit input[type="button"] {
		border-radius: 2.5rem;
		border: 1px solid #231815;
		background: none;
		width: auto;
		color: #231815;
		font-size: 1rem;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
		padding: 1rem 5rem;
		margin: 0 2rem;
		display: inline-block;
}

.contact__submit input[type="button"]:hover {
		opacity: 0.5;
}

.contact__submit__send {
		border-top: 1px dashed #231815;
}

.contact__submit__send-text {
		font-size: 1.15rem;
		text-align: center;
		padding: 5rem;
}

/* アンケート */
.enquete__entrys {
		border-bottom: 1px dashed #231815;
		font-size: 0;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.enquete__entrys {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__entrys {
				width: 820px;
		}
}

.enquete__entry {
		border-bottom: 1px dashed #231815;
		font-size: 0;
		padding: 0;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
}

@media only screen and (max-width: 766px) {
		.enquete__entry {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__entry {
				width: 820px;
		}
}

.enquete__item {
		border-top: 1px dashed #231815;
		box-sizing: border-box;
		font-size: 1.1rem;
		font-weight: 800;
		line-height: 2;
		margin: 0;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.enquete__item {
				width: 100%;
				padding: 1.5rem 4rem 0.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__item {
				width: 300px;
				padding: 1.5rem 1rem 1.5rem 4rem;
		}
}

.enquete__item h3 {
		line-height: 1.5;
}

.enquete__item small {
		display: block;
		font-size: 0.85rem;
}

.enquete__item sup {
		border-radius: 1rem;
		background: #301919;
		width: auto;
		color: #fff;
		font-size: 0.7rem;
		text-align: center;
		line-height: 2;
		padding: 0.1rem 0.5rem 0.2rem;
		display: inline-block;
		position: absolute;
		top: 1.75rem;
}

@media only screen and (max-width: 766px) {
		.enquete__item sup {
				right: 0rem;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__item sup {
				left: 1rem;
		}
}

.enquete__content {
		border-top: 1px dashed #231815;
		box-sizing: border-box;
		font-size: 1.1rem;
		font-style: normal;
		line-height: 1.5;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.enquete__content {
				width: 100%;
				padding: 1.15rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__content {
				width: calc(100% - 300px);
				padding: 1.15rem 0 1.15rem 1.15rem;
		}
}

.enquete__content input {
		border: 1px solid #707777;
		width: auto;
		font-size: 1.1rem;
		line-height: 1.75;
		padding: 0.5rem 1rem;
		margin: 0 1rem 0 0;
}

:not(#sample)
.enquete__content input[name="your-name"], .enquete__content input[name="pen-name"] {
		margin: 0 1rem 1rem 0;
}

.enquete__content input[type="file"] {
		border: none;
		padding: 0.5rem 0;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.enquete__content input[type="text"], .enquete__content input[type="email"] {
				width: 72vw;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__content input[type="text"], .enquete__content input[type="email"] {
				width: auto;
		}
}

.enquete__content label {
		margin: 0 1rem 0 0;
}

.enquete__content textarea {
		font-size: 1.1rem;
		line-height: 1.8;
		padding: 1rem;
}

@media only screen and (max-width: 766px) {
		.enquete__content textarea {
				width: 72vw;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__content textarea {
				width: auto;
		}
}

.enquete__content.input-inline span {
		display: inline-block;
}

.enquete__content .wpcf7-list-item {
		display: block;
}

@media only screen and (max-width: 766px) {
		.enquete__content .wpcf7-list-item {
				padding: 0 1rem 0.5rem 0;
				margin: 0;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__content .wpcf7-list-item {
				padding: 0 2rem 0.5rem 0;
		}
}

.enquete__content .purpose .wpcf7-list-item {
		display: block;
		padding: 0 0 0.5rem 0;
}

.enquete__content .wpcf7-list-item-label {
		display: inline;
}

.enquete__content.input-inline input {
		margin: 0 1rem 0 0;
}

.enquete__content-small {
		font-size: 0.8rem;
		display: block;
}

.enquete__content-note {
		font-size: 1rem;
		text-align: left;
		margin: 0 auto 1rem;
}

@media only screen and (max-width: 766px) {
		.enquete__content-note {
				line-height: 1.5;
		}
}

@media only screen and (min-width: 767px) {
		.enquete__content-note {
				line-height: 2;
		}
}

.enquete__note {
		width: 100%;
		font-size: 1rem;
		line-height: 2;
		text-align: left;
		margin: 2rem auto;
}

.enquete__submit {
		text-align: center;
		margin: 5rem auto;
}

.enquete__submit input {
		display: inline-block;
}

.enquete__submit input[type="submit"] {
		border-radius: 2.5rem;
		border: 1px solid #301919;
		background: #301919;
		width: auto;
		color: #fff;
		font-size: 1rem;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
		padding: 1rem 5rem;
		margin: 0 2rem;
		display: inline-block;
}

.enquete__submit input[type="submit"]:hover {
		opacity: 0.7;
}

.enquete__submit input[type="button"] {
		border-radius: 2.5rem;
		border: 1px solid #231815;
		background: none;
		width: auto;
		color: #231815;
		font-size: 1rem;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
		padding: 1rem 5rem;
		margin: 0 2rem;
		display: inline-block;
}

.enquete__submit input[type="button"]:hover {
		opacity: 0.5;
}

.enquete__submit__send {
		border-top: 1px dashed #231815;
}

.enquete__submit__send-text {
		font-size: 1.15rem;
		text-align: center;
		padding: 5rem;
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
サイド固定メニュー
*/
.showphase {
		position: fixed;
		right: 40px;
		bottom: 60px;
		z-index: 10;
}

@media only screen and (max-width: 766px) {
		.showphase {
				display: none;
		}
}

.showphase_lists {
		box-shadow: 0 0 4px 3px rgba(125, 125, 125, 0.2);
		background: white;
		border-radius: 5rem;
		text-align: left;
		padding: 4rem 1rem 4rem 2.5rem;
		-webkit-transition: 0.3s;
		transition: 0.3s;
}

@media only screen and (max-width: 766px) {
		.showphase_lists {
				display: none;
		}
}

.showphase_list {
		line-height: 2;
		opacity: 0.5;
		position: relative;
}

.showphase_list:nth-child(7),
.showphase_list:nth-child(8) {
		margin-top: 0.5rem;
		margin-bottom: 0.5rem;
}

.showphase_list:before {
		content: "ー";
		font-size: 1rem;
		opacity: 0.5;
		position: absolute;
		left: -1.5rem;
		top: 0;
}

.confirm .showphase_list.confirm,
.phase-01_1 .showphase_list.phase-01_1,
.phase-01_2 .showphase_list.phase-01_2,
.phase-01_3 .showphase_list.phase-01_3,
.phase-01_4 .showphase_list.phase-01_4,
.phase-01_5 .showphase_list.phase-01_5,
.phase-01_6 .showphase_list.phase-01_6,
.phase-02 .showphase_list.phase-02,
.phase-03 .showphase_list.phase-03 {
		font-weight: 800;
		opacity: 1;
}

.confirm .showphase_list.confirm:before,
.phase-01_1 .showphase_list.phase-01_1:before,
.phase-01_2 .showphase_list.phase-01_2:before,
.phase-01_3 .showphase_list.phase-01_3:before,
.phase-01_4 .showphase_list.phase-01_4:before,
.phase-01_5 .showphase_list.phase-01_5:before,
.phase-01_6 .showphase_list.phase-01_6:before,
.phase-02 .showphase_list.phase-02:before,
.phase-03 .showphase_list.phase-03:before {
		content: "»";
		font-size: 1.5rem;
		position: absolute;
		left: -1.5rem;
		top: -0.5rem;
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
インディーズブックプロジェクト
*/
/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
インディーズブックプロジェクトについて
*/
.about__contents {
		background: #fff;
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 5rem;
}

.about__contents-header {
		background: #00DDBB;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
		text-align: center;
}

.about__contents-header__content {
		height: auto;
		text-align: left;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.about__contents-header__content {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.about__contents-header__content {
				width: auto;
				max-width: 980px;
				padding: 2rem 5rem;
		}
}

.about__contents-title {
		color: #fff;
		line-height: 1.5;
		letter-spacing: 0.25rem;
		text-align: left;
}

@media only screen and (max-width: 766px) {
		.about__contents-title {
				padding: 1rem;
		}
}

.about__contents-title span {
		font-weight: 800;
		display: block;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.about__contents-title span {
				font-size: 1rem;
				padding-bottom: 0.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__contents-title span {
				font-size: 1.25rem;
		}
}

.about__contents-title strong {
		font-weight: 800;
		margin: 0;
		padding: 0;
		display: block;
}

@media only screen and (max-width: 766px) {
		.about__contents-title strong {
				font-size: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__contents-title strong {
				font-size: 2rem;
		}
}

.about__content {
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

.about__lead {
		font-size: 2rem;
		font-weight: 800;
		line-height: 1.5;
		text-align: center;
		padding: 0;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.about__lead {
				font-size: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__lead {
				font-size: 2rem;
		}
}

.about__lead-main {
		font-size: 2rem;
		margin-bottom: 2rem;
}

@media only screen and (max-width: 766px) {
		.about__lead-main {
				font-size: 1.25rem;
				padding: 1.5rem 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.about__lead-main {
				font-size: 2rem;
				padding: 2.5rem 2.5rem 0;
		}
}

.about__lead-sub {
		font-size: 1.25rem;
		padding: 0 2.5rem 2.5rem;
}

@media only screen and (max-width: 766px) {
		.about__lead-sub {
				text-align: left;
				font-size: 1rem;
				font-weight: normal;
				padding: 0 1.5rem 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__lead-sub {
				text-align: center;
				font-size: 1.25rem;
				padding: 0 2.5rem 2.5rem;
		}
}

.about__lead-imgs {
		background: #f2f2f2;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.about__lead-imgs {
				width: auto;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.about__lead-imgs {
				width: auto;
				height: 100%;
		}
}

.about__lead-img {
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.about__lead-img {
				width: 100vw;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.about__lead-img {
				width: auto;
				max-width: 1080px;
				height: 100%;
		}
}

@media only screen and (max-width: 766px) {
		.about__lead-img img {
				width: 100vw;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.about__lead-img img {
				width: 100%;
				height: auto;
		}
}

.about__difference {
		padding: 0;
		margin: 0 auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.about__difference {
				width: auto;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference {
				width: auto;
				max-width: 980px;
				height: auto;
		}
}

.about__difference-title {
		border-top: 3px solid #231815;
		border-bottom: 3px solid #231815;
		font-weight: 800;
		line-height: 1.5;
		letter-spacing: 0.1rem;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.about__difference-title {
				width: 90vw;
				font-size: 1.15rem;
				padding: 1rem 0;
				margin: 1rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference-title {
				width: 100%;
				font-size: 1.25rem;
				padding: 1.75rem 0;
				margin: 2rem auto;
		}
}

.about__difference-lists {
		background: #EAEAEA;
		font-size: 0;
}

.home .about__difference-lists {
		background: none;
}

@media only screen and (max-width: 766px) {
		.about__difference-lists {
				padding: 1rem 1rem 7rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference-lists {
				padding: 2.5rem 2.5rem;
		}
}

.about__difference-list {
		font-size: 1rem;
		line-height: 1.5;
		margin-bottom: 1rem;
}

@media only screen and (max-width: 766px) {
		.about__difference-list {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference-list {
				display: flex;
		}
}

.about__difference-list__head {
		background: #00DDBB;
		background: #00CCAA;
		color: #fff;
		font-size: 1.15rem;
		font-weight: bold;
		letter-spacing: 0.25rem;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.about__difference-list__head {
				display: block;
				width: 90vw;
				padding: 0.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference-list__head {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 12rem;
				min-width: 12rem;
				padding: 1rem;
		}
}

.about__difference-list__text {
		display: inline-block;
		background: #fff;
		letter-spacing: 0.25rem;
		text-align: left;
		vertical-align: top;
		padding: 1rem;
}

@media only screen and (max-width: 766px) {
		.about__difference-list__text {
				width: 90vw;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference-list__text {
				max-width: 45rem;
		}
}

.about__difference-img {
		position: absolute;
}

@media only screen and (max-width: 766px) {
		.about__difference-img {
				bottom: 1rem;
				left: 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference-img {
				top: 7rem;
				right: 2rem;
		}
}

@media only screen and (max-width: 766px) {
		.about__difference-img img {
				width: 5rem;
		}
}

@media only screen and (min-width: 767px) {
		.about__difference-img img {
				width: 7.5rem;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
インディーズブックプロジェクトで、一緒に本をつくりましょう！
*/
.together__contents {
		background: #fff;
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 5rem;
}

.together__contents-header {
		background: #00CEDD;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
		text-align: center;
}

.together__contents-header__content {
		height: auto;
		text-align: left;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.together__contents-header__content {
				width: 90vw;
				padding: 2.5vw 0;
		}
}

@media only screen and (min-width: 767px) {
		.together__contents-header__content {
				width: auto;
				max-width: 980px;
				¥padding: 2rem 5rem;
				margin: auto;
		}
}

.together__contents-title {
		color: #fff;
		line-height: 1.5;
		letter-spacing: 0.25rem;
		text-align: center;
}

@media only screen and (min-width: 767px) {
		.together__contents-title {
				padding-top: 1rem;
		}
}

.together__contents-title span {
		display: block;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.together__contents-title span {
				font-size: 1rem;
				font-weight: 400;
		}
}

@media only screen and (min-width: 767px) {
		.together__contents-title span {
				font-size: 1.1rem;
				font-weight: 800;
		}
}

.together__contents-title strong {
		font-weight: 800;
		line-height: 1.25;
		padding: 0;
		display: block;
}

@media only screen and (max-width: 766px) {
		.together__contents-title strong {
				font-size: 1.25rem;
				margin-bottom: 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.together__contents-title strong {
				font-size: 1.8rem;
				margin-bottom: 0;
		}
}

.together__contents-title em {
		border-top: 3px solid #fff;
		border-bottom: 3px solid #fff;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
		display: block;
}

@media only screen and (max-width: 766px) {
		.together__contents-title em {
				font-size: 1.25rem;
				width: 90vw;
				padding: 2.5vw 0;
				margin: 2.5vw auto 2.5vw;
		}
}

@media only screen and (min-width: 767px) {
		.together__contents-title em {
				font-size: 1.5rem;
				width: 580px;
				padding: 0.5rem;
				margin: 0 auto 0.5rem;
		}
}

.together__content {
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.together__content {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.together__content {
				width: auto;
				max-width: 980px;
		}
}

.together__difference {
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.together__difference {
				width: 90vw;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference {
				width: auto;
				max-width: 820px;
		}
}

.together__difference-title {
		border-top: 3px solid #231815;
		border-bottom: 3px solid #231815;
		font-size: 1.25rem;
		font-weight: 800;
		letter-spacing: 0.15rem;
		margin: 2rem auto;
}

@media only screen and (max-width: 766px) {
		.together__difference-title {
				text-align: left;
				padding: 1rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-title {
				text-align: center;
				padding: 1.75rem 0;
		}
}

.together__difference-lists {
		font-size: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.together__difference-lists {
				width: 90vw;
				margin: 7rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-lists {
				width: auto;
				max-width: 820px;
				margin: 3.5rem auto 0;
		}
}

.together__difference-list {
		background: #FFF7E6;
		width: auto;
		font-size: 1rem;
		line-height: 1.5;
		margin: 1rem auto 3rem;
}

@media only screen and (max-width: 766px) {
		.together__difference-list {
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-list {
				padding: 2.5rem 5rem;
		}
}

.together__difference-list strong {
		display: block;
		background: #00CEDD;
		color: #fff;
		font-weight: bold;
		letter-spacing: 0.25rem;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.together__difference-list strong {
				width: 80vw;
				font-size: 1.15rem;
				padding: 0.5rem;
				margin: -4rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-list strong {
				width: 30rem;
				min-width: 12rem;
				font-size: 1.15rem;
				padding: 0.5rem;
				margin: -4rem auto 0;
		}
}

@media only screen and (max-width: 766px) {
		.together__difference-list__item {
				display: block;
				text-align: left;
				vertical-align: top;
				padding: 0.75rem 0;
				margin: 0 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-list__item {
				display: flex;
				text-align: left;
				vertical-align: top;
				padding: 0.75rem 0;
		}
}

.together__difference-list__item em {
		font-weight: 800;
		letter-spacing: 0.15rem;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.together__difference-list__item em {
				width: 100%;
				margin-bottom: 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-list__item em {
				width: 10rem;
		}
}

.together__difference-list__item span {
		font-size: 0.9rem;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.together__difference-list__item span {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-list__item span {
				width: 32rem;
		}
}

.together__difference-list__item:first-of-type {
		padding-top: 1.5rem;
		border-bottom: 1px dashed #231815;
}

@media only screen and (max-width: 766px) {
		.together__difference-list__img {
				text-align: center;
				margin: 0 auto 7.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-list__img {
				margin: auto;
		}
}

@media only screen and (max-width: 766px) {
		.together__difference-list__img img {
				width: 85vw;
				padding: 1rem 0 2.5rem;
				margin: auto;
		}
}

@media only screen and (min-width: 767px) {
		.together__difference-list__img img {
				width: 40rem;
				padding: 2.5rem 0 0;
				margin: auto;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
インディーズブックプロジェクトの流れ
*/
.flow__contents {
		background: #fff;
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 5rem;
}

.flow__contents-header {
		background: #FFA700;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
		text-align: center;
}

.flow__contents-header__content {
		height: auto;
		text-align: left;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.flow__contents-header__content {
				width: 90vw;
				padding: 1rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.flow__contents-header__content {
				width: auto;
				max-width: 980px;
				padding: 2rem 5rem;
		}
}

.flow__contents-title {
		color: #fff;
		line-height: 1.5;
		letter-spacing: 0.25rem;
		align-items: left;
}

.flow__contents-title span {
		font-weight: 800;
		display: block;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.flow__contents-title span {
				font-size: 1.15rem;
		}
}

@media only screen and (min-width: 767px) {
		.flow__contents-title span {
				font-size: 1.25rem;
		}
}

.flow__contents-title strong {
		font-weight: 800;
		margin: 0;
		padding: 0;
		display: block;
}

@media only screen and (max-width: 766px) {
		.flow__contents-title strong {
				font-size: 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.flow__contents-title strong {
				font-size: 2rem;
		}
}

.flow__content {
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

.flow__lead {
		background: #EAEAEA;
		font-size: 1rem;
		line-height: 1.8;
		margin: 0 0 2.5rem;
}

@media only screen and (max-width: 766px) {
		.flow__lead {
				text-align: left;
				padding: 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.flow__lead {
				text-align: center;
				padding: 2.5rem;
		}
}

.flow__difference {
		background: #FFF7E6;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.flow__difference {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference {
				width: auto;
				max-width: 980px;
		}
}

.flow__difference-title {
		border-top: 3px solid #231815;
		border-bottom: 3px solid #231815;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.flow__difference-title {
				font-size: 1.25rem;
				padding: 1.75rem 0;
				margin: 2rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference-title {
				font-size: 1.25rem;
				padding: 1.75rem 0;
				margin: 2rem auto;
		}
}

.flow__difference-lists {
		font-size: 0;
}

@media only screen and (max-width: 766px) {
		.flow__difference-lists {
				padding: 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference-lists {
				padding: 2.5rem 5rem;
		}
}

.flow__difference-list {
		background: #fff;
		font-size: 1rem;
		line-height: 1.8;
}

@media only screen and (max-width: 766px) {
		.flow__difference-list {
				display: block;
				padding: 1.25rem;
				margin-bottom: 2.5rem;
				position: relative;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference-list {
				display: flex;
				margin-bottom: 1rem;
		}
}

@media only screen and (max-width: 766px) {
		.flow__difference-list__mark {
				background: #231815;
				display: block;
				width: 12vw;
				text-align: center;
				padding: 0.5rem;
				position: absolute;
				top: -7.5vw;
				left: -2.5vw;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference-list__mark {
				display: flex;
				justify-content: center;
				align-items: center;
				text-align: center;
				width: 10rem;
		}
}

.flow__difference-list__mark b {
		font-weight: 800;
}

@media only screen and (max-width: 766px) {
		.flow__difference-list__mark b {
				border-bottom: 2px solid #fff;
				color: #fff;
				font-size: 1.5rem;
				line-height: 1;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference-list__mark b {
				border-bottom: 2px solid #231815;
				font-size: 1.75rem;
		}
}

.flow__difference-list__text {
		text-align: left;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.flow__difference-list__text {
				width: 100%;
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference-list__text {
				width: 41rem;
				padding: 1rem 2.5rem 1.25rem 0;
		}
}

.flow__difference-list__text strong {
		display: block;
		font-weight: bold;
		letter-spacing: 0.25rem;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.flow__difference-list__text strong {
				font-size: 1.15rem;
				line-height: 1.8;
		}
}

@media only screen and (min-width: 767px) {
		.flow__difference-list__text strong {
				font-size: 1.25rem;
				line-height: 2;
		}
}

.flow__difference-list__text span {
		display: block;
		font-size: 0.9rem;
		letter-spacing: 0.1rem;
		padding: 0;
}

.flow__list-img {
		margin: auto;
}

@media only screen and (min-width: 767px) {
		.flow__list-img {
				width: auto;
				max-width: 980px;
				margin: auto;
		}
}

@media only screen and (max-width: 766px) {
		.flow__list-img img {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.flow__list-img img {
				width: 100%;
				max-width: 980px;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
インディーズブックプロジェクトの役割分担
*/
.sharing__contents {
		background: #fff;
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 5rem;
}

.sharing__contents-header {
		background: #00DDBB;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
		text-align: center;
}

.sharing__contents-header__content {
		height: auto;
		text-align: left;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.sharing__contents-header__content {
				width: 90vw;
				padding: 1rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__contents-header__content {
				width: auto;
				max-width: 980px;
				padding: 2rem 5rem;
		}
}

.sharing__contents-title {
		color: #fff;
		line-height: 1.5;
		letter-spacing: 0.25rem;
		align-items: left;
}

.sharing__contents-title span {
		font-weight: 800;
		display: block;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.sharing__contents-title span {
				font-size: 1.15rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__contents-title span {
				font-size: 1.25rem;
		}
}

.sharing__contents-title strong {
		font-weight: 800;
		margin: 0;
		padding: 0;
		display: block;
}

@media only screen and (max-width: 766px) {
		.sharing__contents-title strong {
				font-size: 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__contents-title strong {
				font-size: 2rem;
		}
}

.sharing__content {
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

.sharing__lead {
		background: #EAEAEA;
		font-size: 1rem;
		line-height: 1.8;
		text-align: center;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.sharing__lead {
				padding: 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__lead {
				padding: 2.5rem;
		}
}

.sharing__role {
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.sharing__role {
				width: 95vw;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role {
				width: auto;
				max-width: 980px;
		}
}

.sharing__role-title {
		border-top: 3px solid #231815;
		border-bottom: 3px solid #231815;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.sharing__role-title {
				width: 85vw;
				font-size: 1.15rem;
				padding: 1rem 0;
				margin: 1rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-title {
				font-size: 1.25rem;
				padding: 1.75rem 0;
				margin: 2rem auto;
		}
}

.sharing__role-text {
		background: #DDFDFF;
		width: inherit;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.sharing__role-text {
				padding: 0;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-text {
				padding: 2.5rem;
		}
}

.sharing__role-img {
		text-align: center;
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.sharing__role-img {
				width: 85vw;
				padding: 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-img {
				padding: 0 0 2.5rem;
		}
}

.sharing__role-img img {
		height: auto;
}

@media only screen and (max-width: 766px) {
		.sharing__role-img img {
				width: 85vw;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-img img {
				width: 100%;
				max-width: 820px;
		}
}

.sharing__role-lists {
		font-size: 0;
		padding: 2.5rem 0 0.5rem;
		margin: auto;
}

@media only screen and (min-width: 767px) {
		.sharing__role-lists {
				width: calc((100% - 50px));
				margin: auto;
		}
}

.sharing__role-list {
		background: #FFF;
		font-size: 1rem;
		line-height: 1.5;
}

@media only screen and (max-width: 766px) {
		.sharing__role-list {
				display: block;
				width: 85vw;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-list {
				display: inline-block;
				width: 394px;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__role-list.step01 {
				width: 85vw;
				margin: 0 auto 2rem;
				padding: 1rem;
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-list.step01 {
				display: flex;
				width: 100%;
				margin: 0 auto 2rem;
		}
}

.sharing__role-list.step02 {
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.sharing__role-list.step02 {
				margin: 0 auto 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-list.step02 {
				width: calc((100% / 2) - 10px);
				height: auto;
				min-height: 380px;
				margin-right: 1rem;
		}
}

.sharing__role-list.step03 {
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.sharing__role-list.step03 {
				margin: 0 auto 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-list.step03 {
				width: calc((100% / 2) - 10px);
				height: auto;
				min-height: 380px;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__role-list__head {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-list__head {
				display: inline-block;
		}
}

@media only screen and (max-width: 766px) {
		.step01 .sharing__role-list__head {
				display: block;
				text-align: center;
				margin: auto;
		}
}

@media only screen and (min-width: 767px) {
		.step01 .sharing__role-list__head {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 38rem;
		}
}

.step02 .sharing__role-list__head {
		display: block;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.step02 .sharing__role-list__head {
				padding: 1rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.step02 .sharing__role-list__head {
				padding: 2rem 0 0;
		}
}

.step03 .sharing__role-list__head {
		display: block;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.step03 .sharing__role-list__head {
				padding: 1rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.step03 .sharing__role-list__head {
				padding: 2rem 0 0;
		}
}

.sharing__role-list__head em {
		border-radius: 3rem;
		background: #00CCAA;
		color: #fff;
		font-size: 1.15rem;
		font-weight: bold;
		letter-spacing: 0.25rem;
		text-align: center;
		padding: 0.5rem 1.5rem;
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.sharing__role-list__head em {
				display: inline-block;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-list__head em {
				display: inline-block;
		}
}

.sharing__role-list__text {
		display: block;
		font-size: 1rem;
		letter-spacing: 0.1rem;
		line-height: 1.8;
		text-align: left;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.sharing__role-list__text {
				padding: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__role-list__text {
				padding: 2.25rem;
		}
}

.step01 .sharing__role-list__text {
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.step01 .sharing__role-list__text {
				width: 80vw;
				padding: 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.step01 .sharing__role-list__text {
				width: 40rem;
				padding: 2rem 2.5rem 2rem 0;
		}
}

.sharing__cando {
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.sharing__cando {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__cando {
				width: auto;
				max-width: 980px;
		}
}

.sharing__cando-items {
		background: #EAEAEA;
		font-size: 0;
}

@media only screen and (max-width: 766px) {
		.sharing__cando-items {
				width: 100%;
				padding: 1rem;
				margin: 1.5rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__cando-items {
				width: auto;
				max-width: 980px;
				padding: 2.5rem;
				margin: auto;
		}
}

.sharing__cando-item {
		font-size: 1rem;
		line-height: 1.5;
		height: auto;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.sharing__cando-item {
				display: inline-block;
				width: 42.5vw;
				margin-bottom: 1.25rem;
		}
		.sharing__cando-item:nth-child(1) {
				background: #FFA700;
				width: 90vw;
				height: auto;
		}
		.sharing__cando-item:nth-child(even) {
				margin-right: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__cando-item {
				display: inline-block;
				width: 240px;
				width: calc((100% / 3) - 10px);
				margin-bottom: 40px;
				margin-left: 0.9rem;
		}
		.sharing__cando-item:nth-child(3n+1) {
				margin-left: 0;
		}
		.sharing__cando-item:nth-child(1) {
				background: #FFA700;
				width: 240px;
				width: calc((100% / 3) - 10px);
				height: 240px;
		}
		.sharing__cando-item:nth-child(7) {
				width: 320px;
				width: calc((100% / 3) - 2rem);
				margin-bottom: 0;
		}
		.sharing__cando-item:nth-child(7) .sharing__cando-item__img {
				width: 320px;
		}
		.sharing__cando-item:nth-child(7) .sharing__cando-item__img img {
				width: 320px;
		}
}

.sharing__cando-item__title {
		color: #fff;
		font-weight: 800;
}

@media only screen and (max-width: 766px) {
		.sharing__cando-item__title {
				font-size: 1.5rem;
				padding: 1rem;
				text-align: center;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__cando-item__title {
				width: 100%;
				height: 100%;
				font-size: 1.75rem;
				display: flex;
				justify-content: center;
				align-items: center;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__cando-item__title b {
				display: inline-block;
				padding: 0;
				letter-spacing: 0.15rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__cando-item__title b {
				display: block;
				letter-spacing: 0.75rem;
				padding: 0 0 0.25rem 0.75rem;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__cando-item__img {
				width: 42.5vw;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__cando-item__img {
				width: 100%;
				height: 240px;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__cando-item__img img {
				width: 42.5vw;
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__cando-item__img img {
				width: 100%;
				height: auto;
		}
		.sharing__cando-item__img img:nth-child(7) {
				width: 320px;
		}
}

.sharing__cando-item__caption {
		display: block;
		font-size: 0.9rem;
		text-align: center;
		padding: 0.5rem 0 0;
}

.sharing__part {
		background: #DDFDFF;
		padding: 5rem 0 0;
}

.sharing__part-head {
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.sharing__part-head {
				width: 100%;
				text-align: center;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__part-head {
				width: auto;
				max-width: 980px;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__part-title {
				display: inline-block;
				border-radius: 3rem;
				background: #fff;
				font-size: 1.15rem;
				font-weight: bold;
				padding: 1rem;
				margin: 0 auto 2.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__part-title {
				display: block;
				width: 30rem;
				border-radius: 3rem;
				background: #fff;
				font-size: 1.25rem;
				font-weight: bold;
				text-align: center;
				padding: 1rem 3rem;
				margin: 0 2rem 5rem auto;
		}
}

.sharing__part-content {
		background: #FDE3E3;
		width: auto;
		margin: auto;
}

@media only screen and (min-width: 767px) {
		.sharing__part-content {
				position: relative;
		}
}

.sharing__part-text {
		margin: auto;
		font-size: 1.1rem;
}

@media only screen and (max-width: 766px) {
		.sharing__part-text {
				width: 100%;
				line-height: 2;
				padding: 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__part-text {
				display: block;
				width: auto;
				max-width: 980px;
				height: auto;
				min-height: 20rem;
				margin: 5rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__part-text_item {
				display: block;
				width: 30rem;
				height: auto;
				font-size: 1.15rem;
				line-height: 2;
				text-align: left;
				padding: 5rem 0 0 1.5rem;
				margin: 0 2rem 5rem auto;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__part-img {
				display: block;
				text-align: center;
				padding-top: 2.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__part-img {
				position: absolute;
				top: -8rem;
				left: 2.5rem;
		}
}

@media only screen and (max-width: 766px) {
		.sharing__part-img img {
				width: 10rem;
		}
}

@media only screen and (min-width: 767px) {
		.sharing__part-img img {
				width: 15rem;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
インディーズブックプロジェクトで手に入れる未来
*/
.future__contents {
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 5rem;
}

.future__contents-header {
		background: #00CEDD;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
		text-align: center;
}

.future__contents-header__content {
		height: auto;
		text-align: left;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.future__contents-header__content {
				width: 90vw;
				padding: 1rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.future__contents-header__content {
				width: auto;
				max-width: 980px;
				padding: 2rem 7rem;
		}
}

.future__contents-title {
		color: #fff;
		line-height: 1.5;
		letter-spacing: 0.25rem;
		align-items: left;
}

.future__contents-title span {
		font-weight: 800;
		display: block;
		margin: 0;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.future__contents-title span {
				font-size: 1.15rem;
		}
}

@media only screen and (min-width: 767px) {
		.future__contents-title span {
				font-size: 1.25rem;
		}
}

.future__contents-title strong {
		font-weight: 800;
		margin: 0;
		padding: 0;
		display: block;
}

@media only screen and (max-width: 766px) {
		.future__contents-title strong {
				font-size: 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.future__contents-title strong {
				font-size: 2rem;
		}
}

.future__content {
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

.future__lead {
		background: #EAEAEA;
		font-size: 1rem;
		line-height: 1.8;
		text-align: center;
		margin: 0 0 2.5rem;
}

@media only screen and (max-width: 766px) {
		.future__lead {
				padding: 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.future__lead {
				padding: 2.5rem;
		}
}

.future__growth {
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

.future__growth-title {
		border-top: 3px solid #231815;
		border-bottom: 3px solid #231815;
		font-weight: 800;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.future__growth-title {
				width: 90vw;
				font-size: 1.15rem;
				letter-spacing: 0.1rem;
				padding: 1rem 0;
				margin: 1rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-title {
				width: auto;
				max-width: 840px;
				font-size: 1.25rem;
				letter-spacing: 0.15rem;
				padding: 1.75rem 0;
				margin: 2rem auto;
		}
}

.future__growth-content {
		background: #FFF7E6;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.future__growth-content {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-content {
				width: auto;
				max-width: 1080px;
				padding: 0 2.5rem;
		}
}

.future__growth-block {
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.future__growth-block {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-block {
				width: auto;
				max-width: 840px;
		}
}

.future__growth-lists {
		font-size: 0;
		margin: auto;
}

@media only screen and (max-width: 766px) {
		.future__growth-lists {
				width: 90vw;
				padding: 1.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-lists {
				width: auto;
				max-width: 980px;
				padding: 2.5rem 0;
				margin: 2.5rem auto;
		}
}

.future__growth-list {
		background: #fff;
		font-size: 1rem;
		line-height: 1.5;
		margin-bottom: 2rem;
}

@media only screen and (max-width: 766px) {
		.future__growth-list {
				display: block;
				padding: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-list {
				display: flex;
				padding: 1.5rem;
		}
}

.future__growth-list__head {
		display: inline-block;
		justify-content: center;
		align-items: center;
		font-size: 1.15rem;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.future__growth-list__head {
				display: block;
				width: auto;
				padding: 0 2rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-list__head {
				display: flex;
				width: 15rem;
				padding: 0 2rem 0 0;
		}
}

.future__growth-list__mark {
		background: #00CCAA;
		border-radius: 3rem;
		color: #fff;
		font-size: inherit;
		text-align: center;
		line-height: 2.5;
		font-weight: 800;
		padding: 0 0 0 0.25rem;
		margin-right: 1rem;
}

@media only screen and (max-width: 766px) {
		.future__growth-list__mark {
				width: 45px;
				height: 45px;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-list__mark {
				width: 45px;
				height: 45px;
		}
}

.step01 .future__growth-list__mark {
		background: #86EF86;
}

.step02 .future__growth-list__mark {
		background: #00CEDD;
}

.step03 .future__growth-list__mark {
		background: #3A93C9;
}

.future__growth-list__text {
		display: inline-block;
		letter-spacing: 0.1rem;
		line-height: 1.8;
		text-align: left;
		vertical-align: top;
}

@media only screen and (max-width: 766px) {
		.future__growth-list__text {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-list__text {
				width: 32rem;
		}
}

.future__growth-img {
		position: relative;
}

@media only screen and (max-width: 766px) {
		.future__growth-img {
				width: 90vw;
				height: auto;
				text-align: center;
				padding-bottom: 2.5rem;
				margin: auto;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-img {
				width: auto;
				max-width: 840px;
				height: 380px;
		}
}

@media only screen and (max-width: 766px) {
		.future__growth-img img {
				width: 90vw;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-img img {
				position: absolute;
				top: 0;
				right: 0;
				width: 540px;
		}
}

.future__growth-img em {
		display: block;
}

@media only screen and (max-width: 766px) {
		.future__growth-img em {
				line-height: 1.5;
				text-align: left;
				padding: 0.75rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.future__growth-img em {
				background: #231815;
				padding: 0.5rem 1rem;
				color: #fff;
				text-align: right;
				line-height: 1.55;
				position: absolute;
				top: 1rem;
				left: 0;
		}
}

.future__toget {
		border: 1px solid #332e2c;
		height: auto;
		padding: 0;
		margin: 2.5rem auto;
}

@media only screen and (max-width: 766px) {
		.future__toget {
				width: 90vw;
		}
}

@media only screen and (min-width: 767px) {
		.future__toget {
				width: auto;
				max-width: 840px;
		}
}

.future__toget-title {
		background: #00CCAA;
		color: #fff;
		font-size: 1.25rem;
		font-weight: 800;
		letter-spacing: 0.25rem;
		line-height: 1.5;
}

@media only screen and (max-width: 766px) {
		.future__toget-title {
				text-align: left;
				padding: 1.5rem 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.future__toget-title {
				text-align: center;
				padding: 1.5rem;
		}
}

.future__toget-lists {
		font-size: 0;
		margin: 0;
}

@media only screen and (max-width: 766px) {
		.future__toget-lists {
				padding: 1.5rem 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.future__toget-lists {
				padding: 2.5rem 5rem;
		}
}

.future__toget-list {
		font-size: 1rem;
		margin: 0;
		padding: 0 0 1.5rem;
}

.future__toget-list__head {
		display: block;
		text-align: right;
		padding: 0;
		margin-bottom: 1.5rem;
}

.future__toget-list__head em {
		display: inline-block;
		background: #fff;
		font-size: 1.25rem;
		font-weight: 800;
		letter-spacing: 0.25rem;
		padding: 0.5rem 1rem;
		margin: 0 0 0 auto;
		position: relative;
		z-index: 10;
}

.future__toget-list__head span {
		border-bottom: 1px dashed #231815;
		display: block;
		position: relative;
		z-index: 5;
}

@media only screen and (max-width: 766px) {
		.future__toget-list__head span {
				margin-top: -1.15rem;
		}
}

@media only screen and (min-width: 767px) {
		.future__toget-list__head span {
				margin-top: -1.15rem;
		}
}

.future__toget-list__text {
		font-size: 1rem;
		letter-spacing: 0.1rem;
		line-height: 2;
}

@media only screen and (max-width: 766px) {
		.future__toget-list__text {
				padding: 2.5rem 0 0;
		}
}

@media only screen and (min-width: 767px) {
		.future__toget-list__text {
				padding: 2.5rem 0 0;
		}
}

.future__toget-img {
		background: #EAEAEA;
}

@media only screen and (max-width: 766px) {
		.future__toget-img {
				padding: 1.5rem 2.5rem;
				text-align: left;
		}
}

@media only screen and (min-width: 767px) {
		.future__toget-img {
				padding: 1.5rem 5rem;
				text-align: right;
		}
}

@media only screen and (max-width: 766px) {
		.future__toget-img img {
				width: 3rem;
		}
}

@media only screen and (min-width: 767px) {
		.future__toget-img img {
				width: 6rem;
		}
}

.future__proceed {
		background-image: url(../img/contents/future__proceed.png);
}

@media only screen and (max-width: 766px) {
		.future__proceed {
				padding: 2.5rem 0;
		}
}

@media only screen and (min-width: 767px) {
		.future__proceed {
				padding: 5rem 0;
		}
}

.future__proceed-title {
		display: block;
		height: auto;
		font-size: 1.25rem;
		font-weight: 800;
		line-height: 2;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.future__proceed-title {
				width: 90vw;
		}
}

@media only screen and (min-width: 767px) {
		.future__proceed-title {
				width: auto;
				max-width: 820px;
				padding: 0 2.5rem 1rem;
		}
}

.future__proceed-text {
		display: block;
		height: auto;
		font-size: 1.15rem;
		line-height: 1.8;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.future__proceed-text {
				width: 90vw;
		}
}

@media only screen and (min-width: 767px) {
		.future__proceed-text {
				width: auto;
				max-width: 820px;
				padding: 0 2.5rem;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
正直に伝えたい価格の話
*/
.price__contents {
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 5rem;
}

.price__contents-header {
		background: #FFA700;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
		text-align: center;
}

.price__contents-header__content {
		height: auto;
		text-align: left;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.price__contents-header__content {
				width: auto;
				padding: 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__contents-header__content {
				width: auto;
				max-width: 980px;
				padding: 2rem 2.5rem;
		}
}

.price__contents-title {
		color: #fff;
		line-height: 1.5;
		letter-spacing: 0.25rem;
		text-align: left;
}

@media only screen and (min-width: 767px) {
		.price__contents-title {
				position: relative;
		}
}

.price__contents-title span {
		font-size: 1.25rem;
		font-weight: 800;
		display: block;
		margin: 0;
		padding: 0;
}

.price__contents-title strong {
		font-size: 2rem;
		font-weight: 800;
		margin: 0;
		padding: 0;
		display: block;
}

.price__contents-title em {
		display: block;
		text-align: right;
}

@media only screen and (min-width: 767px) {
		.price__contents-title em {
				position: absolute;
				top: -0.5rem;
				right: -1rem;
		}
}

.price__contents-title small {
		background: #fff;
		color: #483C38;
		font-size: 0.85rem;
		padding: 0.2rem 1rem;
		margin-bottom: 0.5rem;
		display: inline-block;
}

.price__contents-title b {
		background: #fff;
		color: #483C38;
		font-size: 1rem;
		padding: 0.2rem 1rem;
		display: block;
}

.price__content {
		background: #fff;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.price__content {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.price__content {
				width: auto;
				max-width: 840px;
		}
}

.price__step01 {
		border-bottom: 1px solid #231815;
		width: inherit;
		height: auto;
		padding: 0;
		margin: 0 auto 0.25rem;
}

.price__step01-title {
		background: #EAEAEA;
		font-size: 1.25rem;
		font-weight: 800;
}

@media only screen and (max-width: 766px) {
		.price__step01-title {
				text-align: left;
				padding: 0;
				margin: 2.5rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.price__step01-title {
				border-radius: 3rem 0 0 3rem;
				width: 96%;
				text-align: center;
				padding: 0.75rem 0 0.75rem 2.5rem;
				margin: 2.5rem auto 0;
				position: relative;
		}
}

.price__step01-title em {
		background: #00CCAA;
		color: #fff;
		font-weight: 800;
		padding: 0.75rem 2rem;
}

@media only screen and (max-width: 766px) {
		.price__step01-title em {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.price__step01-title em {
				border-radius: 3rem;
				position: absolute;
				top: 0;
				left: 0;
		}
}

.price__step01-title em b {
		padding: 0 0.25rem;
}

@media only screen and (max-width: 766px) {
		.price__step01-title span {
				display: block;
				padding: 0.75rem 2rem;
		}
}

@media only screen and (max-width: 766px) {
		.price__step01-lead {
				font-size: 1.1rem;
				text-align: left;
				line-height: 1.5;
				padding: 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__step01-lead {
				font-size: 1.15rem;
				text-align: center;
				line-height: 2;
				padding: 1.5rem 0;
		}
}

.price__step01-lists {
		font-size: 0;
		padding: 0;
		vertical-align: top;
}

@media only screen and (min-width: 767px) {
		.price__step01-lists {
				width: 736px;
				margin: auto;
		}
}

.price__step01-list {
		width: 380px;
		font-size: 1rem;
		line-height: 1.8;
		margin-bottom: 1rem;
		display: inline-block;
		vertical-align: top;
}

@media only screen and (min-width: 767px) {
		.price__step01-list {
				width: 360px;
		}
}

@media only screen and (min-width: 767px) {
		.price__step01-list:first-child {
				margin-right: 1rem;
		}
}

.price__step01-list__head {
		border-top: 2px solid #231815;
		border-bottom: 2px solid #231815;
		display: block;
		width: auto;
		font-size: 1.15rem;
		font-weight: bold;
		letter-spacing: 0.25rem;
		text-align: center;
		padding: 1rem 0;
		margin-bottom: 1rem;
}

.price__step01-list__text {
		display: block;
		background: #FFF7E6;
		width: inherit;
		text-align: left;
		vertical-align: top;
		padding: 2.5rem;
		margin-bottom: 1rem;
}

@media only screen and (max-width: 766px) {
		.price__step01-list__text {
				height: auto;
		}
}

@media only screen and (min-width: 767px) {
		.price__step01-list__text {
				height: 460px;
		}
}

@media only screen and (max-width: 766px) {
		.price__step01-list__text p {
				height: auto;
				margin-bottom: 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__step01-list__text p {
				height: 11rem;
		}
}

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

.step01_QR .price__step01-list__img img {
		width: 200px;
		height: auto;
		display: block;
		margin: auto;
}

.step01_Paper .price__step01-list__img img {
		width: 230px;
		height: auto;
		display: block;
		margin: auto;
}

.price__step01-note {
		font-size: 0.9rem;
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.price__step01-note {
				padding: 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__step01-note {
				padding: 0 0 1.5rem;
		}
}

.price__step02 {
		border-top: 1px solid #231815;
		width: inherit;
		height: auto;
		padding: 0;
		margin: 0.05rem auto 5rem;
}

.price__step02-title {
		background: #EAEAEA;
		font-size: 1.25rem;
		font-weight: 800;
}

@media only screen and (max-width: 766px) {
		.price__step02-title {
				text-align: left;
				padding: 0;
				margin: 2.5rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.price__step02-title {
				position: relative;
				width: 96%;
				border-radius: 3rem 0 0 3rem;
				text-align: center;
				padding: 0.75rem 0 0.75rem 2.5rem;
				margin: 2.5rem auto 0;
		}
}

.price__step02-title em {
		background: #00CCAA;
		color: #fff;
		font-weight: 800;
		padding: 0.75rem 2rem;
}

@media only screen and (max-width: 766px) {
		.price__step02-title em {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.price__step02-title em {
				border-radius: 3rem;
				position: absolute;
				top: 0;
				left: 0;
		}
}

.price__step02-title em b {
		padding: 0 0.25rem;
}

@media only screen and (max-width: 766px) {
		.price__step02-title span {
				display: block;
				padding: 0.75rem 2rem;
		}
}

.price__step02-lead {
		font-size: 1.05rem;
		text-align: center;
		line-height: 2;
		padding: 2rem;
}

.price__step02-text {
		background: #FDE3E3;
		text-align: left;
		margin-bottom: 2.5rem;
}

@media only screen and (max-width: 766px) {
		.price__step02-text {
				font-size: 1.1rem;
				line-height: 1.5;
				padding: 1.25rem 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__step02-text {
				font-size: 1.15rem;
				line-height: 1.8;
				padding: 1.5rem 2.5rem;
		}
}

.price__step02-text em {
		border-bottom: 1px dashed #231815;
		background: #F5F5F5;
		padding: 0.15rem 0.25rem;
}

.price__example {
		width: inherit;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

.price__example-title {
		border-top: 2px solid #231815;
		border-bottom: 2px solid #231815;
		display: block;
		width: auto;
		font-size: 1.15rem;
		font-weight: bold;
		letter-spacing: 0.25rem;
		text-align: center;
		padding: 1rem 0;
		margin-bottom: 1rem;
}

.price__example-note {
		background: #FDE3E3;
		margin-bottom: 1.5rem;
}

@media only screen and (max-width: 766px) {
		.price__example-note {
				font-size: 1.1rem;
				text-align: left;
				line-height: 1.5;
				padding: 1.25rem 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__example-note {
				font-size: 1.15rem;
				text-align: center;
				line-height: 1.8;
				padding: 1.5rem 2.5rem;
		}
}

.price__case-title {
		background: #EAEAEA;
		font-size: 1rem;
		font-weight: 400;
		text-align: left;
}

@media only screen and (max-width: 766px) {
		.price__case-title {
				padding: 0.5rem 0.75rem;
				margin: 1.5rem auto 0;
				display: flex;
				align-items: center;
		}
}

@media only screen and (min-width: 767px) {
		.price__case-title {
				padding: 0.25rem 0 0.75rem 2rem;
				margin: 2.5rem auto 0;
				position: relative;
		}
}

.price__case-title em {
		background: #FFF;
		border-radius: 3rem;
		font-size: 1.5rem;
		font-weight: 800;
		line-height: 1.25;
		text-align: center;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.price__case-title em {
				width: 2.25rem;
				height: 2rem;
				margin: 0.5rem 1rem 0.5rem 0;
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.price__case-title em {
				width: 2rem;
				height: 2rem;
				margin: 0.5rem 2rem 0 0;
				display: inline-block;
		}
}

.case-other .price__case-title em {
		font-size: 1rem;
		line-height: 2;
		width: 5rem;
}

.price__case-title span {
		border-bottom: 1px dashed #231815;
		line-height: 1.8;
		padding-bottom: 0.25rem;
}

.price__case-other01 {
		background: #DDFDFF;
		margin-top: 1rem;
}

.price__case-other02 {
		background: #DDFDFF;
		margin-top: 1rem;
		padding-bottom: 2.5rem;
}

.price__case-text {
		background: #DDFDFF;
}

@media only screen and (max-width: 766px) {
		.price__case-text {
				line-height: 1.5rem;
				padding: 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__case-text {
				padding: 1.5rem  30rem  2.5rem  2.5rem;
				line-height: 2.5rem;
				position: relative;
		}
}

@media only screen and (min-width: 767px) {
		.case-other .discount .price__case-text {
				height: 10rem;
		}
}

@media only screen and (min-width: 767px) {
		.case-other .reprint .price__case-text {
				height: 18rem;
		}
}

.price__case-text em {
		border-bottom: 1px dashed #231815;
		line-height: 1.8;
		padding-bottom: 0.25rem;
}

.price__case-note {
		background: #fff;
		font-size: 0.9rem;
		line-height: 1.5;
		display: block;
}

@media only screen and (max-width: 766px) {
		.price__case-note {
				padding: 1rem;
				margin-top: 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__case-note {
				width: 20rem;
				padding: 1.5rem;
				position: absolute;
				right: 3rem;
				top: 2rem;
		}
}

@media only screen and (min-width: 767px) {
		.case-other .discount .price__case-note {
				width: auto;
				max-width: 750px;
				left: 2rem;
				top: 6rem;
		}
}

@media only screen and (min-width: 767px) {
		.case-other .reprint .price__case-note {
				left: 2rem;
				top: 6rem;
		}
}

@media only screen and (min-width: 767px) {
		.case-other .reprint .price__case-img {
				width: 380px;
				position: absolute;
				right: 1.5rem;
				top: 7rem;
		}
}

@media only screen and (min-width: 767px) {
		.case-other .reprint .price__case-img img {
				width: 380px;
		}
}

@media only screen and (max-width: 766px) {
		.price__discount {
				padding: 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__discount {
				padding: 1.5rem 2rem 2.5rem;
		}
}

.price__discount-title {
		width: auto;
		height: auto;
		font-size: 1rem;
		font-weight: 400;
		text-align: center;
		padding: 1rem 0;
		margin: 0 auto 2rem;
		position: relative;
}

.price__discount-title em {
		border: 1px solid #231815;
		background: #fff;
		letter-spacing: 0.25rem;
		padding: 0.75rem 2rem;
		display: inline-block;
		position: relative;
		z-index: 10;
}

.price__discount-title span {
		border-bottom: 1px dashed #231815;
		margin-top: -1.25rem;
		display: block;
		position: relative;
		z-index: 0;
}

.price__discount-details strong {
		border-top: 1px solid #231815;
		border-bottom: 1px solid #231815;
		padding: 0.5rem 0;
		margin-bottom: 0.5rem;
}

@media only screen and (max-width: 766px) {
		.price__discount-details strong {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.price__discount-details strong {
				display: inline-block;
		}
}

.price__discount-details span {
		text-align: center;
		padding: 1rem 0 0;
		display: block;
}

@media only screen and (max-width: 766px) {
		.price__discount-details.flow img {
				width: 95vw;
				margin: 0 auto 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__discount-details.flow img {
				width: 100%;
				max-width: 750px;
				margin: 0 auto 2.5rem;
		}
}

@media only screen and (max-width: 766px) {
		.price__discount-details.all img {
				width: 95vw;
				margin: 0 auto 1.5rem;
		}
}

@media only screen and (min-width: 767px) {
		.price__discount-details.all img {
				width: 600px;
				margin: 0 auto;
		}
}

.conditions {
		border: 1px solid #483C38;
		background: #FFF;
		font-size: 1rem;
		font-weight: 400;
		text-align: left;
		padding: 0;
}

@media only screen and (max-width: 766px) {
		.conditions {
				width: auto;
				margin: 1.5rem 0.75rem;
		}
}

@media only screen and (min-width: 767px) {
		.conditions {
				margin: 2.5rem 2.5rem 0;
		}
}

.conditions-title {
		border-bottom: 1px solid #483C38;
		font-size: 1rem;
		padding: 0.75rem;
}

@media only screen and (max-width: 766px) {
		.conditions-title {
				line-height: 1.5;
				text-align: left;
		}
}

@media only screen and (min-width: 767px) {
		.conditions-title {
				text-align: center;
		}
}

@media only screen and (max-width: 766px) {
		.conditions-text {
				padding: 0.75rem;
				text-align: left;
		}
}

@media only screen and (min-width: 767px) {
		.conditions-text {
				padding: 1.5rem;
				text-align: center;
		}
}

.conditions-text strong {
		border-bottom: 1px solid #483C38;
		font-size: 1rem;
		display: inline-block;
		padding-bottom: 0.75rem;
		margin-bottom: 1.25rem;
}

@media only screen and (max-width: 766px) {
		.conditions-text strong {
				line-height: 1.5;
		}
}

.conditions-lists {
		font-size: 0;
		padding: 0;
		vertical-align: top;
}

.conditions-list {
		font-size: 1rem;
		text-align: left;
		line-height: 2;
}

.conditions-list span {
		display: inline-block;
		font-size: 1rem;
		padding-right: 1rem;
}

.conditions-list small {
		display: inline-block;
		width: 20rem;
		font-size: 0.85rem;
		line-height: 1.25;
}

@media only screen and (max-width: 766px) {
		.conditions-list:nth-child(3) small {
				text-indent: -1rem;
				padding-left: 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.conditions-list:nth-child(3) small {
				width: 30rem;
				vertical-align: bottom;
		}
}

/*-----table of contents--------
1.コンテンツ要素
1-1.
1-2.
------------------------------*/
/*
実際どうなの？著者の収益について
*/
.revenue__contents {
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 5rem;
}

.revenue__contents-header {
		background: #00DDBB;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
		text-align: center;
}

.revenue__contents-header__content {
		height: auto;
		text-align: left;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.revenue__contents-header__content {
				width: auto;
				padding: 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__contents-header__content {
				width: auto;
				max-width: 920px;
				padding: 2rem 3rem;
		}
}

.revenue__contents-title {
		color: #fff;
		line-height: 1.35;
		letter-spacing: 0.25rem;
}

@media only screen and (min-width: 767px) {
		.revenue__contents-title {
				position: relative;
		}
}

.revenue__contents-title span {
		font-size: 1.25rem;
		font-weight: 800;
		display: block;
		margin: 0;
		padding: 0;
}

.revenue__contents-title strong {
		font-size: 2rem;
		font-weight: 800;
		margin: 0;
		padding: 0;
		display: block;
}

.revenue__contents-title em {
		background: #fff;
		color: #483C38;
		font-size: 1rem;
		padding: 0.25rem 1rem;
		margin-top: 0.5rem;
}

@media only screen and (max-width: 766px) {
		.revenue__contents-title em {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__contents-title em {
				display: inline-block;
				position: absolute;
				top: -0.5rem;
				right: 0;
		}
}

.revenue__content {
		width: auto;
		height: auto;
		padding: 0;
		margin: 0 auto;
}

.revenue__items {
		padding: 0 1rem;
		margin: 0;
}

.revenue__item {
		height: auto;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.revenue__item {
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__item {
				width: auto;
				max-width: 840px;
		}
}

.revenue__item-subtitle {
		font-weight: 800;
		text-align: left;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.revenue__item-subtitle {
				font-size: 1.15rem;
				padding: 1.5rem 0;
				margin: 1rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__item-subtitle {
				font-size: 1.25rem;
				padding: 1.75rem 0;
				margin: 2rem auto;
		}
}

.revenue__item-subtitle em {
		border: 2px solid #231815;
		background: #fff;
		letter-spacing: 0.25rem;
		padding: 0.5rem 1rem;
		display: inline-block;
		position: relative;
		z-index: 10;
}

.revenue__item-subtitle span {
		border-bottom: 2px dashed #231815;
		margin-top: -1.25rem;
		display: block;
		position: relative;
		z-index: 0;
}

.revenue__item-content {
		vertical-align: top;
		margin-bottom: 2.5rem;
}

@media only screen and (max-width: 766px) {
		.revenue__item-content {
				display: block;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__item-content {
				display: flex;
		}
}

.revenue__item-text {
		display: block;
		background: #fff;
		font-size: 1rem;
		line-height: 1.8;
		margin-bottom: 1rem;
		letter-spacing: 0.15rem;
		text-align: left;
		padding: 0;
}

.revenue__item-text em {
		border-bottom: 1px dashed #231815;
		display: inline-block;
		font-weight: bold;
		padding: 0 0 0.1rem;
		margin: 0 0.25rem;
		display: inline-block;
}

@media only screen and (max-width: 766px) {
		.royalty .revenue__item-text {
				display: block;
				width: auto;
		}
}

@media only screen and (min-width: 767px) {
		.royalty .revenue__item-text {
				display: inline-block;
				width: 370px;
				padding-right: 20px;
		}
}

@media only screen and (max-width: 766px) {
		.royalty .revenue__item-img {
				display: block;
				width: 100vw;
				margin: 0 -1rem;
		}
}

@media only screen and (min-width: 767px) {
		.royalty .revenue__item-img {
				display: inline-block;
				width: 450px;
		}
}

@media only screen and (max-width: 766px) {
		.royalty .revenue__item-img img {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.royalty .revenue__item-img img {
				width: 450px;
		}
}

.revenue__cost {
		background: #FFFAF0;
		width: auto;
		height: auto;
		margin: auto;
		padding: 0 0 2rem;
}

@media only screen and (min-width: 767px) {
		.revenue__cost {
				padding: 0 1rem 2rem;
		}
}

.revenue__cost-title {
		height: auto;
		font-size: 1rem;
		font-weight: 400;
		line-height: 1.5;
		margin: 0 auto 2rem;
}

@media only screen and (max-width: 766px) {
		.revenue__cost-title {
				width: auto;
				text-align: left;
				padding: 1rem;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__cost-title {
				width: auto;
				max-width: 840px;
				text-align: center;
				padding: 2rem 0;
				position: relative;
		}
}

.revenue__cost-title em {
		background: #fff;
		letter-spacing: 0.25rem;
		padding: 0.75rem 2rem;
		display: inline-block;
		position: relative;
		z-index: 10;
}

.revenue__cost-title span {
		border-bottom: 1px dashed #231815;
		margin-top: -1.25rem;
		display: block;
		position: relative;
		z-index: 0;
}

.revenue__cost-text {
		height: auto;
		display: block;
		font-size: 1rem;
		line-height: 1.8;
		letter-spacing: 0.15rem;
		text-align: left;
		margin: 0 auto 2.5rem;
}

@media only screen and (max-width: 766px) {
		.revenue__cost-text {
				width: auto;
				padding: 0 1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__cost-text {
				width: auto;
				max-width: 840px;
				padding: 0;
		}
}

.revenue__cost-text small {
		font-size: 0.85rem;
		opacity: 0.7;
}

.revenue__cost-img {
		display: block;
		padding: 0;
		margin: 0 auto;
}

@media only screen and (max-width: 766px) {
		.revenue__cost-img {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__cost-img {
				width: auto;
				max-width: 840px;
		}
}

@media only screen and (max-width: 766px) {
		.revenue__cost-img img {
				width: 100%;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__cost-img img {
				width: 100%;
				max-width: 840px;
		}
}

.revenue__cost-note {
		height: auto;
		display: block;
		font-size: 0.85rem;
		line-height: 1.8;
		text-align: left;
}

@media only screen and (max-width: 766px) {
		.revenue__cost-note {
				width: auto;
				padding: 0 1rem;
				margin: 1.5rem auto;
		}
}

@media only screen and (min-width: 767px) {
		.revenue__cost-note {
				width: auto;
				max-width: 840px;
				padding: 0;
				margin: 2.5rem auto;
		}
}

/*
インディーズブックプロジェクト TOPリストページ
*/
.ibp-all__contents {
		background: #fff;
		width: auto;
		height: auto;
		align-items: center;
		margin: 4rem auto 0;
}

.ibp-all__content {
		width: auto;
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0 auto;
}

.ibp-all__lists {
		width: auto;
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0 auto;
}

.ibp-all__list {
		width: auto;
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0 auto;
}

.ibp-all__list.about a {
		background: #00DDBB;
}

.ibp-all__list.together a {
		background: #00CEDD;
}

.ibp-all__list.flow a {
		background: #FFA700;
}

.ibp-all__list.sharing a {
		background: #00DDBB;
}

.ibp-all__list.future a {
		background: #00CEDD;
}

.ibp-all__list.price a {
		background: #FFA700;
}

.ibp-all__list.revenue a {
		background: #00DDBB;
}

.ibp-all__list a {
		display: block;
}

.ibp-all__list a:hover {
		opacity: 0.7;
		background: #fff;
}

.ibp-all__list a:hover .ibp-all__list-title {
		color: #231815;
}

.ibp-all__list a:hover .ibp-all__list-title em {
		color: #483C38;
}

@media only screen and (max-width: 766px) {
		.ibp-all__list a:hover .ibp-all__list-title em {
				border: 0.2rem solid #483C38;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-all__list a:hover .ibp-all__list-title em {
				border: 0.3rem solid #483C38;
		}
}

.ibp-all__list-title {
		height: auto;
		color: #fff;
		font-weight: 800;
		letter-spacing: 0.15rem;
		text-align: left;
		margin: 0 auto;
		position: relative;
}

@media only screen and (max-width: 766px) {
		.ibp-all__list-title {
				width: 92vw;
				padding: 0.75rem 0 0.75rem 3rem;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-all__list-title {
				width: auto;
				max-width: 980px;
				padding: 2.5rem 2.5rem 2.5rem 8rem;
		}
}

.ibp-all__list-title em {
		position: absolute;
		font-style: normal;
		border-radius: 50%;
		color: #ffffff;
		text-align: center;
		display: block;
}

@media only screen and (max-width: 766px) {
		.ibp-all__list-title em {
				left: -0.25rem;
				top: 1.25rem;
				border: 0.2rem solid #fff;
				width: 2.5rem;
				height: 2.5rem;
				font-size: 1.5rem;
				font-weight: 700;
				line-height: 2.13rem;
				padding-left: 0.1rem;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-all__list-title em {
				left: 2rem;
				top: 3rem;
				border: 0.3rem solid #fff;
				width: 4rem;
				height: 4rem;
				font-size: 2rem;
				font-weight: 700;
				line-height: 3.25rem;
		}
}

.ibp-all__list-title span {
		display: block;
}

@media only screen and (max-width: 766px) {
		.ibp-all__list-title span {
				font-weight: 400;
				font-size: 1.1rem;
				line-height: 1.5;
				padding-bottom: 0.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-all__list-title span {
				font-size: 1.5rem;
				line-height: 1.5;
		}
}

.ibp-all__list-title strong {
		display: block;
}

@media only screen and (max-width: 766px) {
		.ibp-all__list-title strong {
				font-size: 1.25rem;
				line-height: 1.25;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-all__list-title strong {
				font-size: 1.75rem;
				line-height: 1.5;
		}
}

/*
インディーズブックプロジェクト ナビ
*/
.ibp-nav {
		text-align: center;
}

@media only screen and (max-width: 766px) {
		.ibp-nav {
				width: 90vw;
				height: auto;
				margin: 5rem auto 0;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-nav {
				width: auto;
				max-width: 980px;
				height: auto;
				margin: 5rem auto 0;
		}
}

@media only screen and (max-width: 766px) {
		.ibp-nav__title {
				display: none;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-nav__title {
				display: inline-block;
				margin-bottom: 4rem;
		}
}

.ibp-nav__lists {
		display: inline-block;
}

.ibp-nav__list {
		display: inline-block;
		padding: 0 0.25rem;
}

.ibp-nav__list a {
		position: relative;
		display: block;
}

.ibp-nav__list a em {
		border: 0.2rem solid #483C38;
		border-radius: 50%;
		background: #fff;
		width: 2rem;
		height: 2rem;
		color: #483C38;
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1.68rem;
		text-align: center;
		display: block;
}

.ibp-nav__list a:hover em {
		border: 0.2rem solid #483C38;
		background: #483C38;
		color: #fff;
}

.ibp-nav__list.active a::after {
		content: "今ココ";
		background: #483C38;
		border-radius: 0.25rem;
		padding: 0.5rem;
		width: 4rem;
		font-size: 1rem;
		font-weight: 700;
		color: #fff;
		position: absolute;
}

@media only screen and (max-width: 766px) {
		.ibp-nav__list.active a::after {
				top: -2.75rem;
				left: -1.25rem;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-nav__list.active a::after {
				top: -2.75rem;
				left: -1.25rem;
		}
}

.ibp-nav__list.active a::before {
		content: "";
		width: 0;
		height: 0;
		border-left: 0.35rem solid transparent;
		border-right: 0.35rem solid transparent;
		border-top: 0.5rem solid #483C38;
		position: absolute;
}

@media only screen and (max-width: 766px) {
		.ibp-nav__list.active a::before {
				top: -0.75rem;
				left: 0.65rem;
		}
}

@media only screen and (min-width: 767px) {
		.ibp-nav__list.active a::before {
				top: -0.75rem;
				left: 0.65rem;
		}
}

#about .ibp-nav__list.active a em {
		border: 0.2rem solid #00DDBB;
		background: #00DDBB;
		color: #fff;
}

#together .ibp-nav__list.active a em {
		border: 0.2rem solid #00CEDD;
		background: #00CEDD;
		color: #fff;
}

#flow .ibp-nav__list.active a em {
		border: 0.2rem solid #FFA700;
		background: #FFA700;
		color: #fff;
}

#sharing .ibp-nav__list.active a em {
		border: 0.2rem solid #00DDBB;
		background: #00DDBB;
		color: #fff;
}

#future .ibp-nav__list.active a em {
		border: 0.2rem solid #00CEDD;
		background: #00CEDD;
		color: #fff;
}

#price .ibp-nav__list.active a em {
		border: 0.2rem solid #FFA700;
		background: #FFA700;
		color: #fff;
}

#revenue .ibp-nav__list.active a em {
		border: 0.2rem solid #00DDBB;
		background: #00DDBB;
		color: #fff;
}
