@charset "utf-8";

/* 
component.css - 全サイト共通ライブラリ（資産）
プレフィックス：c-
編集者 人間：編集する（各サイトで使いまわすテンプレートに）
	   AI ：編集しない
役割：再利用可能なUI部品。ボタン、カード、CTA、ヒーロー、フォームなど。レスポンシブはこのファイル内で完結。
禁止：ページ依存スタイル
	 URL依存命名
	 p- の記述

1. 見出し（foundation.css)
2. テキスト
3. リンク
4. 横並びカラム
5. 表・チャート
6. メディア
*/


/* 2. テキスト https://v2.s-contigo.website/regulation/text */
.c-innerpage {
	color: var(--color-txt);
	border:1px solid var(--color-border);
	margin-left: 1rem;
	font-size: 80%;
	padding: 0 0.6rem 0.2rem;
	font-weight: normal;
}

/* 2-1 リード文 */
p.c-lead {
	font-size: 2.2rem;
}

/* 2-2 強調テキスト１ */
.c-st1 {
	max-width: 600px;
	margin: 0 auto;
}
.c-st1 p {
	color: var(--color-aside-titbg);
	text-align: center;
	font-size: 3.6rem;
	line-height: 10rem;
	letter-spacing: 0.4rem;
}
.c-st1 p span {
	display: block;
	font-weight: bold;
	position: relative;
}
.c-st1 p span::before {
	content: "";
	background: url(/images/img/coding/guide/left-square-brackets.svg) center/contain no-repeat;
	width: 14px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 4px;
}
.c-st1 p span::after {
	content: "";
	background: url(/images/img/coding/guide/right-square-brackets.svg) center/contain no-repeat;
	width: 14px;
	height: 100%;
	position: absolute;
	right: 0;
	top: 4px;
}

/* 2-3 強調テキスト２ */
.c-st2 {
	max-width: 600px;
	margin: 0 auto;
}
.c-st2 p {
	color: var(--color-aside-titbg);
	text-align: center;
	font-size: 3.6rem;
	line-height: 10rem;
	letter-spacing: 0.4rem;
}
.c-st2 p span {
	display: block;
	font-weight: bold;
	position: relative;
}
.c-st2 p span strong {
	background:linear-gradient(transparent 60%, #E3FCFF 60%);
	padding: 0 0.4rem;
}
.c-st2 p span::before {
	content: "/";
	position: absolute;
	left: 0;
	top: 48%;
	transform: translateY(-50%);
	font-size: 4.8rem;
	font-weight: normal;
}
.c-st2 p span::after {
	content: "/";
	position: absolute;
	right: 0;
	top: 48%;
	transform: translateY(-50%);
	font-size: 4.8rem;
	font-weight: normal;
}

/* 2-4 強調テキスト３ */
.c-st3 p {
	color: var(--color-aside-titbg);
	text-align: center;
	font-size: 3.6rem;
	line-height: 10rem;
	letter-spacing: 0.4rem;
}
.c-st3 p span {
	display: block;
	font-weight: bold;
	position: relative;
	background: url(/images/img/coding/guide/fukidashi.svg) center/contain no-repeat;
	padding: 1.6rem 1.6rem 2.4rem;
}

/* 2-5 ulリスト */
ul.c-listing {
	margin-left: 3rem;
	margin-bottom: 2.4rem;
}
ul.c-listing li {
	font-size: 1.8rem;
	line-height: 1.6;
	margin-bottom: 1rem;
}

/* 2-6 olリスト */
ol.c-listing {
	margin-left: 3rem;
	margin-bottom: 2.4rem;
}
ol.c-listing li {
	font-size: 1.8rem;
	line-height: 1.6;
	margin-bottom: 1rem;
}

/* 2-7 注意書き */
p.c-annotation {
	font-size: 1.4rem;
	line-height: 1.6;
	color: #999;
}

/* 2-10 LINE風対話 */
.c-chat {
	margin-bottom: 20px;
    position: relative;
}
.c-chat:before,
.c-chat:after{
    clear: both;
    content: "";
    display: block;
}
.c-chat.left p.img {
    float: left;
    margin-right: 20px;
    width: 60px;
    height: 60px;
}
.c-chat.right p.img {
    float: right;
    margin-left: 20px;
    width: 60px;
    height: 60px;
}
.c-chat p.img img{
    width: 100%;
    height: 100%;
    border: 1px solid var(--color-border);
    border-radius: 50%;
    margin: 0;
}
.c-chat p.img span{
    margin-top:-4px;
    font-size: 1.1rem;
    text-align: center;
    display: block;
}
.c-chat div.txt {
    position: relative;
    padding: 10px;
    border: 1px solid;
    border-radius: 10px;
    max-width: -webkit-calc(100% - 120px);
    max-width: calc(100% - 120px);
    display: inline-block;
}
.c-chat.left div.txt {
    float: left;
    border-color: #aaa;
    background: #f0f2f4;
}
.c-chat.right div.txt {
    border-color: #aaa;
    background: #c3f69d;
    float: right;
}
main .c-chat p{
    margin: 0 0 10px;
    line-height: 1.8;
}
.c-chat p:last-child {
    margin-bottom: 0;
}

.c-chat div.txt::before,
.c-chat div.txt::after {
	position: absolute;
	content: '';
	border: 10px solid transparent;
	top: 15px;
}
.c-chat.left div.txt::before {
    border-right: 10px solid #aaa;
    left: -20px;
}
.c-chat.left div.txt::after {
    border-right: 10px solid #f0f2f4;
    left: -19px;
}
.c-chat.right div.txt::before {
    border-left: 10px solid #aaa;
    right: -20px;
}
.c-chat.right div.txt::after {
    border-left: 10px solid #c3f69d;
    right: -19px;
}

/* 2-11 FAQ */
dl.c-faq dt {
    font-size: 2.2rem;
    line-height: 1.6;
    padding: 0 3px;
    display: flex;
    margin-bottom: 3px;
}
dl.c-faq dt span {
    border-radius: 10px;
    padding: 10px;
    position: relative;
    background: #f0f2f4;
    width: 80%;
}

dl.c-faq dt span::before {
    position: absolute;
    content: '';
    border-right: 15px solid #f0f2f4;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    top: 30px;
    left: -15px;
    transform: translateY(-50%);
}
dl.c-faq dt::before {
    content: "Q";
    font-size: 3.6rem;
    background: #171d63;
    color: #fff;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    margin-right: 10px;
}
dl.c-faq dd {
    margin-bottom: 5rem;
    line-height: 1.4;
    padding: 0 3px;
    display: flex;
    justify-content: flex-end;
}
dl.c-faq dd span {
    border-radius: 10px;
    padding: 10px;
    position: relative;
    background: #eee;
    width: 80%;
}
dl.c-faq dd span::before {
    position: absolute;
    content: '';
    border-left: 15px solid #eee;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    top: 30px;
    right: -15px;
    transform: translateY(-50%);
}
dl.c-faq dd::after {
    content: "A";
    font-size: 3.6rem;
    background: #999;
    color: #fff;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 10px;
}
dl.c-faq img{
	display: block;
}

/* 2-12 blockquote 引用 */
/* 2-13 準備中・中央寄せ */
.c-const{
	padding: 100px 0;
	text-align: center;
	background: var(--color-subtlebg);
	border: 10px solid var(--color-mega-border);
	font-size: 2.4rem;
}

.c-concept{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.c-concept .concept-left{
	width: 48%;
}
.c-concept .tit{
	font-size: 3.0rem;
	border-bottom: 3px solid var(--color-border);
	padding-bottom: 0.7rem;
	margin-bottom: 4rem;
	display: table;
}
.c-concept .catchcopy{
	font-size:4.8rem;
	line-height: 1.6;
	font-weight: bold;
}
.c-concept .concept-right{
	width: 48%;
}
.c-concept .concept-bg{
	font-size:10rem;
	color:rgba(0,0,0,0.05);
	font-family: impact;
	text-align: center;
}
.c-concept .concept-left {
	width: 48%;
}
.c-concept .tit {
	font-size: 3.0rem;
	border-bottom: 3px solid var(--color-border);
	padding-bottom: 0.7rem;
	margin-bottom: 4rem;
	display: table;
}
.c-concept .catchcopy {
	font-size: 4.8rem;
	line-height: 1.6;
	font-weight: bold;
}
.c-concept .concept-right {
	width: 48%;
}
.c-concept .concept-bg {
	font-size: 10rem;
	color: rgba(0,0,0,0.05);
	font-family: impact;
	text-align: center;
}

/* 2-15 Before / After */
ul.c-before-after {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1%;
    list-style: none;
    position:relative;
}
ul.c-before-after li{
    width:48%;
    margin:1%;
    line-height: 1.3;
    text-align:center;
    background: var(--color-subtlebg);
    padding:1% 0.5%;
}
ul.c-before-after li:first-child::after{
    position:absolute;
    left:50%;
    top:50%;
    transform: translate(-50%,-50%);
    content: "\f30b";
    font-family: "Font Awesome 6 Free";
    font-weight:900;
    font-size: 14rem;
    z-index:9;
}
ul.c-before-after li:first-child::before{
    content:"BEFORE";
    font-size: 3.6rem;
    font-weight: bold;
    display: block;
    margin-bottom: 1.2rem;
}
ul.c-before-after li:last-child::before{
    content:"AFTER";
    font-size: 3.6rem;
    font-weight: bold;
    display: block;
    margin-bottom: 1.2rem;
}
ul.c-before-after li img{
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 5px;
}

/* 2-16 1日のスケジュール（縦並び） */
.c-aday {
    position: relative;
}
.c-aday::before {
    position: absolute;
    top: 0;
    left: 7.6rem;
    width: 6px;
    height: 100%;
    background-color: var(--color-subtlebg);
    content: "";
}
.c-aday ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.c-aday li {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}
.c-aday li + li {
    margin: 4rem 0 2rem;
}
.c-aday li p {
	margin-bottom: 0;
	line-height: 1.4;
}

.c-aday-time {
    display: flex;
    justify-content: center;
    align-items: center;
	flex-shrink: 0;
    position: relative;
    width: 6rem;
	padding:0.8rem 0.4rem 1rem;
    border-radius: 6px;
    background-color: var(--color-accent);
    color: #fff;
    text-align: center;
	font-size: 1.8rem;
}
.c-aday-time::before {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateX(50%) translateY(-50%) rotate(45deg);
    width: 0.8rem;
    height: 0.8rem;
    z-index: -1;
    background-color: var(--color-accent);
    content: "";
}
.c-aday-time::after {
    position: absolute;
    top: 50%;
    left: 7rem;
    transform: translateY(-50%);
    width: 1.6rem;
    height: 1.6rem;
    border: 2px solid #fff;
    border-radius: 50%;
    background-color: var(--color-accent);
    content: "";
}

.c-aday-tit {
	font-weight: bold;
	padding: 0 0 1rem 4rem;
}

.c-aday-txt {
    margin: 0 0 0 4rem;
}

/* 2-17 1年のスケジュール（横並び） */
.c-year {
    position: relative;
}
.c-year::before {
    position: absolute;
    top: 9.4rem;
    left: 0;
    width: 100%;
    height: 6px;
    background-color: var(--color-subtlebg);
    content: "";
}
.c-year > ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: baseline;
}
.c-year > ul > li {
    position: relative;
    display: flex;
	flex-direction: column;
    align-items: center;
    width: 100%;
}
.c-year > ul > li + li {
    margin: 4rem 0 2rem;
}
.c-year > ul > li p {
	margin-bottom: 0;
	line-height: 1.4;
}

.c-year-time {
    display: flex;
    justify-content: center;
    align-items: center;
	flex-shrink: 0;
    position: relative;
    width: 6rem;
	padding:0.8rem 0.4rem 1rem;
    border-radius: 6px;
    background-color: var(--color-accent);
    color: #fff;
    text-align: center;
	font-size: 1.8rem;
}
.c-year-time::before {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) translateY(50%) rotate(45deg);
    width: 0.8rem;
    height: 0.8rem;
    z-index: -1;
    background-color: var(--color-accent);
    content: "";
}
.c-year-time::after {
    position: absolute;
    bottom: -3rem;
    left: 50%;
    transform: translateX(-50%);
    width: 1.4rem;
    height: 1.4rem;
    border: 2px solid #fff;
    border-radius: 50%;
    background-color: var(--color-accent);
    content: "";
}

.c-year-container {
	padding-left:0rem;
	padding-top:4rem;
}
.c-year-container ul {
	list-style: none;
	display: flex;
}
.c-year-container li {
	margin: 0.5rem 0 0.6rem;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	margin:0 0.4rem;
}
.c-year-container li span {
	-webkit-text-combine: horizontal;
	-ms-text-combine-horizontal: all;
	text-combine-upright: all;
}

/* 2-18 代表挨拶１ */
.c-deputy1 {
	display: flex;
	align-items: center;
}
.c-deputy1 > * {
	width: 50%;
	margin-top: 0;
}
.c-deputy1 .right {
	position: relative;
	padding: 9.6rem 4rem 3.2rem 0;
	margin-right: 4em;
}
.c-deputy1 .right::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 60%;
	height: 100%;
	background-color: #F1F8FD;
	z-index: -1;
}
.c-deputy1 .name {
	margin: 3.2rem 0 0;
	font-size: 2rem;
	text-align: right;
	color: var(--color-aside-titbg);
	font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
	font-weight: bold;
}
.c-deputy1 .left p {
	line-height: 4.8rem;
	margin-bottom: 0;
}
.c-deputy1 .left .philosophy-txt {
	margin: 0 0 2.4rem;
	padding: 3.2rem 0 0;
	border: none;
	position: relative;
	font-size: 3.2rem;
	line-height: 4.8rem;
	font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
	color: var(--color-aside-titbg);
	font-weight: bold;
}
.c-deputy1 .left .philosophy-txt::before {
	content: "";
	position: absolute;
	width: 120px;
	height: 1px;
	background-color: var(--color-border);
	top: 0;
	left: 0;
}

/* 2-19 代表挨拶２ */
.c-deputy2 {
	position: relative;
}
.c-deputy2::before {
	content: "Philosophy";
    position: absolute;
    top: 0;
    left: -8.8rem;
    writing-mode: vertical-rl;
	font-family: cambria, sans-serif;
    font-size: 8rem;
    color: #4E568F;
}
.c-deputy2 .deputy2-container {
	margin-top: 6.4rem;
}
.c-deputy2 p {
	line-height: 3;
	margin-bottom: 0;
	max-width: 76rem;
}
.c-deputy2 .philosophy-txt {
	margin: 0 0 3.2rem;
	padding: 4.8rem 0 0;
	position: relative;
	font-size: 4rem;
	line-height: 1.6;
	border-top: 8px solid #12215C;
	max-width: 100%;
	font-weight: bold;
	color: #12215C;
	font-family: cambria, sans-serif;
}
.c-deputy2 .philosophy-txt::before {
	content: "";
	position: absolute;
	width: 30%;
	height: 8px;
	background-color: #19B2EB;
	top: -8px;
	left: 0;
}

/* 2-20 代表挨拶３ */
.c-deputy3 .philosophy-txt {
	margin: 0 0 6.4rem;
	padding-bottom: 2rem;
	position: relative;
	font-size: 4.8rem;
	line-height: 1;
	font-family: cambria, sans-serif;
	text-align: right;
	border-bottom: 1px solid #4E568F;
	letter-spacing: 0.2rem;
}
.c-deputy3 .philosophy-txt span {
	display: block;
	font-weight: normal;
	font-size: 2rem;
	margin-top: 16px;
}
.c-deputy3-container {
	display: flex;
}
.c-deputy3 .left {
	width: 55%;
}
.c-deputy3 .c-lead {
	font-size: 4rem;
	line-height: 1;
	font-weight: bold;
	color: #4E568F;
	font-family: cambria, sans-serif;
	margin-bottom: 6.4rem;
}
.c-deputy3 .txt {
	line-height: 3;
	color: #4E568F;
}
.c-deputy3 .name {
	margin: 8rem 0 0;
	font-weight: bold;
	color: #4E568F;
	font-family: cambria, sans-serif;
}
.c-deputy3-container .right {
	width: 45%;
	margin-left: 4rem;
}

/* 2-21 代表挨拶４ */
.c-deputy4 {
	background-color: #F2F2F2;
	padding: 14.4rem 4rem 4rem;
	position: relative;
}
.c-deputy4::before {
	content: "Ichiro Suzuki";
	position: absolute;
	top: 3.2rem;
	left: 4rem;
	font-size: 8rem;
	color: #fff;
	font-family: helvetica-lt-pro, sans-serif;
	font-weight: bold;
	line-height: 1;
}
.c-deputy4 .philosophy-txt {
	font-family: cambria, sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	margin: 0;
}
.c-deputy4 .name {
	font-family: cambria, sans-serif;
	font-size: 1.8rem;
	position: relative;
	font-weight: bold;
	margin: 4.8rem 0 0;
	padding-left: 4rem;
}
.c-deputy4 .name::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 3.2rem;
	height: 1px;
	background-color: #707070;
}
.c-deputy4-container {
	display: flex;
	margin-top: 5.6rem;
}
.c-deputy4-container > * {
	width: 50%;
}
.c-deputy4-container .img {
	margin-right: 5.6rem;
}
.c-deputy4-container .txt {
	line-height: 3;
	margin-bottom: 0;
}

/* 2-22 キャッチコピー１ */
.c-catch1 {
	position: relative;
	max-width: 880px;
	margin: 0 auto;
}
.c-catch1::before {
    content: "";
    background-image: url(https://www.s-contigo.website/images/img/coding/guide/left-square-brackets.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 22px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}
.c-catch1::after {
	content: "";
	background-image: url(https://www.s-contigo.website/images/img/coding/guide/right-square-brackets.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 22px;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
}
.c-catch1 p{
	font-size: 3.2rem;
	line-height: 1.6;
	font-weight: bold;
	text-align: center;
	color: #4E568F;
	font-family: cambria, sans-serif;
}

.c-catch2 {
	max-width: 880px;
	margin: 0 auto;
	padding: 40px 0;
	position: relative;
}
.c-catch2::before {
	content: "";
	background-image: url(https://www.s-contigo.website/images/img/coding/guide/left-catch2.svg);
	background-size: contain;
	background-repeat: no-repeat;
	width: 400px;
	height: 40px;
	position: absolute;
	left: 0;
	top: 0;
}
.c-catch2::after {
	content: "";
	background-image: url(https://www.s-contigo.website/images/img/coding/guide/right-catch2.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right;
	width: 400px;
	height: 40px;
	position: absolute;
	right: 0;
	bottom: 0;
}
.c-catch2 p {
	font-size: 3.2rem;
	line-height: 1.6;
	font-weight: bold;
	text-align: center;
	color: #4E568F;
	font-family: cambria, sans-serif;
	margin-bottom: 0;
}

.c-catch3 {
	position: relative;
}
.c-catch3::after {
	content: "";
	width: 100%;
	height: 5px;
	background-color: #4E568F;
	position: absolute;
	width: 200px;
	bottom: 0;
	right: 0;
}
.c-catch3 .c-catch3-title {
	font-size: 4rem;
	line-height: 1;
	color: #4E568F;
	font-family: cambria, sans-serif;
	margin-bottom: 0;
	display: inline-block;
	position: relative;
	width: 200px;
}
.c-catch3 .c-catch3-title::before {
	content: "";
	width: 100%;
	height: 5px;
	background-color: #4E568F;
	position: absolute;
	bottom: -1.6rem;
	left: 0;
}
.c-catch3 .c-catch3-txt {
	font-size: 3.2rem;
	line-height: 1.6;
	font-weight: bold;
	text-align: center;
	color: #4E568F;
	font-family: cambria, sans-serif;
	padding: 8rem 0;
	letter-spacing: 0.2rem;
	margin-bottom: 0;
}

/* 2-25 ニュース更新日 */
ul.c-update-date{
	display: flex;
	align-items: center;
	margin-bottom: 0.6rem;
}
ul.c-update-date li {
	list-style: none;
}
ul.c-update-date li span {
	background: #FF0;
	font-size: 1.1rem;
	padding: 4px 6px;
	border: 1px solid #ccc;
	margin-right: 1.0rem;
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

/* 2-26 目次とコラム */
main.c-column {
    counter-reset: h1;
}
main.c-column h2 {
    counter-reset: h2;
}
main.c-column h2::before {
    counter-increment: h1;
    content: counter(h1) ". ";
    font-size: 70%;
    opacity: .8;
    font-weight: normal;
	display:block;
	padding-bottom:0.6rem;
}
main.c-column h3 {
    counter-reset: h3;
}
main.c-column h3::before {
    counter-increment: h2;
    content: counter(h1) "-"counter(h2) ". ";
    font-size: 70%;
    opacity: .8;
    font-weight: normal;
	display:block;
	padding-bottom:0.6rem;
}
main.c-column h4 {
    counter-reset: h4;
}
main.c-column h4::before {
    counter-increment: h3;
    content: counter(h1) "-"counter(h2) "-"counter(h3) ". ";
    font-size: 70%;
    opacity: .8;
    font-weight: normal;
	display:block;
	padding-bottom:0.6rem;
}
main.c-column h4::after {
	content:none;
}
main.c-column h5 {
    counter-reset: h5;
}
main.c-column h5::before {
    counter-increment: h4;
    content: counter(h1) "-"counter(h2) "-"counter(h3) "-"counter(h4) ". ";
    font-size: 70%;
    opacity: .8;
    font-weight: normal;
	display:block;
	padding-bottom:0.6rem;
}
main.c-column h6 {
    counter-reset: h6;
}
main.c-column h6::before {
    counter-increment: h5;
    content: counter(h1) "-"counter(h2) "-"counter(h3) "-"counter(h4) "-"counter(h5) ". ";
    font-size: 70%;
    opacity: .8;
    font-weight: normal;
	display:block;
	padding-bottom:0.6rem;
}
main.c-column h2 a,
main.c-column h3 a,
main.c-column h4 a,
main.c-column h5 a,
main.c-column h6 a {
	color:var(--color-txt);
}

div.c-page-index {
    background: var(--color-subtlebg);
    width: 96%;
    max-width: 800px;
    margin: 0px auto 50px;
    padding: 2%;
    box-sizing: border-box;
}
div.c-page-index p {
    text-align: center;
    border-bottom: 1px dotted #ccc;
}
div.c-page-index>ol {
    margin-left: 0;
}
div.c-page-index>ol ol {
    padding-left: 20px;
}
div.c-page-index ol {
    counter-reset: section;
    margin-bottom: 10px;
}
div.c-page-index ol li {
    line-height: 1.6;
    list-style: none;
}
div.c-page-index ol a {
    font-size: 1.4rem;
    color:var(--color-txt);
    text-decoration: none;
    transition: 0.5s;
}
div.c-page-index ol li span {
	border:1px solid var(--color-border);
	margin-left:1rem;
	font-size: 1.2rem;
	padding:0 0.6rem 0.2rem;
}
div.c-page-index ol a:hover {
	text-decoration: underline;
}
div.c-page-index ol>li:before {
    content: counters(section, '-') '. ';
    counter-increment: section;
    font-size: 1.4rem;
    color: #333;
}

/* 3. リンク */
/* 3-1 コンバージョン */
.c-conversion{
	margin:25px auto;
	width: 100%;
	text-align:center;
}
.c-conversion a{
	background:var(--color-conversionbg);
	color: var(--color-conversiontxt);
	padding:3.6rem;
	font-size:3.6rem;
	display:block;
	text-decoration:none;
	text-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

/* 3-2 */
.c-miniConversion{
	margin:25px auto;
	width: 80%;
	max-width: 500px;
	text-align:center;
}
.c-miniConversion a{
	background:#ddd;
	color: #333;
	padding:2.4rem;
	font-size:2.4rem;
	display:block;
	text-decoration:none;
}

/* 3-3 外部リンクアイコン */
a.c-blank::after{
	content: "\f24d";
	font-family: "Font Awesome 6 Free";
	font-weight:900;
	padding-left:6px;
}

/* 3-4 更に詳しく */
.c-more {
	text-align: center;
	margin-top: 20px;
}
.c-more a {
	display: inline-block;
	width: 100%;
	max-width: 300px;
	font-size: 1.8rem;
	padding: 2rem 0;
	border-radius: 50px;
	background-color: var(--color-main);
	color: #fff;
	text-decoration: none;
}
.c-more a:hover {
	opacity: 0.8;
}

/* 3-5 pager */
.c-pager {
    clear: both;
    border-top: 3px dotted #ddd;
    margin-top: 15px;
    padding-top: 15px;
}
.c-pager ul.order {
	list-style: none;
}
.c-pager ul.order li {
	border: 1px solid #ddd;
	text-align: center;
	width: 100px;
	padding: 10px 0;
}
.c-pager ul.order li.prev {
	float: left;
}
.c-pager ul.order li.next {
	float: right;
}
.c-pager ul.order li a {
	display: block;
	padding: 10px 0;
	margin: -10px 0;
	width: 101%;
	background: #ddd;
	color: #333;
	text-decoration: none;
}
.c-pager ul.direct {
	margin: 0 auto;
	display: flex;
	justify-content: center;
}
.c-pager ul.direct li {
	width: 40px;
	border: 1px solid #ddd;
	text-align: center;
	padding: 10px 0;
	margin: 0 8px;
	list-style: none;
}
.c-pager ul.direct li a {
	display: block;
	padding: 11px 0;
	margin: -11px 0;
	width: 101%;
	background: #ddd;
	color: #333;
}

/* 3-6 pdf */
a.c-pdf::after{
	content: "\f1c1";
	font-family: "Font Awesome 6 Free";
	font-weight:900;
	padding-left:6px;
}

/* 3-7 関連ページ */
.c-related-article-container{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 5rem 0;
}
.c-related-article-box {
    border: 1px solid #ccc;
    padding: 2rem 2rem 1rem;
    margin: 0 0 4rem;
    position: relative;
    width: 49%;
}
.c-related-article-box::after {
    position: absolute;
    content: "関連ページ";
    background: #eee;
    color: #111;
    width: 12rem;
    text-align: center;
    padding: 0.8rem 0;
    top: -1.5rem;
    left: 1rem;
}
.c-related-article-box a {
	display: flex;
	text-decoration: none;
	color: #333;
}
.c-related-article-box a:hover {
    opacity: 0.5;
}
.c-related-article-box div.img img {
    transition: opacity 0.3s;
    width: 20rem;
    height: 14rem;
    margin-right: 1rem;
    object-fit: cover;
}
.c-related-article-box a:hover div.img img {
    opacity: 0.5;
}
.c-related-article-box div.txt {
	width: calc(100% - 21rem);
	font-size: 2rem;
	margin-bottom: 1.2rem;
}

/* 3-8 ページ内横スクロールナビ */
.c-sidelink {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	list-style: none;
	padding: 0;
	margin: 40px 0;
	overflow-y: hidden;
	min-width: max-content; 
}
.c-sidelink::before {
	content: '';
	position: absolute;
	top: 8px;
	left: 0;
	right: 0;
	height: 1px;
	background-color: #4E568F;
}
.c-sidelink li {
	position: relative;
	margin: 0 16px;
	text-align: center;
	flex-shrink: 0;
}
.c-sidelink li::before {
	content: '';
	display: block;
	margin: 0 auto 6px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: white;
	border: 2px solid #8ca2c3;
}
.c-sidelink li.here::before {
	background: #2f4e85;
	border-color: #2f4e85;
}
.c-sidelink a {
	color: #2f4e85;
	text-decoration: none;
	font-weight: bold;
	font-size: 14px;
	white-space: nowrap;
}

/* 3-9 パンくずリンク */
.c-breadcrumb ol {
	display: flex;
	list-style: none;
}
.c-breadcrumb li::after { padding: 0 8px; color: #ccc; }
.c-breadcrumb li:not(:last-child)::after { content: '>'; }
.c-breadcrumb a {
	color:#999;
	text-decoration:none;
}
.c-breadcrumb a:hover {
	color:#06F;
	opacity:1;
}
.c-breadcrumb li:first-child a::before {
	content: "\f015";
	font-family: "Font Awesome 6 Free";
	font-weight:900;
	padding-right:3px;
}
.c-breadcrumb.view {
	margin:5px 10px 0 0;
}

/* 4. 横並びカラム */
ul.c-twoColumns,
ul.c-twodesign,
ul.c-threeColumns,
ul.c-fourColumns,
ul.c-fiveColumns,
ul.c-sixColumns,
ul.c-twodesign {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1%;
	list-style: none;
}
ul.c-twoColumns.center li,
ul.c-threeColumns.center li,
ul.c-fourColumns.center li,
ul.c-fiveColumns.center li,
ul.c-sixColumns.center li {
	text-align: center;
}
ul.c-twoColumns li,
ul.c-twodesign li {
	width: 48%;
	margin: 1%;
}
ul.c-threeColumns li {
	width: 31.3333%;
	margin: 1%;
}

ul.c-fourColumns li {
	width: 23%;
	margin: 1%;
}

ul.c-fiveColumns li {
	width: 18%;
	margin: 1%;
}

ul.c-sixColumns li {
	width: 14.6666%;
	margin: 1%;
}

ul.c-twoColumns li img,
ul.c-threeColumns li img,
ul.c-fourColumns li img,
ul.c-fiveColumns li img,
ul.c-sixColumns li img {
	width: 100%;
	height: auto;
	display: block;
}

ul.c-twodesign li img {
	width: calc(100% - 16px);
	margin: 0 16px  16px  0;
	box-shadow: 16px 16px 0 #F2F2F2;
}

.c-flex-container-two,
.c-flex-container-three,
.c-flex-container-four {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1%;
}
.c-flex-container-two > * {
	width: 48%;
	margin: 0 1% 3%;
}

.c-flex-container-three > * {
	width: 31.3333%;
	margin: 0 1% 3%;
}

.c-flex-container-four > * {
	width: 23%;
	margin: 0 1% 3%;
}

.c-flex-container-three p,
.c-flex-container-four p {
	font-size: 1.6rem;
	line-height: 2.8rem;
}

/* 4-10 親ページ ul li */
.c-page-parent{
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1%;
}
.c-page-parent li {
	width: 48%;
	margin: 1%;
	list-style: none;
	background: #f0f2f4;
	min-height: 20.0rem;
}
.c-page-parent li a {
	display: flex;
	align-items: center;
	padding: 0 1.0rem 0 2.4rem;
	font-size: 2.4rem;
	line-height: 1.4;
	color: #333;
	text-decoration: none;
	position: relative;
	width:100%;
	height: 100%;
}
.c-page-parent li a::before {
	content: "\f0da";
	font-family: "Font Awesome 6 Free";
	font-weight:900;
	position: absolute;
	top:51%;
	left:1.2rem;
	transform:translateY(-50%);
}

/* 5 表・チャート */
/* 5-1 data */
div.c-data::-webkit-scrollbar {
	height: 5px;
}
div.c-data::-webkit-scrollbar-track {
	background: #F1F1F1;
}
div.c-data::-webkit-scrollbar-thumb {
	background: #BCBCBC;
}
div.c-data table {
	width: 100%;
	margin-bottom:10px;
}
div.c-data table caption {
	margin-bottom: 5px;
	font-size: 80%;
	color: #666;
}
div.c-data table thead th {
	padding: 15px 5px;
	background: #f0f2f4;
	font-weight: bold;
	border-bottom:1px solid #ccc;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
}
div.c-data table tbody th {
	white-space: nowrap;
}
div.c-data table tbody td {
	padding: 12px 5px;
	text-align: center;
}
div.c-data table tbody tr {
	background: #f7f7f7;
}
div.c-data table tbody tr:nth-child(2n+1) {
	background: #fff;
}
div.c-data table tr:hover {
	background: #eee;
}

/* 5-2 chart */
.c-chart table caption {
	margin-bottom: 0.6rem;
}
.c-chart table thead th {
	background: #f0f2f4;
	border-bottom: 1px solid #ccc;
	padding: 1.4rem;
	text-align: left;
}
.c-chart table thead td {
	border-bottom: 1px solid #ccc;
}
.c-chart table tbody th {
	padding: 1.4rem;
	text-align: left;
}
.c-chart table tbody td {
	padding: 1.4rem;
}
.c-chart table tbody tr {
	background: var(--color-table-bg);
}
.c-chart table tbody tr:nth-child(2n+1) {
	background: var(--color-table-bg-2n);
}
.c-chart table tbody tr:hover {
  background: var(--color-table-hover);
}
.c-chart table tbody th a {
	color: var(--color-txtlink);
	text-decoration: underline;
}

/* 5-3 scroll */
div.c-scroll table caption {
	margin-bottom: 5px;
}
div.c-scroll thead th {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1;
    padding:15px 5px;
    background:#f0f2f4;
}
div.c-scroll thead th:first-child {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 3;
    background: #f0f2f4;
}
div.c-scroll tbody tr {
	background:#f7f7f7;
}
div.c-scroll tbody tr:nth-child(2n+1) {
	background: #fff;
}
div.c-scroll tbody tr:hover {
  background: #eee;
}
div.c-scroll tbody th {
    position: -webkit-sticky;
    position: sticky;
    left: 0;
    z-index: 2;
    border:none;
    white-space: normal;
    min-width: 80px;
    padding:12px 5px;
    text-align: left;
}
div.c-scroll tbody td {
    padding:12px 5px;
    text-align: center;
}
div.c-scroll th,
div.c-scroll td {
    position: relative;
    border: none;
    z-index: 0;
    vertical-align: middle;
    line-height: 1.2;
    white-space: nowrap;
}
div.c-scroll th::before,
div.c-scroll td::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border-right: 1px solid #dedede;
    border-bottom: 1px solid #dedede;
    z-index: -1;
}
div.c-scroll thead th::before {
    border-top: 1px solid #dedede;
    z-index: -1;
}
div.c-scroll thead tr th:first-child::before,
div.c-scroll tbody tr th:first-child::before {
    border-left: 1px solid #dedede;
    z-index: -1;
}
div.c-scroll tbody tr th {
	background:#f7f7f7;
}
div.c-scroll tbody tr:nth-child(2n+1) th {
	background: #fff;
}

/* 5-4 大きな表組 */
div.c-largeT table caption {
	margin-bottom: 5px;
}
div.c-largeT thead th {
	padding: 15px 5px;
	background: #f0f2f4;
	border: 1px solid var(--color-table-border);
}
div.c-largeT tbody tr {
	background: #f7f7f7;
}
div.c-largeT tbody tr:nth-child(2n+1) {
	background: #fff;
}
div.c-largeT tbody tr:hover th,
div.c-largeT tbody tr:hover td,
div.c-largeT tbody tr:hover:nth-child(2n+1) th {
	background: #eee;
}
div.c-largeT tbody th {
    padding:12px 5px;
    text-align: left;
    border: 1px solid var(--color-table-border);
    vertical-align: middle;
    line-height: 1.2;
    white-space: nowrap;
}
div.c-largeT tbody td {
    vertical-align: middle;
    line-height: 1.2;
    border: 1px solid var(--color-table-border);
    padding:12px 5px;
}

/* 5-5 dl dt dd */
dl.c-table {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 1.5rem;
	border-top: 1px solid var(--color-table-border);
}   
dl.c-table dt {
	width: 20rem;
	background-color: #eee;
	padding: 1.4rem;       
	line-height: 1.6;    
	border-bottom: 1px solid var(--color-table-border);
}
dl.c-table dd {
	width: calc(100% - 20rem);
	padding: 1.4rem;       
	line-height: 1.6;    
	border-bottom: 1px solid var(--color-table-border);
}
dl.c-table dd ul {
	margin-left: 20px;
}
dl.c-table dd ul li {
	margin-bottom: 5px;
}

/* 5-6 フロー ol li */
div.c-flow-ol-container ol{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	background: linear-gradient(to right, #f0f2f4, #999);
	counter-reset: flow-list;
}
div.c-flow-ol-container ol li {
	list-style: none;
	width: calc(100% / 6);
	text-align: center;
	padding: 100px 0;
	background: url(/images/icons/flow-start.svg) no-repeat right center, url(/images/icons/flow-right-end.svg) no-repeat left center;
	background-size: auto 60%;
}
div.c-flow-ol-container ol li:last-child {
	background: url(/images/icons/flow-right-end.svg) no-repeat left center;
	background-size: auto 60%;
}
div.c-flow-ol-container ol li:first-child {
	background: url(/images/icons/flow-right-start.svg) no-repeat right center;
	background-size: auto 60%;
}
div.c-flow-ol-container ol li::before {
	counter-increment: flow-list;
    content: counter(flow-list);
    display: block;
    font-size: 4.8rem;
    padding-bottom: 1rem;
}

/* 5-7 フロー h2 h3 */
.c-flow-section-container{
	counter-reset: flow-section;
	background:url(/images/bg/border.svg) no-repeat center 15rem;
	background-size: contain;
}
.c-flow-section-container section {
	display: flex;
	width: calc(50% + 8rem);
	justify-content: space-between;
}
.c-flow-section-container section:nth-child(odd) {
	flex-direction: row-reverse;
	margin-left: calc(50% - 8rem);
	justify-content: flex-end;
}
.c-flow-section-container h3 {
	border:none;
	padding: 0 0 0.4rem;
	margin: 0;
	border-bottom:1px dotted #ccc;
}
.c-flow-section-container h3::before {
	counter-increment: flow-section;
    content: counter(flow-section);
    font-size: 100%;
    font-weight: normal;
    background: #333e48;
    display: inline-block;
    text-align: center;
    width: 4rem;
    padding:0.4rem 0;
    color:#fff;
    margin-right: 0.4rem;
}
.c-flow-section-container div.img {
	width: 16rem;
	margin:0 0 0 2rem;
	flex-shrink: 0;
}
.c-flow-section-container section:nth-child(odd) div.img {
	margin:0 2rem 0 0;
}
.c-flow-section-container div.img img {
	border-radius: 50%;
	height: auto;
	width:100%;
}

/* 6. メディア */
/* 6-1 iframe埋め込み */
.c-iframe-content {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
}
.c-iframe-content iframe {
    position: absolute;
    width: 100%;
    height: 100%;
}

/* 6-2 YouTube動画 */
.c-iframe-youtube {
	position: relative;
	width: 100%;
	aspect-ratio: 16/9;
}
.c-iframe-youtube iframe {
    position: absolute;
    width: 100%;
    height: 100%;
}

/* 6-3 画像横幅100% */
.c-header-img img {
	width: 100%;
	max-width: 1280px;
	height: auto;
}

/* 6-4 画像左寄せ */
div.c-leftImg .img{
	float: left;
	margin-right: 30px;
	width: 35%;
}
div.c-leftImg img {
	width: 100%;
	height: auto;
}

/* 6-5 画像右寄せ */
div.c-rightImg .img{
	float: right;
	margin-left: 30px;
	width: 35%;
}
div.c-rightImg img {
	width: 100%;
	height: auto;
}

/* 6-6 video */
/* 6-7 スクリーンショット（影付き画像） */
.c-screenshot img {
	max-width: calc(100% - 12px);
	height: auto;
	margin: 1rem auto 2rem;
	box-shadow: 0 0 6px #333;
}

/* 6-8 画像幅 100% 中央寄せ */
.c-page-img{
	text-align: center;
}
.c-page-img img {
	width: 100%;
	height: auto;
}

/* 6-9 添付ファイル */
ul.c-attach-file{
	display: flex;
	flex-wrap: wrap;
	margin: 0 -1%;
	list-style: none;
}
ul.c-attach-file li {
	width: 48%;
	margin: 0 1%;
	list-style: none;
	margin-bottom: 2rem;
	text-align: center;
}
ul.c-attach-file li * {
	width: 100%;
	max-width: 100rem;
	height: auto;
}
ul.c-attach-file li a.pdf {
	background: #f00;
	color: #fff;
	padding: 1rem 2rem;
	border-radius: 0.5rem;
}
ul.c-attach-file li a.pdf::after {
	content: "\f1c1";
	font-family: "Font Awesome 6 Free";
	font-weight:900;
	padding-left:6px;
}


@media screen and (max-width: 1279px) {
	.c-st1 p span::before,
	.c-st1 p span::after {
		width: 12px;
	}
}/* max-width 1279px */

@media screen and (max-width: 1025px) {
	.c-concept { 
		flex-direction: column;
	}
	.c-concept .concept-left {
		width: 96%;
		margin: 0 auto;
	}
	.c-concept .tit {
		margin: 0 auto;
	}
	.c-concept .catchcopy {
		font-size: 3.6rem;
		text-align: center;
	}
	.c-concept .catchcopy br {
		display: none;
	}
	.c-concept .concept-right {
		width: 96%;
		margin: 0 auto;
	}
	.c-concept .concept-bg {
		font-size: 6rem;
	}
	.c-concept .concept-right p br {
		display: none;
	}

	ul.c-before-after li:first-child::after {
		font-size: 12rem;
	}
	ul.c-fourColumns li {
		width: 31.3333%;
		margin: 1%;
	}
	ul.c-fiveColumns li {
		width: 23%;
		margin: 1%;
	}
	ul.c-sixColumns li {
		width: 23%;
		margin: 1%;
	}
	.c-flex-container-three > * {
		width: 48%;
	}
	.c-flex-container-four > * {
		width: 31.3333%;
	}
	div.c-flow-ol-container ol {
		flex-direction: column;
		width: 100%;
		background: linear-gradient(to bottom, #f0f2f4, #999);
	}
	div.c-flow-ol-container ol li {
		width: 100%;
		padding: 30px 0;
		background: url(/images/icons/flow-bottom-start.svg) no-repeat center bottom, url(/images/icons/flow-bottom-end.svg) no-repeat center top;
		background-size: 160px auto;
	}
	div.c-flow-ol-container ol li:last-child {
		background: url(/images/icons/flow-bottom-end.svg) no-repeat center top;
		background-size: 160px auto;
		border: none;
	}
	div.c-flow-ol-container ol li:first-child {
		background: url(/images/icons/flow-bottom-start.svg) no-repeat center bottom;
		background-size: 160px auto;
	}
	div.c-flow-ol-container ol li::before {
		counter-increment: flow-list;
		content: counter(flow-list);
		display: block;
		font-size: 4.8rem;
		padding-bottom: 1rem;
	}
	.c-flow-section-container section {
		width: calc(50% + 6rem);
	}
	.c-flow-section-container section:nth-child(odd) {
		margin-left: calc(50% - 6rem);
	}
	.c-flow-section-container h3::before {
		width: 3rem;
		padding: 0.3rem 0;
		color: #fff;
		margin-right: 0.3rem;
	}
	.c-flow-section-container div.img {
		width: 12rem;
	}
	.c-page-parent li {
		min-height: 16.0rem;
	}
	.c-page-parent li a {
		font-size: 2.2rem;
	}
	.c-year::before {
		top: 0;
		left: 7.8rem;
		width: 6px;
		height: 100%;
	}
	.c-year > ul {
		display: flex;
		align-items: baseline;
		flex-direction: column;
	}
	.c-year > ul > li {
		flex-direction: row;
	}
	.c-year > ul > li + li {
		margin: 1.5rem 0;
	}
	.c-year-time::before {
		right: 0;
		left: auto;
		bottom: auto;
		top: 50%;
		transform: translateX(50%) translateY(-50%) rotate(45deg);
	}
	.c-year-time::after {
		top: 50%;
		left: auto;
		bottom: auto;
		right: -3rem;
		transform: translateY(-50%);
	}
	.c-year-container {
		padding-left: 4rem;
		padding-top: 0;
	}
	.c-year-container ul {
		flex-direction: column;
	}
	.c-year-container li {
		margin: 0.5rem 0 0.6rem;
		-ms-writing-mode: inherit;
		writing-mode: inherit;
		text-orientation: inherit;
	}
	.c-year-container li span {
		-webkit-text-combine: inherit;
		-ms-text-combine-horizontal: inherit;
		text-combine-upright: inherit;
	}
	.c-deputy1 .right {
		margin-right: 2.4rem;
	}
	.c-deputy2 .philosophy-txt {
		margin-bottom: 3.2rem;
	}
	.c-deputy3-container {
		flex-direction: column;
	}
	.c-deputy3 .left {
		width: 100%;
	}
	.c-deputy3 .c-lead {
		margin-bottom: 3.2rem;
		line-height: 1.4;
	}
	.c-deputy3 .txt {
		line-height: 2.4;
	}
	.c-deputy3 .name {
		margin-top: 2.4rem;
	}
	.c-deputy3 .right {
		width: 100%;
		margin: 4.8rem 0 0;
	}
	.c-deputy3 .right .img {
		display: flex;
		justify-content: flex-end;
	}
	.c-deputy4 {
		padding: 12rem 2.4rem 2.4rem;
	}
	.c-deputy4::before {
		font-size: 7.2rem;
		top: 2.4rem;
		left: 2.4rem;
		z-index: 0;
	}
	.c-deputy4 .philosophy-txt {
		font-size: 2.4rem;
	}
	.c-deputy4 .name {
		font-size: 1.8rem;
		margin-top: 1.6rem;
	}
	.c-deputy4-container {
		flex-direction: column;
		margin-top: 4rem;
	}
	.c-deputy4-container > * {
		width: 100%;
	}
	.c-deputy4-container .img {
		margin: 0 0 2.4rem;
		text-align: center;
	}
	.c-catch1 {
		max-width: 720px;
	}
	.c-catch1 p {
		font-size: 3.2rem;
	}
	.c-catch2 {
		max-width: 720px;
	}
	.c-catch2 p {
		font-size: 3.2rem;
	}
	.c-st1 {
		max-width: 500px;
	}
	.c-st1 p {
		font-size: 3.2rem;
		line-height: 8.8rem;
	}
	.c-st1 p span::before,
	.c-st1 p span::after {
		width: 12px;
	}
	.c-st2 {
		max-width: 500px;
	}
	.c-st2 p {
		font-size: 3.2rem;
		line-height: 8.8rem;
	}
	.c-st3 p {
		font-size: 3.2rem;
		line-height: 8.8rem;
	}
}/* max-width 1025px */

@media screen and (max-width: 600px) {
	.c-iframe-content {
		position: relative;
		width: 100%;
		aspect-ratio: 16 / 9;
	}
	.c-iframe-content iframe {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
	}
	.c-breadcrumb {
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		height: 30px;
		padding: 8px 1%;
		margin-top: 5px;
	}

	.c-breadcrumb::-webkit-scrollbar {
		height: 5px;
	}
	.c-breadcrumb::-webkit-scrollbar-track {
		background: #eee;
	}
	.c-breadcrumb::-webkit-scrollbar-thumb {
		background: #999;
	}

	.c-concept .catchcopy br {
		display: inherit;
	}
	.c-concept .concept-bg {
		font-size: 4.8rem;
	}
	ul.c-before-after li:first-child::after {
		font-size: 10rem;
	}
	ul.c-before-after li:first-child::before,
	ul.c-before-after li:last-child::before {
		font-size: 2.8rem;
		margin-bottom: 0.6rem;
	}
	.c-conversion a {
		padding: 2.8rem 0;
		font-size: 2.8rem;
	}
	.c-miniConversion {
		width: 100%;
	}
	.c-miniConversion a {
		padding: 2.0rem;
		font-size: 2.0rem;
	}
	div.c-largeT table thead {
		display: none;
	}
	div.c-largeT table tbody tr {
		background: #fff;
	}
	div.c-largeT table tbody th {
		background: #f0f2f4;
		display: block;
		border: none;
	}
	div.c-largeT table tbody td {
		display: flex;
		border-left: none;
		border-right: none;
	}
	div.c-largeT table tbody td::before {
		content: attr(data-label);
		font-weight: bold;
		flex-shrink: 0;
		margin-right: 1.6rem;
	}
	div.c-largeT table tbody td:last-child {
		padding-bottom: 4rem;
	}
	dl.c-table {
		flex-direction: column;
		border-top: 1px solid #ddd;
	}
	dl.c-table dt {
		width: 100%;
		padding: 1.4rem 0.8rem 0.2rem;
		background: none;
		font-weight: bold;
		border-bottom: none;
	}
	dl.c-table dd {
		width: 100%;
		padding: 0.2rem 0.8rem 1.4rem;
	}
	.c-flex-container-four > * {
		width: 48%;
		margin: 0 1% 3%;
	}
	.c-related-article-container {
		flex-direction: column;
	}
	.c-related-article-box {
		width: 100%;
		margin-bottom: 3rem;
	}
	.c-related-article-box div.img img {
		width: 18rem;
		height: 12rem;
	}
	.c-related-article-box div.txt {
		width: calc(100% - 19rem);
	}
	div.c-leftImg .img,
	div.c-rightImg .img {
		float: inherit;
		margin: 0 auto 1rem;
		width: 60%;
	}
	.c-page-parent li {
		min-height: 14.0rem;
	}
	.c-page-parent li a {
		font-size: 2.0rem;
	}
	.c-flow-section-container {
		background: none;
	}
	.c-flow-section-container section {
		width: 100%;
	}
	.c-flow-section-container section:not(:last-child) {
		background: url(/images/icons/flow-bottom-start-gray.svg) no-repeat center bottom;
		padding-bottom: 5rem;
		background-size: 15rem;
	}
	.c-flow-section-container section:nth-child(odd) {
		margin-left: 0;
	}
	.c-pager ul.direct {
		padding: 16px 0 0;
		clear: both;
	}
	.c-deputy1 {
		flex-direction: column;
	}
	.c-deputy1 > * {
		width: 100%;
	}
	.c-deputy1 .right {
		margin: 0 0 4rem;
		padding-top: 4.8rem;
		padding-right: 1.6rem;
	}
	.c-deputy1 .name {
		margin-top: 1.6rem;
	}
	.c-deputy2 p {
		line-height: 2.4;
	}
	.c-deputy2 .c-deputy2-container {
		margin-top: 5.6rem;
	}
	.c-deputy2 .philosophy-txt {
		font-size: 3.2rem;
		border-top: 5px solid #12215C;
		padding-top: 4rem;
		margin-bottom: 2.4rem;
	}
	.c-deputy2 .philosophy-txt::before {
		height: 5px;
		top: -5px;
	}
	.c-deputy4 {
		padding: 10rem 2.4rem 4rem;
	}
	.c-deputy4::before {
		font-size: 5.6rem;
	}
	.c-catch1 p {
		font-size: 2rem;
	}
	.c-catch1::before,
	.c-catch1::after {
		top: 0;
	}
	.c-catch2 {
		padding: 3.2rem 0;
	}
	.c-catch2 p {
		font-size: 2.4rem;
	}
	.c-catch2::before,
	.c-catch2::after {
		height: 3.2rem;
	}
	.c-catch3 .c-catch3-title {
		font-size: 3.2rem;
		width: 150px;
	}
	.c-catch3 .c-catch3-txt {
		font-size: 2.2rem;
		padding: 5.6rem 0;
	}
	.c-catch3::after {
		width: 150px;
	}
	.c-st1 {
		max-width: 400px;
	}
	.c-st1 p {
		font-size: 2.4rem;
		line-height: 6.4rem;
		letter-spacing: 0.2rem;
	}
	.c-st1 p span::before,
	.c-st1 p span::after {
		width: 8px;
		top: 2px;
	}
	.c-st2 {
		max-width: 400px;
	}
	.c-st2 p {
		font-size: 2.4rem;
		line-height: 6.4rem;
		letter-spacing: 0.2rem;
	}
	.c-st2 p span::before,
	.c-st2 p span::after {
		font-size: 4rem;
	}
	.c-st3 p {
		font-size: 2.4rem;
		line-height: 6.4rem;
		letter-spacing: 0.2rem;
	}
}/* max-width 600px */